Nauka C++

0

Witam, chciałbym zacząć uczyć się języka C++. Ostatnio zakupiłem sobie książkę Symfonia C++ J. Grębosza i stąd też moje pytanie, czy warto dokupić do tego również np. https://www.udemy.com/course/c-od-podstaw-do-eksperta/ ten kurs online? 50zł to niby nieduże pieniądze, ale po prostu chciałbym wiedzieć czy książka + ten kurs może przynieść większe efekty niż sama książka. Kolejnym pytaniem (trochę wybiegające w przyszłość), jeśli już ogarnę C++, czego mógłbym uczyć się dalej? Python, JAVA? Nie wiem dokładnie jaką ścieżkę mógłbym obrać ;) Z góry dziękuję za wszelkie rady, podpowiedzi. Pozdrawiam

2

Dlaczego ludzie wciaz kupuja symfonie...

0

Czyli zły zakup? Lepiej przerzucić się na jakiś inny tytuł? :)

1

No najlepiej to pewnie Stroustrup
Ale jak juz kupiles

2

Sam w sobie zakup nie jest zły, da się z tej książki wiele nauczyć. Po prostu są książki bardziej aktualne, np. Opus Magnum Grębosza. Od razu uprzedzam - nie ma sensu kupować dwóch książek Grębosza, bo Opus Magnum to tak jakby nowe wydanie Symfonii uzupełnione o informacje o C++ 11. Czy trzeba sprzedać Symfonię i kupić Opus Magnum? To już kwestia wygody. Jakakolwiek książka by nie była, będzie trzeba dużo ćwiczyć, bo nie wszystko w C++ będzie oczywiste dopóki się nie poćwiczy.
Na razie polecam wstrzymać się z kursem i innymi źródłami. Na początku warto poćwiczyć pisząc kilka prostych programów i samemu zagłębić się w podstawy. Potem algorytmy itp. Co po C++? Np. Python. Wąż ma inne podejście do obiektowości, więc będzie co ćwiczyć.

0

Nie no, nie Symfonia, jak już kupiłeś to Sprzedaj:) To: https://www.amazon.com/C-Programming-Language-4th/dp/0321563840 . Zagadaj też coś z wyszukiwarką, jest sporo wyników: https://duckduckgo.com/?q=the+best+book+to+c%2B%2B&t=canonical&ia=web

0
PerlMonk napisał(a):

Sam w sobie zakup nie jest zły, da się z tej książki wiele nauczyć. Po prostu są książki bardziej aktualne, np. Opus Magnum Grębosza. Od razu uprzedzam - nie ma sensu kupować dwóch książek Grębosza, bo Opus Magnum to tak jakby nowe wydanie Symfonii uzupełnione o informacje o C++ 11. Czy trzeba sprzedać Symfonię i kupić Opus Magnum? To już kwestia wygody. Jakakolwiek książka by nie była, będzie trzeba dużo ćwiczyć, bo nie wszystko w C++ będzie oczywiste dopóki się nie poćwiczy.
Na razie polecam wstrzymać się z kursem i innymi źródłami. Na początku warto poćwiczyć pisząc kilka prostych programów i samemu zagłębić się w podstawy. Potem algorytmy itp. Co po C++? Np. Python. Wąż ma inne podejście do obiektowości, więc będzie co ćwiczyć.

Skoro już jest ta Symfonia, to postaram się ją przerobić do końca, na pewno nie będzie to czas stracony. Najwyżej potem postaram się o jakieś świeższe źródła.
Python byłby lepszym wyborem od np. Javy?

2
[Ghostek111 napisał(a)].

Python byłby lepszym wyborem od np. Javy?

Jeden rabin powie tak, drugi rabin powie nie. To moze ja polece Kotlina

Tylko uczysz sie C++ tylko po to zeby zmienic jezyk? :P

0

Kiedyś zasłyszałem opinię, że warto zaczynać od C++, wiadomo, im więcej czytam w sieci to jestem w stanie stwierdzić, iż im więcej ludzi tym dużo różnych opinii. Dlatego zastanawiam się jaką ścieżkę nauki obrać. A może zacząć od Pythona, a później zgłębiać sobie C++ czy tam Javę? Wiem, że nikt mi paluszkiem nie wskaże, ale chce wybrać dobrą drogę, żeby kiedyś nie pluć sobie w brodę :p

0

W pewnym momencie i tak bedziesz znal mniej lub lepiej z 10 jezykow. Ale ja bym zaczal od Javy/Kotlina.

Python ma dynamiczne typowanie i poczatkujacy moze sobie strzelac w stope (chociazby przez brak statycznej analizy kodu)

0

@Ghostek111: Tak jak piszą koledzy, dróg może być wiele. My możemy ci podpowiedzieć co każdy język daje, ale drogę wybierasz sam. C++ był jednym z pierwszych języków jakie się się uczyłem. Nie umiałem od tego 😉.
Czy Python lepszy od Javy? Nie. Każdy język jest inny.

1

