Książka dla początkującego

Książka dla początkującego
W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

Witam. Jaką książkę, do nauki c++, moglibyście polecić osobie która dopiero zaczyna przygodę z językiem C++?

lion137
  • Rejestracja:około 8 lat
  • Ostatnio:5 minut
  • Postów:4930
0

W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

Bardzo dziękuję za odpowiedź ale bardziej chodziło mi o książki w języku polskim? Co sądzicie o tej książce (link poniżej), Czy nie jest ona aby trochę przestarzała?
https://helion.pl/ksiazki/jezyk-c-szkola-programowania-wydanie-vi-stephen-prata,cppri6.htm#format/d

lion137
Nie widzę sensu czytania informatyki po Polsku
Sunnydev
@lion137: a co z młodymi osobami, które nie zdążyły się jeszcze dobrze nauczyć angielskiego? :)
AK
Tzw "pierwsze uderzenie wiedzą" ma/moze mieć sens po polsku (gdzie np nie na potrzeby być na absolutnie aktualnej wersji itd) -> potem angielski
xDevil2
  • Rejestracja:ponad 8 lat
  • Ostatnio:ponad 3 lata
  • Lokalizacja:Poznań
  • Postów:109
0

O, sam kiedyś przerobiłem książkę Praty. Bardzo fajnie napisana i wszystko wyjaśnia, aż za mocno wałkuje pewne tematy, często pomijałem fragmenty z racji tlumaczenia jak dla 5latka. Osobiście polecam, na początek jak znalazł.

Sunnydev
hmm nie podzielam opinii. przeczytałem całą i żałuję zmarnowanego czasu na uczenie się C zamiast C++.
Sunnydev
przy czym oczywiście zdążyłem się zbrzydzić do tego języka 500 razy przechodząc przez książkę.
W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

Bardzo dziękuję za odpowiedzi i życzę Miłego Dnia!

MarekR22
Moderator C/C++
  • Rejestracja:około 17 lat
  • Ostatnio:minuta
0

Ja zaczynałem od Grębosza ("Symfonia C++"), był dla mnie zbyt rozwlekły, ale i tak mi odpowiadał.
Nie wiem, jak teraz się spisuje najnowsza edycja.
Jeszcze lubię "Scot Mayers", z tego co wiem jest parę dobrych tłumaczeń, ale nie wiem która była by dobra dla początkującego. To chyba będzie ci pasować, na podstawie linka do SO.


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

@MarekR22. Zapowiada się ciekawie i wygląda na to że ją kupie bo cena nawet taka nie straszna... Dzięki!

UC
  • Rejestracja:ponad 5 lat
  • Ostatnio:2 dni
  • Postów:27
1

Widziałem nowe "Opus Magnum" Grębosza i wygląda całkiem, całkiem. Praty nie znam, natomiast sprezentowałem znajomemu ksiązkę Gaddisa i jest bardzo zadowolony.

W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

@UncleChesster. Bardzo dziękuję Ci za odpowiedź i mam jeszcze takie pytanie: Czy ja i ty moglibyśmy zostać znajomymi? Pytam ponieważ nie mam zbyt dużo pieniędzy na zakup ksiązki a do mikołaja jeszcze daleko... To tak z przymrużeniem oka a tak bardziej poważnie to ta ksiązka Gaddisa liczy sobie ponad 1000 stron i wydaje mi się że jej zakup jest dobrą inwestycją. Miłego dnia!

koszalek-opalek
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 2 lata
0
MarekR22 napisał(a):

Jeszcze lubię "Scot Mayers", z tego co wiem jest parę dobrych tłumaczeń, ale nie wiem która była by dobra dla początkującego. To chyba będzie ci pasować, na podstawie linka do SO.

Scott Mayers jest świetny, ale dla początkującego na nic... Natomiast jego książki są obowiązkowe dla bardziej zaawansowanych już w C++...

ZK
  • Rejestracja:około 19 lat
  • Ostatnio:4 miesiące
0

również polecam Opus magnum C++ 11. Programowanie w języku C++ osobiście uważam, że jest to jedna z najlepszych książek do nauki C++ i sam się z niej uczyłem i daleko zaszedłem bo już trochę poznaję Qt, mogę jeszcze polecić następujące tytuły

  1. C++ dla bystrzaków. Wydanie VII
  2. Programowanie. Teoria i praktyka z wykorzystaniem C++. Wydanie III
  3. Język C++. Kompendium wiedzy. Wydanie IV
  4. Język C++
  5. Język C++ bardziej efektywny
  6. C++17 STL. Receptury
  7. C++. Biblioteka standardowa. Podręcznik programisty
  8. I jeszcze darmowy -> C++ na PJWSTK

Na początek polecam zacząć od Opus Magnum Grębosza, gdyż jest bardzo lekkostrawna i wszystko z niej zrozumiesz, potem czytaj według kolejności co podałem, ponieważ każdy autor wnosi coś nowego. Jak skończysz C++ i będziesz szukał biblioteki do pisania okienek, to polecam Qt, z tym, że co do Qt to po polsku nie ma kompletnie nic, a to co jest to mało przydatne rzeczy...


bla
edytowany 4x, ostatnio: zkubinski
semicolon
  • Rejestracja:ponad 5 lat
  • Ostatnio:prawie 5 lat
  • Postów:114
0

