kategoria: ANSI C
[#1] Literatura do nauki programowania w C w języku polskim
Witam
Aktualnie uczę się programować w C odwołując się do następujących książek: Język Ansi C - B.W. Kernighan, Język Ansi C. Programowanie, ćwiczenia. Rozwiązania ćwiczeń z Język Ansi C - B.W. Kernighan. Sięgam też do Symfonii Grębosza, bo wydaje mi się, że tam teoria jest lepiej wytłumaczona. Na allegro znalazłem takie dwie książki, może ktoś je ma, czytał, wie czy, warto kupić? JĘZYK C SZKOŁA PROGRAMOWANIA. WYDANIE V STEPHEN PRATA, Język C. Nowoczesne programowanie. Wydanie II K.N. King. Książki tanie nie są, więc nie chciałbym kupować na chybił trafił. Opinie w Internecie są pozytywne, ale sami wiecie, że często są pisane pod wydawnictwo/produkt. A może jeszcze jakiś pomysł (książka/tutorial po polsku)?

Ostatnia aktualizacja: 29.03.2012 21:17:45 przez Ender
[#2] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #1

[#3] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #1

Hm... Nie wiem, na ile jesteś zaawansowany, ale generalnie to jest świetnie poprowadzony kurs: Stary, dobry Magazyn Amiga, panowie Iskra i Żbik

Serdeczności
Des
[#4] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #1

masz internet, masz wszystko w tym temacie :)
[#5] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #1

Weź do ręki tą posiadanią książkę "Język ANSI C" i zacznij działać - wg. mnie to jest najlepsza pozycja na temat tego języka. Poza tym... jej autorzy piszą nawet, że jedyny sposób aby nauczyć się programować, to zacząć programować.
[#6] Re: Literatura do nauki programowania w C w języku polskim

@strim, post #5

Mam i klepię przykłady, które tam są. W razie czego mam książkę z odpowiedziami. Chodzi mi o to, że czasem muszę dowiedzieć się co znaczy jakaś biblioteka, komenda i wtedy odnosze wrażenie, że ANSI C kiepsko się sprawdza. Wtedy biorę do ręki Symfonię lub Kompedium programowania gier i czytam co to za biblioteka itd. Obawiam się, że mogę takimi praktykami wpuścić się w maliny. Gdzieś w Sieci wyczytałem, że można robić tak jak ja, ale nie jestem do końca przekonany do tego co robię. Zastanawiam się, czy nie lepiej nabyć inną książkę, stąd temat.
[#7] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #6

w przypadku programowania w c/c++, b. użyteczna jest ta strona http://www.cplusplus.com/reference/clibrary/

EDIT: Nie zwróciłem uwagi, że ma to być po polsku, jednak znajduję się tu sporo przykładów, które mogą być przydatne. :)

Ostatnia aktualizacja: 30.03.2012 18:22:25 przez Mir3k
[#8] Re: Literatura do nauki programowania w C w języku polskim

@Mir3k, post #7

Myślę, że z translatorem jakoś dam radę. Ciekawa stronka.
[#9] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #8

Książka Praty jest zdecydowanie najlepsza (moje zdanie). Uczyłem się z C++, ale i C jest super. Kniga gruba, ale autor bardzo czytelnie prowadzi czytelnika przez aspekty programowania w C (C++), każdy rozdział kończą ćwiczenia. Gwarantuje, że jak się czyta książkę ze zrozumieniem (dużo tłumaczeń, nie tylko sucha teoria) i robi ćwiczenia C staje się przyjemnie czytelny. Mogę coś o tym powiedzieć, bo jak zaczynałem naukę to nic nie wiedziałem o programowaniu wysokopoziomowym. Miałem kilka książek, ale tylko Prata w moim odczuciu bez pośpiechu odsłania kolejne elementy języka, nie ma dzikich skoków do wiedzy, która nie została wcześniej wytłumaczona i omówiona. To doskonale widać w rozdziale tłumaczącym różnice pomiędzy wskaźnikami i referencjami, ta książka doskonale omawia różnice i przede wszystkim zwraca uwagę na możliwości błędnego zastosowania obu tych elementów.
Podsumowując mając do wyboru AnsiC (toporna jak głaz - nie znasz podstaw, to z niej się nie dowiesz w sposób prosty) czy książka Praty zdecydowanie polecam tą ostatnią.
[#10] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #1

Polecam szczerze

http://helion.pl/ksiazki/jezyk-c-nowoczesne-programowanie-wydanie-ii-k-n-king,jcnpr2.htm

albo oryginał ("C Programming: A Modern Approach, 2nd Edition"). Najtrudniejsze dla początkujących zagadnienia, czyli wskaźniki, wprowadzane są bardzo późno (chyba dopiero w rozdziale 8.), co nie przeszkadza prezentować działających ciekawych programów. Słowem, to jedyna znana mi książka, której autor potrafi się tak długo obejść bez wskaźników i arytmetyki wskaźników . A samo omówienie języka jest wyjątkowo kompletne (z biblioteką standardową włącznie).

Jedyna rzecz: na amidze może być problem z dostępnością kompilatora C99 czy nawet C89 (amigowy gcc to tylko C89); na amidevcpp problemu oczywiście nie ma.

Ostatnia aktualizacja: 30.03.2012 20:45:06 przez ppascal
[#11] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #10

Słowem, to jedyna znana mi książka, której autor potrafi się tak długo obejść bez wskaźników i arytmetyki wskaźników


wskazniki w C nie jest trudne, raczej operatory nastreczaja wiecej problemow poczatkujacym, a napisanie jakiegokolwiek sensownego programu w C nie moze obejsc sie bez wskaznikow. Opanowanie C bez asemblera to taka troche droga przez meke, moim zdaniem.

No coz, ja nie pomoge wyborze ksiazki do C, bo ostatnio takowa kupilem w 1994 roku, tak wlasciwie dla formalnosci slynna ANSI C, a pierwsza jeszcze w latach 80 do ZX, a C++ w 1990 do jakiegos Zortecha C++ prof. J. Bieleckiego:).

ps. swoja droga, to poczatkujacym jednak nie polecam C
[#12] Re: Literatura do nauki programowania w C w języku polskim

@gx, post #11

Wbrew pozorom wskaźniki vs. referencje i związane z nimi zagadnienia są dosyć skomplikowane. Tą tezę opieram na spojrzeniu na moją grupę ze studiów w której 90% osób miało problemy z zakumaniem tego zagadnienia. Wiele osób nie zdawało sobie z implikacji faktu stosowania wskaźników bądź referencji w argumentach funkcji itp.. a wynikało to tylko z faktu barku dogłębnego zrozumienia zagadnienia. Z braku tej wiedzy brały się problemy z interpretacją podwójnych wskaźników... I wynikały z tego później problemy związane z niestabilnością programów, wyciekiem pamięci itp... Moim zdaniem to jedne z najważniejszych i najsłabiej wyjaśnianych zagadnień w książkach z C/C++. Nie da się dobrze programować, kiedy nie zna się arytmetyki wskaźników do samego dna. Wiele osób którym wydawało się że wiedzą co to jest wskaźnik i czym różni się od referencji zdarzały się takie perfidne błędy, które strasznie trudno było złapać - a w końcu okazywały się że są winą braku pełnego zrozumienia tego zagadnienia.
Zgadzam się z ppascal, że ten temat powinien być poruszany późno - co też realizuje Prata książce którą polecałem - właśnie przez sposób wyjaśnienia tego zagadnienia i moment jego wprowadzenia szczerze polecam książkę Praty. Oczywiście każdy ma swoich faworytów, ale powiem jedno, jak książka do nauki języka ma 150-200 stron to od razu wiadomo że to lipa, a w każdym razie nie dla początkującego. Bo języka C nie da się wytłumaczyć i omówić na przykładach na tylu stronach. Dlatego Ansi C to książka dla osób które coś wiedzą, natomiast próba nauki z tej książki to nieporozumienie.

Ostatnia aktualizacja: 31.03.2012 11:55:40 przez posylus
[#13] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #10

Słowem, to jedyna znana mi książka, której autor potrafi się tak długo obejść bez wskaźników i arytmetyki wskaźników.

I dlatego właśnie ta książka jest kiepska.
[#14] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #13

Takie podejście jest bardzo dobre - nie ma nic głupszego niż wprowadzanie żółtodziobom pojęcia wskaźników na początku drogi, programować bez tego się da jak najbardziej, poznać zasady języka też. Programy nie będą optymalne ale funkcjonalne - więc co w tym złego ?!?. Dopiero jak się umie pisać programy należy zacząć stosować wskaźniki, nie wcześniej. Zatem nie rozumiem tego twierdzenia. Bo jak wytłumaczyć gościowi co to jest wskaźnik jeżeli on jeszcze jest na etapie pętli for ?
[#15] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #10

na amidze może być problem z dostępnością kompilatora C99

VBCC ma C99.
[#16] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #13

Nie jest kiepska, zapewniam.

I nie chodzi o moje obawy czy opory przed wskaźnikami (pracuję od 4 lat w C/C++ nad wysokowydajnymi elementami backendu dużego serwisu internetowego), ale o to, że pierwszy raz widziałem książkę, która potrafi pokazać język C od wybitnie prostej strony.

Nauka z tej książki nie jest trudniejsza niż nauka BASICa.

Zresztą, jeśli czytałeś i oceniasz na kiepską to OK, ale jeśli nie... żenada.
[#17] Re: Literatura do nauki programowania w C w języku polskim

@asman, post #15

Niestety nie ma...

"vbcc is a highly optimizing portable and retargetable ISO C compiler. It supports ISO C according to ISO/IEC 9899:1989 and a subset of the new standard ISO/IEC 9899:1999 (C99).".
[#18] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #16

Zresztą, jeśli czytałeś i oceniasz na kiepską to OK, ale jeśli nie... żenada.

Żenada to jest próba używania języka C bez wskaźników. Wskaźnik to jest pojęcie elementarne tego języka i trzeba je wyjaśniać w czasie nauki nawet przed pętlą 'for'. Bo inaczej adept języka wciąż będzie uznawał wskaźniki jako coś "zaawansowanego czego lepiej nie tykać" i będzie tworzył chore obejścia. Tymczasem w C wskaźników używa się niemalże automatycznie, a jak ktoś nie potrafi ogarąć, to znaczy, że C jest dla niego zbyt niskopoziomowe i powinien zmienić język.

Ostatnia aktualizacja: 31.03.2012 21:12:24 przez krashan_
[#19] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #17

Dzięki za sprostowanie, byłem przekonany że jest pełne wsparcie a tu klopsik z mojej strony.
[#20] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #18

Ja nie twierdze ze da sie uzywac C bez wskaznikow; tylko zamiast pprychac, moze najpierw zapoznasz sie z ksiazka, ktora swietnie pokazuje WSZYSTKIE elementy C (C99) i robi to tak ze osoba nie znajaca asemblera zupelnie nie ma trudnosci z przyswojeniem jezyka. Dobrze znam te ksiazke i odkrylem ja po lekturze kilkunastu innych. I smialo polecam zwlaszcza poczatkujacym.
[#21] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #13

TRUE!!!
[#22] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #18

Oczywiście, że profesjonalne wykorzystanie języka C nie jest możliwe bez wskaźników, ja twierdzę, że nie jest to proste zagadnienie. 90% ludzi którzy poszli na informę nigdy wcześniej nie programowała, więc idotyzmem jest wpajanie w pierszwej kolejności arytmetyki wskaźników, jeżeli koleś nie potrafi poprawnie budować algorytmów (czyli tych nieszczęstnych pętli, warunków itp). Dopiero jak nie będzie się zastanawiał czy ma użyć for/while itp.. można mu zacząć wprowadzać coś poważniejszego - nie od razu Kraków zbudowano. Zresztą nie jest to moja amatorska opinia - programy nauczania na uczelniach to potwierdzają więc nie ma o co kruszyć kopii.
Co do ANSI C to czytałem - nie mam w zwyczaju wyrażać opinii o czymś czego nie wiem. Kiedyś sam próbowałem uczyć się C na potrzeby programowania 8051 i pożyczyłem tą książkę od kumpla (a nie miałem doświadczenia w językach wysokiego poziomu) i powiem jedno lekko nie było. To jest omówienie języka, a nie podręcznik do nauki i to trzeba powiedzieć. Zresztą porównanie grubości tej książki do np. Praty wszystko wyjaśnia. Owszem każdy wybiera sam, ale ten wątek miał za zadanie wygłoszenie swojego zdania, a moje jest takie że Prata w MOIM mniemaniu rządzi - prowadzi za rękę od samego początku (jeżeli komuś wystarcza ANSI C to tak jest i nie twierdzę że to źle - nawet dobrze bo znaczy że kuma znacznie lepiej ode mnie ).
[#23] Re: Literatura do nauki programowania w C w języku polskim

@posylus, post #22

Zresztą nie jest to moja amatorska opinia - programy nauczania na uczelniach to potwierdzają więc nie ma o co kruszyć kopii.

Wiem z autopsji jak powstają programy nauczania na uczelniach i kto je potem wdraża w życie. Powiem tylko tyle, że wytłumaczenie studentom idei wskaźników i arytmetyki na tychże zajęło mi jedno dwugodzinne laboratorium. Niestety często jest tak, że prowadzący jest wybitnym teoretykiem programowania i sam do końca nie rozumie wskaźników.

Ostatnia aktualizacja: 01.04.2012 14:51:26 przez krashan_
[#24] Re: Literatura do nauki programowania w C w języku polskim

@posylus, post #22

Co do ANSI C to (...) jest omówienie języka, a nie podręcznik do nauki i to trzeba powiedzieć.

Zgadzam się z tą opinią, dlatego napisałem, że muszę się wspierać teorią z innych książek. Trochę to mało wygodne. Jestem amatorem i dlatego wybieram książkę Praty. Cóż może kiedyś kupię tę drugą też, ale dwie to byłaby "zakupowa rozpusta".
Dziękuję wszystkim za opinię.
[#25] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #23

"Niestety często jest tak, że prowadzący jest wybitnym teoretykiem programowania i sam do końca nie rozumie wskaźników"
Szczera prawda, która tylko potwierdza tezę, że wskaźniki to nie taka prosta sprawa
[#26] Re: Literatura do nauki programowania w C w języku polskim

@posylus, post #25

Nie wiem co jest skomplikowanego w fakcie, że wskaźnik na coś, to adres tego czegoś w pamięci... A dodanie lub odjęcie 1 do wskaźnika to dodanie lub odjęcie do tego adresu rozmiaru (w bajtach) tego czegoś.
[#27] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #26

Nie bardzo rozumiem dlaczego się tak pieklisz: zapewne wszyscy tu wiemy co to są wskaźniki i nic skomplikowanego w tym nie widzimy. Ale założyciel wątku szuka książki do nauki czegoś czego (zakładam) nie zna tak jak my, i uczestnicy wątku polecają mu to co uważają za dobre. A Ty zupełnie bez związku z tematem (którym jest książka do nauki C) atakujesz.

Naprawdę polecam przejrzenie książki o której pisałem, nie zawiedziesz się nawet jako profesjonalny programista. Być może właśnie docenisz, jak można było napisać o języku WSZYSTKO, a przy tym tak że pierwsze rozdziały można czytać nawet nie mając pojęcia o organizacji pamięci komputera.

Podaj też swój typ, aby inicjator wątku mógł coś z niego wynieść, to będzie lepsze niż głupawe wtręty.
[#28] Re: Literatura do nauki programowania w C w języku polskim

@ppascal, post #27

to będzie lepsze niż głupawe wtręty

Masz mi coś merytorycznego do powiedzenia czy tylko o "piekleniu się" i "głupawych wtrętach"?
[#29] Re: Literatura do nauki programowania w C w języku polskim

@Ender, post #24

Moim zdaniem genialne objaśnienie tematu programowania w C++ (z odniesieniem do czystego C) znajdziesz w "Symfonii C++". Tytuł niech Cię nie zwiedzie, gdyż swoją wiedzę z zakresu programowania w C czerpałem właśnie z tej pozycji. Poza tym - proste i jasne wyjaśnienie każdego poruszanego zagadnienia (ze wspomnianymi wskaźnikami i referencjami).
[#30] Re: Literatura do nauki programowania w C w języku polskim

@krashan_, post #28

W każdym poście odpowiadam Ci merytorycznie, Ty mi (ani inicjatorowi wątku) nie odpowiedziałeś merytorycznie jeszcze w żadnym.
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem