Jaki j
Jaki język programowania wybrać do nauki?
Jaki wybrać język do programowania, cały czas się uczę c++ ale kumpel mi powiedział, że to jest dosyć stary język i lepiej się uczyć czegoś nowszego np. RUBY albo coś związanego z NET. Co o tym powiecie?
Wątpię czy można określić język jako "stary". To prawda, że niektóre nie są już zgodne z najnowszymi technologiami ale mimo to wciąż świetnie sprawują się w wyznaczonych im zadaniach (a C++ jest akurat językiem ogólnego wykorzystania więc teoretycznie dobry jest w wielu wykorzystaniach).
Powiem ci z własnego doświadczenia, że sam język nie jest sprawą najważniejszą. Język to tylko narzędzie, o wiele ważniejsza jest twoja zdolność do jego wykorzystania i umiejętność programowania w ogóle (logicznego myślenia, dochodzenia do wniosków i doświadczenie programistyczne).
C/C++ jest dobrym językiem by zrozumieć jak to wszystko działa od tej stosunkowo niskopoziomowej strony. Oczywiście ma to swoje minusy, np. łatwość tworzenia kodu który wygląda dobrze, wykonuje swoje zadania a jednocześnie ma groźne luki.
Osobiście polecam ci Pythona jako język idący ramię w ramię z najnowszymi technologiami - jest przyjemny w nauce i sprawia, że programowanie jest o wiele bardziej ciekawe i wręcz przyjemne.
.NET ma nieciekawe i dziwne pod względem prawnym wsparcie w Linuksie, natomiast Ruby z tego co widziałem również jest przyjemnym językiem, ale jak dla mnie trochę za bardzo japoński .
Powiem ci z własnego doświadczenia, że sam język nie jest sprawą najważniejszą. Język to tylko narzędzie, o wiele ważniejsza jest twoja zdolność do jego wykorzystania i umiejętność programowania w ogóle (logicznego myślenia, dochodzenia do wniosków i doświadczenie programistyczne).
C/C++ jest dobrym językiem by zrozumieć jak to wszystko działa od tej stosunkowo niskopoziomowej strony. Oczywiście ma to swoje minusy, np. łatwość tworzenia kodu który wygląda dobrze, wykonuje swoje zadania a jednocześnie ma groźne luki.
Osobiście polecam ci Pythona jako język idący ramię w ramię z najnowszymi technologiami - jest przyjemny w nauce i sprawia, że programowanie jest o wiele bardziej ciekawe i wręcz przyjemne.
.NET ma nieciekawe i dziwne pod względem prawnym wsparcie w Linuksie, natomiast Ruby z tego co widziałem również jest przyjemnym językiem, ale jak dla mnie trochę za bardzo japoński .
Stary, ale to nie znaczy, że zły Ja bym raczej powiedział, że jest dojrzały i jest wiele do niego różnych bibliotek, książek, wielu ludzi go zna, czyli dobre wsparcie.
Jednak na początek chyba bym ci polecił Pythona (chociaż ja zaczynałem od C++), z tego względu, że w Pythonie jak coś napiszesz to odrazu działa, łatwo przełożyć algorym na Pythona. Z C++ na początku możesz mieć drobne problemy (z winy swojej nieuwagi) i może cię to zniechęcić do programowania.
Jednak na początek chyba bym ci polecił Pythona (chociaż ja zaczynałem od C++), z tego względu, że w Pythonie jak coś napiszesz to odrazu działa, łatwo przełożyć algorym na Pythona. Z C++ na początku możesz mieć drobne problemy (z winy swojej nieuwagi) i może cię to zniechęcić do programowania.
C++, może warto javy, teraz wszędzie tego pełno. A najlepiej poszukaj sobie na jakich programistów jest zapotrzebowanie... Choć nikt nie przewidzi co będzie za jakiś czas potrzebne/ przydatne.Trzeba podchodzić z tym jak wygląda rynek pracy - no chyba, że się tym interesujesz i będziesz uczył się tego dla siebie.
Wydaje mi się (pisze "wydaje" bo się uczę dopiero) że tak jak pisał Czocher, język to tylko narzędzie. Jeśli, ktoś skuma algorytmy, podejście, i logikę pisania programu (a to można ćwiczyć na którymkolwiek języku) to nie ma wielkiego problemu z przyswojeniu jakiegokolwiek języka. Wg. mnie jedyną barierą oddzielającą jest obiektowość, w której trzeba zmienić podejście do struktury programu. Dlatego wydaje mi się, że nie warto od razu zaczynać z pełni obiektowymi językami takimi jak Java czy Ruby, chociaż są szkoły, które świeżaków uczą od razu programowania w ten sposób.
Ale też warto zacząć od takiego języka, w którym będziesz miał lepszy start dalej.
Tak z mojego przykładu: zacząłem się w liceum uczyć Delphi i Pascala. Rok nauki poszedł na nic, bo na studiach był c++. Znając c++ szybko poszła mi nauka PHP oraz JAVA nie wydaje się już taka straszna. A ten rok nauki Pascala i Delphi mogę chyba uznać za zmarnowany, bo dopiero z c++ rozwinąłem skrzydła. Nie mówię, że te języki są złe, wręcz przeciwnie - w Delphi też można cuda tworzyć.
Według mnie najlepiej jest wybrać taki język w zależności, co w nim będziesz chcieć pisać. No bo można nauczyć się np. w c++ i w nim pisać strony www, ale po co, skoro PHP jest łatwiejszy i szybszy do takich zastosowań.
Jak chcesz pisać gry to - c/c++
Strony www: php/asp.net/java
jeśli chcesz po prostu szybko i łatwo się nauczyć programować to o Pythonie słyszałem dużo dobrych słów.
Edycja:
A c++ to znowu tak bardzo nie odbiega od C#. Technologia .NET rzeczywiście jest fajna, ale chyba wszystko co możesz zrobić w cis-ie to zrobisz i w c++. To już zależy od Ciebie.
Najlepiej popróbuj obu tych języków i zobacz, który bardziej Ci odpowiada.
Tak z mojego przykładu: zacząłem się w liceum uczyć Delphi i Pascala. Rok nauki poszedł na nic, bo na studiach był c++. Znając c++ szybko poszła mi nauka PHP oraz JAVA nie wydaje się już taka straszna. A ten rok nauki Pascala i Delphi mogę chyba uznać za zmarnowany, bo dopiero z c++ rozwinąłem skrzydła. Nie mówię, że te języki są złe, wręcz przeciwnie - w Delphi też można cuda tworzyć.
Według mnie najlepiej jest wybrać taki język w zależności, co w nim będziesz chcieć pisać. No bo można nauczyć się np. w c++ i w nim pisać strony www, ale po co, skoro PHP jest łatwiejszy i szybszy do takich zastosowań.
Jak chcesz pisać gry to - c/c++
Strony www: php/asp.net/java
jeśli chcesz po prostu szybko i łatwo się nauczyć programować to o Pythonie słyszałem dużo dobrych słów.
Edycja:
A c++ to znowu tak bardzo nie odbiega od C#. Technologia .NET rzeczywiście jest fajna, ale chyba wszystko co możesz zrobić w cis-ie to zrobisz i w c++. To już zależy od Ciebie.
Najlepiej popróbuj obu tych języków i zobacz, który bardziej Ci odpowiada.
-
- Posty: 4
- Rejestracja: 08 kwietnia 2008, 01:32
- Lokalizacja: Radom
Proponuję do nauki wybrać C++, bo większość języków takich jak Python i Java ma składnie bardzo podobną do C++. Oczywiście są one bardziej przenośne niż C++ ale na pewno program w nich napisany nie jest szybszy (co również zależy od przyjętego algorytmu) od tego w C++.
Jest naprawdę wiele nowoczesnych języków których składnia opiera się na C/C++ jednakże nie posiadają takiej wydajności bo zazwyczaj działają w trybie interpretowanym. Po opanowaniu C++ łatwo będzie Ci się zaznajomić choćby z Java, Pythonem czy C# bo są one oparte na jego składni, poza tym da Ci to możliwość pisania przenośnych programów choćby z użyciem QT, wxWidgeds czy SDL (jak będziesz potrzebował większej wydajności grafiki lub kontroli nad sprzętem).
Nie jest to oczywiście jedyny sposób na osiągnięcie jakiś wyników, choć w moim przypadku sprawdzony z autopsji
Jest naprawdę wiele nowoczesnych języków których składnia opiera się na C/C++ jednakże nie posiadają takiej wydajności bo zazwyczaj działają w trybie interpretowanym. Po opanowaniu C++ łatwo będzie Ci się zaznajomić choćby z Java, Pythonem czy C# bo są one oparte na jego składni, poza tym da Ci to możliwość pisania przenośnych programów choćby z użyciem QT, wxWidgeds czy SDL (jak będziesz potrzebował większej wydajności grafiki lub kontroli nad sprzętem).
Nie jest to oczywiście jedyny sposób na osiągnięcie jakiś wyników, choć w moim przypadku sprawdzony z autopsji