Na początku opanuj C++ bez klas, i coś rób z tym. Ja uczyłem się pisząc gry w SDL.

  1. biblioteczka komputer świat c++
  2. Wskaźniki w języku C. Przewodnik

Potem przestaw się na język, który pozwoli Ci szybciej zrozumieć idee klas, szybciej eksperymentować np. Python i spróbuj pisać okna w PySide2 - zwróć również szczególną uwagę, na to że:

  • nie zarządzasz pamięcią
  • masz wygodne kolekcje
  • funkcje mogą przyjmować dowolne parametry (jakby były szablonami)
  • kod można uogólniać z poziomu klas i funkcji wyższego rzędu
  1. Po 3 tygodniach wróć i próbuj uzyskać podobne rzeczy w C++

Wtedy polecam:

https://helion.pl/ksiazki/c-dla-programistow-gier-wydanie-ii-michael-j-dickheiser,cpprog.htm (<-- WARTO nawet jeśli nie piszesz gier!!!)
https://www.nieprzeczytane.pl/C.-Strategie-i-taktyki.-Vademecum-profesjonalisty,product472845.html
https://helion.pl/ksiazki/jezyk-c-metaprogramowanie-za-pomoca-szablonow-david-abrahams-aleksey-gurtovoy,cppmet.htm#format/d

Dopiero po czymś takim będziesz miał w miarę dobre podstawy.

edytowany 1x, ostatnio: semicolon
koszalek-opalek
  • Rejestracja:około 9 lat
  • Ostatnio:ponad 2 lata
0
semicolon napisał(a):

Na początku opanuj C++ bez klas, i coś rób z tym. Ja uczyłem się pisząc gry w SDL.

Hej, ale co Ty chcesz robić w C++ bez klas...??? Bez vectorów, cin i cout...?

Potem przestaw się na język, który pozwoli Ci szybciej zrozumieć idee klas, szybciej eksperymentować np. Python i spróbuj pisać okna w PySide2 - zwróć również szczególną uwagę, na to że:

Kocham Pythona, ale...

  • nie zarządzasz pamięcią

W C++ nie zarządzasz pamięcią. Chyba że musisz. Prawie nigdy nie musisz.

  • masz wygodne kolekcje

Porównywalne z C++.

  • funkcje mogą przyjmować dowolne parametry (jakby były szablonami)

Dla niektórych to wada -- także dla wielu początkujących.

  • kod można uogólniać z poziomu klas i funkcji wyższego rzędu

Możliwe i w C++ -- choć pewnie bardziej zawiłe.

  1. Po 3 tygodniach wróć i próbuj uzyskać podobne rzeczy w C++

Wtedy polecam:

Książki mogą być. :)

semicolon
Ale Ty masz jakieś uprzedzenia do mnie? Niby jakim prawem? Dałem najlepszą odpowiedź i uważam, że ona wnosi więcej niż Twoje pojękiwanie. Pythona to dobry punkt wyjścia by zorientować się jakie są techniki. W tym języku szybciej można to sprawdzić, a następnie wrócić do C++ by działać. Wiedząc o tym, że istnieje coś takiego jak kolekcje albo ogólny kod to łatwiej i szybciej odnajdzie się odpowiednik z C++.
koszalek-opalek
@semicolon: Hej, hej, spokojnie, to nic osobistego. :) Nie zgadzam się jednak, że ta odpowiedź jest najlepsza, a napisałem powód w pierwszym akapicie ("co Ty chcesz robić w C++ bez klas"). Możesz się do tego odnieść... Z jakiegoś powodu @wojownik266 chce (musi?) się uczyć C++. Ja też bym radził zacząć od czegoś innego (Python jest tu super), ale takie przesiadki, jak ma nauczyć się C++ do niczego nie doprowadzą...
semicolon
Chodziło mi o najlepszą ode mnie, bo chciałem pomóc, a nie najlepsza w znaczeniu, że pozjadałem wszystkie rozumy :-) Przejście na pythona (na 3 tygodnie) piszę z własnego doświadczenia. Ja żałuje, że o pewnych mechanizmach językowych dowiedziałem się z opóźnieniem. Gdybym tylko wcześniej wiedział, że są kolekcje, że pewne kody można z szablonami lepiej napisać to programowanie w c++ byłoby duuuużo prostsze. W c++ rzadko spotykałem się z prostą informacją to jest do tego, to jest do tego. Zamiast prostych odpowiedzi większość tekstów dotyczyła niuansów związanych z zapisem.
semicolon
A tu C++ trochę leży i kwiczy, bo IMO ma jedną z najbardziej złożonych gramatyk więc nim dostrzeżesz jakie możliwości kryją się za wybranymi konstrukcjami to trochę mija czasu. W lepszej sytuacji są te osoby, które wcześniej poznały niższy język np. C (stąd nauka do poziomu wskaźników), ale i też bardziej obiektowy np. Python (stąd te 3 tygodnie). I dopiero jak masz doświadczenia z C i z Pythona, wtedy pracujesz nad kompromisem w C++ (zapoznając się z książkami z 3 sekcji jaka wymieniłem w moim poście). Myślę, że taka wiedza pozwala zbududować bardziej zbalansowany skill.
koszalek-opalek
@semicolon: Dlatego napisałem, że polecam Pythona do nauki programowania. :) Tyle, że tu pytanie było o C++.
W2
  • Rejestracja:prawie 11 lat
  • Ostatnio:ponad 4 lata
  • Postów:23
0

Dzięki! Miłego Dnia!

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.