sathirem Temat założony przez niniejszego użytkownika |
Kierunek nauki. » 2010-12-30 23:23:39 Witam,
Jest to mój pierwszy post tutaj wiec pozdrawiam wszystkich użytkowników i mam nadzieje, ze nie spaprałem czegoś na samym wstępie. Umieściłem ten temat w "Pozostałe tematy" dlatego, ze nie ma on związku z techniczna strona programowania, a raczej z ogółem nauki C++.
Po wielu latach w tym systemie edukacji stwierdziłem, ze w związku z planami na przyszłość warto robić coś na własną rękę. Wydaje mi się, ze jestem umysłem ścisłym i chciałem sobie znaleźć coś co będzie moim hobby, lecz związanym z nauka (matematyką, fizyką). Pomyślałem o programowaniu, przeszukałem internet, zebrałem kilka poradników i zabrałem się do nauki. Jestem raczej na pierwszym schodku w edukacji C++ (kurs stad i część "megatutorialu") jednak nurtuje mnie jedno pytanie. Załóżmy, ze skończyłem podstawy i czas zabrać się za biblioteki języka. Którą polecilibyście wybrać? Jak powinna wyglądać kolejność nauki poszczególnych zagadnień dla początkującego? Czy mam się szkolić tylko w jednej bibliotece (np. WinApi) czy gryźć wszystkie po kolei? Czy da się ten język ogarnąć w całości czy robi się tak jakby specjalizacje (aplikacje okienkowe, gry itp). Mam po prostu problem z analizą istoty tego języka, jego różnorodności. Jakie są podobieństwa i powiązania między poszczególnymi gałęziami. Jak to wygląda z perspektywy doświadczonego programisty. Lubię klarowność, a tu mi jej troszkę brakuje, stąd ten temat.
Za każdą, nawet najmniejszą radę z góry serdecznie dziękuję.
Pozdrawiam,
Daniel
PS. Chyba trochę nazbyt się rozpisałem. Mam nadzieję, że się nie zanudzicie czytając to. |
|
jsc |
» 2010-12-30 23:49:55 Zależy co zamierzasz pisać: Programy na 1 komputer no to (w proponowanej kolejności): - komendy dotyczące kompilacji, dzięki nim można nie z optymalizować program - biblioteka graficzna (jeśli ma być program wielosystemowy to proponuję Qt) - biblioteka do programowania wątkowego (jeśli będziesz sporo operował na wielkich danych to przerzuć część pracy na kartę graficzną) - jakaś obsługująca funkcjonalność bazodanową (takie funkcjonalności to zazwyczaj csv, xml, SQL)
Jeśli internetowe to: - biblioteka do łączenie się z siecią - struktury materiałów, na których chcesz operować - API operujących na tych danych (czasami kursy obejmują ten punkt i poprzedni) |
|
DejaVu |
» 2010-12-31 00:43:26 O pisaniu aplikacji i gier sieciowych możesz na razie zapomnieć ;p musisz wybrać sobie jakiś język programowania i zacząć go sukcesywnie zgłębiać. Przyszłościowym językiem wydaje się być C# (C Sharp). Język C++ jest raczej wiekowym narzędziem, które oczywiście nie ma sobie równych w swojej klasie, ale jest po prostu trudne. W C++ rzeźbisz i rzeźbisz i rzeźbisz i końca nie widać, a w C# masz bardzo dużo gotowych narzędzi i jest dużo szybszy pod kątem wytwarzania aplikacji. Dodam, że C++ coraz mniej pracodwawców używa i oczywiście język ten nie zniknie z powierzchni ziemii i będzie nadal stosowany tam gdzie ważna jest wysoka wydajność kodu. Niemniej jednak wysoka wydajność przekłada się na trudność, trudność na mozolność, mozolność na słabe efekty, a słabe efekty prowadzą do niechęci :) Dlatego też choć polityką serwisu jest tylko C i C++ to i nie proponuję Ci tych języków jeżeli myślisz perspektywicznie. |
|
sathirem Temat założony przez niniejszego użytkownika |
» 2010-12-31 00:54:43 Dziękuje za zainteresowanie i odpowiedzi. Tak naprawdę to jeszcze nie wiem czy chciałbym pisać gry, aplikacje sieciowe, na pojedynczy komputer czy jakie. Nie znam żadnego innego języka, a z tego co się dowiadywałem C++ jest jednym z najlepszych i najbardziej uniwersalnych. Chciałbym któryś z języków zgłębić i mając już jakąś wiedzę zdecydować w czym czuje się najlepiej i dalej to rozwijać. Jeśli chodzi o C# - czy ma on jakiś związek z C++ (nazewnictwo itp)? Czy nauka C# bez żadnych podstaw jest w ogóle możliwa? Czy nieruszanie C++ nie będzie pójściem na łatwiznę? |
|
DejaVu |
» 2010-12-31 01:01:24 C++ i tak na studiach Ciebie będą uczyli. Powiem tak: jak nauczysz się C# i zaczną Ciebie uczyć C++ to programowanie w C++ będzie ostatnią rzeczą, jaką będziesz chciał robić ;p Zarówno C++ jak i C# można uczyć się od podstaw - są do tego kursy, książki itd. Jedyne co łączy te języki to wspólna literka w kodzie. Składniowo są jeszcze zbliżone w podstawowych aspektach, jednak języki różnią się od siebie diametralnie. |
|
BlackDante |
» 2010-12-31 01:49:16 Witam, to także jest mój pierwszy post, tak jak założyciela tego tematu i chciałbym wszystkich ładnie powitać :) A wracając do tematu, nie zgadzam się z opinią Pana Piotra że C++ jest językiem mozolnym, o ile jego podstawy takie jak programowanie obiektowe nie są aż tak łatwe do przyswojenia na początku to potem bogaty wybór bibliotek wszystko rekompensuje, np pracując na frameworku Qt jesteśmy w stanie tworzyć proste aplikacje okienkowe w 5 minut, czy też napisać jakiś prymitywny klikalny kalkulatorek w 15... no i jeszcze nokia oferuje możliwość podejścia do egzaminu, który dzięki materiałom zawartym na ich stronie nie jest aż tak potwornie trudny. Jeszcze tak na koniec mogę dodać że z własnego doświadczenia nie polecam zabawy w WinAPI, szczególnie na początku nauki programowania może być ona uciążliwa :) |
|
sathirem Temat założony przez niniejszego użytkownika |
» 2010-12-31 02:10:31 Dziękuję za kolejne odpowiedzi. Zastanawiałem się właśnie nad tą różnorodnością C++. Myślę, że jeśli chciałbym mniej lub bardziej używać któregoś z języków w przyszłości, zawodzie to C++ wydaje się mieć przewagę różnorodności, po którą można sięgnąć w każdej chwili dokształcając się w aktualnie potrzebnym/popularnym temacie. A jeśli chodzi o Qt - co muszę umieć z podstaw, aby zabrać się za opanowywanie tego zbioru bibliotek? Dziękuję za opinie i rady. |
|
DejaVu |
» 2010-12-31 03:09:27 Nie wiem czy kolega, który tak pozytywnie wypowiada się na temat C++ miał przyjemność programować w C# :) Ja nie pisałem w nim zbyt wiele, ale miałem okazję raz pomagać w robieniu projektu w C# i intuicyjność narzędzi w C# jest na wysokim poziomie w przeciwieństwie do C++, który w podstawowej wersji ich de'facto nie ma. Nawiązując do bibliotek takich jak QT czy inne - problem pojawia się co i rusz z licencjami. Fakt - C# wymaga frameworków, ale za te 8 lat Windowsy poniżej XP nie będą istniały na komputerach desktopowych bo PC'ty odejdą na wieczny spoczynek ze starszymi systemami. W skrócie: C# jest w moim przekonaniu lepszy do zastosowań biznesowych, a do tego chyba docelowo będzie każdy programista dążył.
/edit:
Ale ja i tak programuję w C++ bowiem do tworzenia zaawansowanych gier mimo wszystko jest jedynym słusznym rozwiązaniem ;p Choć obecnie ich nie tworzę to mimo wszystko będę chciał kiedyś zrobić jakiś duży projekt z rozmachem w C++ :) |
|
« 1 » 2 3 |