Napisze sprostowanie dlaczego powinienes poczytac o OOP
To co w php masz robione, to jest dynamiczne typowanie danych. Tutaj (w C#) masz mocne typowanie danych. Jezeli robisz cos takiego (tu na zasadzie pythona, powinno w php dzialac podobnie)
if costam == true:
zmienna1 = "zaraz nie bede istniec"
this.zmienna2 = "a ja bede istniec bo teraz naleze do danego kontekstu (zapewne klasy)"
else
zmienna1 = "hej, jestem nowa zmienna1"
this.zmienna2 = "ja tez jestem nowa jezeli zostlao to wywolane po raz pierwszy (czyli od razu do else)"
zmienna1 = "znowu jestem nowa!"
this.zmienna2 = "jestem jedna z zadeklarowanych poprzednio zmiennych"
czyli jak widzisz, poprzez this dodaje do klasy (danego kontekstu). Jezeli tego nie zrobie, to zmienna ma zasieg lokalny i zaraz za blokiem danych bedzie usunieta (zaznaczona do usuniecia). To samo na 99% jest robione w php
Dlaczego OOP? Bo wlasnie to sie dzieje na dobra sprawe. A zeby nie miec balaganu w kodzie, to warto znac lepiej OOP zeby napisac dobrze zbudowana klase.
C# jak jezykiem silnie typowanym. Czyli nie moze deklarowac zmiennych w locie (tak jak robi to php czy python), ale dzieki temu jest szybszy, bo kompilator moze zaoptymalizowac kod zanim zostanie uruchomiony (bo wie wszystko o typach oraz gdzie beda uzyte te zmienne[sa wyjatki, ale to nie o tym])
slabe typowanie daja dwie mozliwosci
- do zmiennej mozesz wpisac co chcesz (tutaj za pomoca przychodzi dynamic z c#)
- mozesz odwolac sie do zmiennej. Jezeli jej nie bedzie to Ci po prostu skrypt sie wywali w kosmos. (C# na to nie pozwala i dlatego Ci nie pozwala sie skompilowac)