Strona 1 z 2

C/C++ --- nauka poprzez lekturę kodu --- jakie lektury

: 12 kwietnia 2008, 23:56
autor: Dominik
Nauka języków z podręcznika to troszkę za mało, podobnie samodzielne próby pisania programów. Jak w coś wdepnę nie wiem jak wybrnąć, często nie mam pomysłu (niezbędnej wiedzy i doświadczenia).
Myślałem, by wykorzystać dostępne otwarte źródełka ale mam następujący problem: Nie bardzo wiem od źródeł jakich programów zaczynać, na razie zobaczyłem, iż porywam się na zbyt trudne dla siebie projekty.

I tutaj moja prośba - może ktoś z was uczył się w ten sposób i mógłby doradzić od jakich programów zaczynać.
Pytam zarówno o C jak i C++ bo tak do końca nie wiem, na którym powinienem się bardziej skoncentrować. Zależy mi głównie na nauce pisania w miarę czystego kodu, jak najmniej zasobożernego.

: 13 kwietnia 2008, 00:35
autor: winnetou
Dziękuję...

: 13 kwietnia 2008, 01:06
autor: jedi1
jesli zaczynasz pisac dopiero, to powinienes zaczac od nauki podstawowych algorytmow

polecam ten serwis:
http://pl.spoj.pl/

dzieki temu poznasz podstawy pisania wiekszych programow i zaznajomisz sie z jezykiem.

Na poczatku skoncentruj sie raczej na C, a w miare jak juz bedziesz wiedzial o co w tym chodzi to mozesz zaczac pisac obiektowo w C++.

A i ksiazka Grebosza polecona przez winnetou bardzo dobra ;)

Pierwszy tom opisuje podstawy jezyka C++, ktore sa w wiekszosci kompatybilne z C wiec warto przeczytac od razu

No i zapomnij o czytaniu czyjegos kodu (takiego bez wyjasnienia), szczegolnie duzych projektow bo to nie jest sposob na nauke programowania

: 13 kwietnia 2008, 17:37
autor: Dominik
Dziękuje za rady i linki.

No własnie te "duże projekty" mnie położyły po podręcznikach. Nie wiem jakoś tak po Gręboszu mam wrażenie, że to jest zbyt na sucho - teoria na przykładach działa, ale jak chce zrobić programik do czegokolwiek przydatny to zaczynają się schody jak te klocki poskładać. W efekcie to samo pisze w Basicu i działa, w fortranie też ale jak przychodzi do C++ to okazuje się, że tego samego algorytmu nie umiem poprawnie zapisać w języku.

winnetou Co do czystego kodu - Chodziło mi o to, co ująłeś w algorytmach. Metoda "z wanną" jest dobra dla matematyków ja nadal muszę podpatrywać jak to zrobić, żeby zrobić porządnie.

: 13 kwietnia 2008, 20:05
autor: neptunek
Dominik pisze: ja nadal muszę podpatrywać jak to zrobić, żeby zrobić porządnie.
Wybrana metoda nauki ma:
1. zalete - pokazuje przerozne podejscie do roznych tematow ale (wielkie)
2. jest bardzo czasochlonna.

W przewazajacej wiekszosci musi ona polegac na metodzie "prob i bledow" a wiec bierzesz jakis kod cos robiacy, zakladajac ze znasz poszczegolne polecenia wglebiasz sie w kawalki kodu (algorytmy) zmieniajac poszczegolne parametry, frazy i od razu sprawdzasz co ta zmiana dala.
Gdzie to cie moze zaprowadzic? albo czeg nauczyc? przy duzym samozaparciu i talecie sporo sie dowiesz.

Nie za bardzo rozumiem pojecie "wielkie projekty" tzn jakie? liczace miliony lini kodu czy wykonujace mase czynnosci? Jest takie powiedzenie, nie od razu Krakow zbudowano, w programwoaniu jest identycznie, jak chcesz zaczac od wielkich to od razu daj sobie spokoj - jezeli cos ci sie uda napsiac to bedzie to amatorszczyzna, a czas posiwecony temu bedzie olbrzymi - musisz znac algorytmike, pewne wzorce zachowan, automaty, fukcje, procedury, pozniej obiekty dzialajace samodzielnie, i jak to juz bedziesz "czul" zaczynasz je laczyc ze soba w troche wieksza calosc.

Niestety nie nauczysz sie tej ostatniej czynnosci - najwazniejszej - z ksiazek - tutaj juz tylko i wylacznie wlasne doswiadczenie i wlasne godziny/dni/tygodnie spedzone nad kodem.

prof Grebosz do zrozumienia podstaw jest doskonaly.

: 13 kwietnia 2008, 20:42
autor: winnetou
Dziękuję...

: 13 kwietnia 2008, 23:25
autor: Theq
Temat rzeka. Ogolnie to co winnetou mowi. A ja zapytam co chcesz programowac? I czy wogole chcesz programowac (zawodowo). Bo moze jeszcze nie jest za pozno zmienic zdanie :)

: 14 kwietnia 2008, 00:15
autor: AdeBe
A ja bym jeszcze tak delikatnie zasugerował zainteresowanie się Javą. C++ jest obecnie używany do pisania wydajnych aplikacji, ale jeżeli popatrzysz na ogłoszenia o pracę to Java'wców potrzebują na potęgę.

: 14 kwietnia 2008, 02:23
autor: Dominik
Temat rzeka to fakt, z góry wyjaśnie - nie myśle o programowaniu zawodowo - a przynajmniej jeszcze dłuuugo nie . Patrzę na komputery z nieco innej strony i pojawiają się 2 kwestie.
Pierwsza jak mnie setny raz coś bierze, że (cudzy) program nie potrafi czegoś, albo robi jakąś głupotę to mam do wyboru
a) narzekać
b) zmusić developera narzekaniem do morderstwa ;-)
c) sam spróbować rozwiazać problem
wybieram c i to niejako zmusza mnie do nauki radzenia sobie z cudzym kodem, albo do napisania za trudnych dla mnie rzeczy od zera.
I druga kwestia ogląd humanisty - jest, jak dla mnie, zbyt jednostronny. Jeśli mam się wypowiadać w kwestiach etycznych dotyczących zastosowania takich a nie innych technologii, takich a nie innych licencji to warto wiedzieć na co to komu. Po prostu chcę to poznać od strony praktycznej.
Nie od razu kraków zbudowano
właśnie dlatego zadałem tu pytanie, bo nie chcę rzucać się na zbyt trudne rzeczy. Interesowało mnie od jakich programów zaczynać. Bo jakoś w fortranie nie znalazłem za dużo przykładów, a poza tym groziłaby mi przeprowadzka do muzeum.

Czy może mam nadal próbować przypisywać do C to, co jako tako zmajstrowałem w fortranie i basicu? (quickbasic nie visual)

: 14 kwietnia 2008, 02:44
autor: winnetou
Dziękuję...