Jak chcesz się uczyć C++, żeby potem zacząć inny język - nie warto.
Jak chcesz wybrać C++ w przyszłości jak "swój język", bo np. kręcą Cię jego zastosowania, ale dopiero zaczynasz z programowaniem - wybierz coś bardziej wysokopoziomowego, będzie potem łatwiej ogarnąć C++. Nie wiem, Python, może Java czy C#. Nawet już C prościej będzie zacząć od C.
Co zaś do samych książek traktujących o C++:
https://4programmers.net/Forum/C_i_C++/329684-jaka_ksiazka_do_nauki_c_w_2019r?p=1612336#id1612336

0
Tenonymous napisał(a):

Jak chcesz się uczyć C++, żeby potem zacząć inny język - nie warto.
Jak chcesz wybrać C++ w przyszłości jak "swój język", bo np. kręcą Cię jego zastosowania, ale dopiero zaczynasz z programowaniem - wybierz coś bardziej wysokopoziomowego, będzie potem łatwiej ogarnąć C++. Nie wiem, Python, może Java czy C#. Nawet już C prościej będzie zacząć od C.
Co zaś do samych książek traktujących o C++:
https://4programmers.net/Forum/C_i_C++/329684-jaka_ksiazka_do_nauki_c_w_2019r?p=1612336#id1612336

Może rzeczywiście lepiej będzie jak zacznę sobie od Pythona lub Javy, a później ogarnę C++.
Dzięki za spis książek do C++, na pewno w przyszłości się przyda! A mógłbym jeszcze prosić o polecenie jakichś najlepszych tytułów do Pythona lub Javy?

3

Do javy to np https://helion.pl/ksiazki/java-kompendium-programisty-wydanie-ix-herbert-schildt,javkp9.htm#format/d

I przede wszystkim klepanie kodu bo ksiazki to duzo lania wody ;]

Edit: ta ksiazka jest bardziej do nauki javy a nie programowania ale w sumie nie wiem jak zaczac z poziomu newbie (niezaleznie od jezyka). Moze predzej youtube?

1

Skąd brać pomysły na projekty? A no stąd https://www.javadevmatt.pl/na-jakim-projekcie-uczyc-sie-programowania/

title
O niektóre nawet czasem na rozmowach pytają.

0

Ja ostatnio jestem skłonny polecać C#. Z takiego samego powodu, dla którego ludzie wybierają sprzęt Apple... Oszczędzają sobie wysiłku związanego z doborem podzespołów, czy też marki/modelu urządzenia. Po prostu bierzesz najnowszy sprzęt Apple w najlepszej wersji i używasz :D

W C# po prostu bierzesz najnowszy framework od MS i klepiesz w nim system. Wszystko masz wspierane w Visual Studio i nie martwisz się zbytnio konfiguracją.

W Javie, czy Pythonie trzeba więcej pogrzebać... Wybierasz IDE, framework, konfigurujesz to sobie i działa lub nie :D A w pracy mogą od Ciebie wymagać i tak innego frameworka...

Brak różnorodności bywa zbawienny w pracy, bo nie trzeba co rusz uczyć się czegoś zupełnie nowego.

Dla C# też masz jedyny słuszny silnik do gier. Unity 3D nie ma zbytnio konkurencji używającej C# ;)

1
Spine napisał(a):

W C# po prostu bierzesz najnowszy framework od MS i klepiesz w nim system. Wszystko masz wspierane w Visual Studio i nie martwisz się zbytnio konfiguracją.

W Javie, czy Pythonie trzeba więcej pogrzebać... Wybierasz IDE, framework, konfigurujesz to sobie i działa lub nie :D A w pracy mogą od Ciebie wymagać i tak innego frameworka...

Bzdura. Python często jest dostarczany z w dystrybucji Linuksa a instalacja IDE to tylko rozpakowanie archiwum. Visual Studio? Kilka minut i odznaczanie, żeby nie zajęło 30 GB.

0

A jeśli ucząc się Javy i będąc w stopniu dajmy na to średnio-zaawansowanym, łatwiej wtedy będzie również pojąć taki język jak Javascript? Wiem, że to całkiem dwa odmienne kierunki, ale mimo to postanowiłem zapytać.

3

@Ghostek111: To jest możliwe. Znając jeden język, kolejnych łatwiej się uczyć, bo pewne struktury są podobne. Np. pętle for i while, warunki if -else czy funkcje występują w popularnych językach, np. C++, Java, Python, Javascript. Może wyglądam trochę się różnią, ale zasada działania jest podobna.
Przykład pętli for w Javie i C++:

for (int a = 0; a < 10; a++) {
    //
}

Dla Javascript różni się jednym szczegółem:

for (let a = 0; a < 10; a++) {
    //
}

Inne języki mogą mieć jeszcze dodatkowe wersji tych samych wyrażeń, ale to nie zmienia faktu, że kolejne języki idą z górki.

0

@Ghostek111
jezyk programowania to tylko narzedzie.

Nauczysz sie pisac w jednym to jest latwiej przeskoczyc na inny ale musisz wziac pod uwage ze sa rozne paradygmaty programowania i nie zawsze sie robi tak samo

Czasem masz mlotek czasem masz wiertarke, czasami masz smoka ktory zieje SIGFAULTami

1 użytkowników online, w tym zalogowanych: 0, gości: 1