Skocz do zawartości

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

Hakken

Języki programowania

Polecane posty

Wiesz jaki jest najkrótszy dowcip informatyczny?

Programista PHP

I niestety coś w tym jest. Zresztą to samo, choć nieco w mniejszym stopniu dotyczy również innych języków wysokiego poziomu jak Java i C#. Programista powinien rozumieć co się dzieje w jego programie, wtedy język (czy szerzej - stosowane technologie w ogóle) jest tak naprawdę rzeczą drugorzędną, bo w razie czego przesiadka zajmuje chwilę. Tak naprawdę, to Polska jest ciekawie podzielona i w różnych większych miastach stosuje się różne technologie.

Jeśli chcesz się po prostu nauczyć czegoś przydatnego, to raczej zacząłbym od C++ lub C# (z bólem to piszę, ale jednak C# ma niezłą dokumentację, w której wiele rzeczy jest wyjaśnionych), a z języków skryptowych Pythona (genialna dokumentacja, a i język ma naprawdę spore możliwości). Najpierw warto nauczyć się myśleć jak programista, a potem język to już naprawdę jest mało istotna rzecz.

Jeśli chodzi o wady PHP, to nie ma może jakichś wielkich wad (no może poza tym, że jest w wiecznej fazie beta). Problem z nim jest taki, że nie trzeba być programistą, żeby coś w nim stworzyć.

Link do komentarza
Udostępnij na innych stronach

Nie tyle o logiczne myślenie (chociaż poniekąd też), ale o to jak działa pisanie programów. Im niższego poziomu jest twój pierwszy język, tym lepiej (oczywiście bez schodzenia do poziomu assemblera tongue_prosty.gif). Sam zaczynałem od Pascala kilka latek temu, później przeszedłem na C++ i teraz dużo łatwiej rozumiem działanie każdego innego języka. Jak działają pętle, wyrażenia warunkowe itd. Bo to wszystko jest raczej podobne pod względem konstrukcji, różni się składnia. Szczerze, to nawet łatwiej mi się teraz programuje PLC w drabinkach biggrin_prosty.gif

Jak się nauczyć? Pisz programy w językach w których panujesz nad kodem, chociażby wspomniany przez kolegów C++. C# jest bardzo fajny i bardzo go lubię, ale pisanie w nim to jak układanie domku z kart, albo wieży z klocków: masz masę dostępnych funkcji i metod i po prostu używasz to co potrzebujesz. Jak nie masz tego co potrzebujesz, to szukasz dll'ki w googlach i już masz. Na dobrą sprawę to nie wiesz nawet co się dzieje wewnątrz poszczególnych metod (dobra, możesz sprawdzić kolejne przeładowania, ale kto to robi jeśli akurat nie szuka błędu biggrin_prosty.gif). Dlatego na pierwszy język polecałbym C++, bo jest ciągle na czasie (nie jest przestarzały jak Pascal albo opuszczony jak Delphi) i nauczysz się pisać i myśleć jak programista. Poza tym można w nim pisać zarówno obiektowo jak i strukturalnie, co też jest niezłą szkołą (a nie jak w javie, że jesteś skazany na obiektowość od momentu założenia projektu smile_prosty.gif)

A co z matematyki? Dużo analizy dla trenowania umysłu i algebry (zwłaszcza macierze), bo tak :P

Link do komentarza
Udostępnij na innych stronach

Czyli ? Aha i jak się tego nauczyć , chodzi tutaj o logiczne myślenie ?

Również, ale nie tylko. Istotnie trzeba umieć w pewien specyficzny sposób łączyć fakty i nauczyć się szukać informacji, ale nie tylko to. Tak jak napisał wyżej b3rt - warto jest wiedzieć jak w ogóle działa program oraz język w którym piszesz. Wielu ludzi bezmyślnie z czegoś korzysta i potem są ciekawe kwiatki.

Tu warto poczytać sobie o alokacji pamięci, bo to, że w języku jest garbage collector lub shared pointery nie oznacza jeszcze, że jest to coś, czym nie musimy się przejmować. Znajdź sobie informacje o słabych referencjach (weak references) i sprawdź dlaczego się je stosuje. Warto też wiedzieć, że wywoływanie garbage collectora zżera zasoby, dlatego często lepiej jest unikać dynamicznej alokacji pamięci.

Tak samo warto zdawać sobie sprawę z tego, że warto jest dobierać rozwiązania do konkretnego problemu. Czasem lepszy będzie jeden algorytm rozwiązujący jakiś problem, a innym razem inny. Dalej - to, że język oferuje jakieś fajne funkcje nie oznacza jeszcze, że te rozwiązania będą optymalne w każdym przypadku (poczytaj sobie np. jak działa vector w C++).

Link do komentarza
Udostępnij na innych stronach

Jakbyś szukał czegoś bardziej papierowego, to książka Praty "Język C++, szkoła programowania" też ma zadanka po każdym rozdziale. W sumie wychodzi chyba zdrowo ponad setka,a sporo rzeczy jest tam fajnie wytłumaczonych. Pętle i inne podstawy programowania omówione tak łopatologicznie, że już jaśniej chyba się nie da. Po przeczytaniu większości tej pozycji nie miałem żadnych problemów z przesiadką na Javę. Język nie był już żadnym problemem - została algorytmika. Swoją drogą muszę na wakacje wreszcie wziąć się za jakiegoś Linuxa, weby albo bazy danych, bo bez tego to kalectwo :)

Link do komentarza
Udostępnij na innych stronach

Rip, jak chcesz się pobawić linuksem, to z książek polecam Linux Cookbook. Z bardziej specyficznych dobre jest też The Linux Programming Interface.

Nawet jak nie wciągniesz się w ten system, to przyda się do postawienia LAMPa - pisałeś, że chcesz też się zająć bazami danych/webem, więc się przyda.

Link do komentarza
Udostępnij na innych stronach



  • Kto przegląda   0 użytkowników

    • Brak zalogowanych użytkowników przeglądających tę stronę.
×
×
  • Utwórz nowe...