C++ knygos savarankiškam mokymuisi
Internete galima rasti nemažai informacijos C++ reference ir kituose panašios puslapiuose. Juose pateikiama informacija yra paprasta ir dažniausiai aiški, tačiau ten nėra išsamių aprašymų, išsamių analizių ir kitų pradžioje būtinų išmokti dalykų, todėl tenka naudotis pirktomis knygomis.
Iš pradžių tikėjausi rasti patikimos lietuviškos literatūros, tačiau greitai mano optimistiškos mintys išgaravo. Visų pirma, yra problemų su pačiais knygynais – dauguma jų visiškai neplatina knygų apie programavimą, dažniausiai pateikiamos knygutės, kaip naudotis Microsoft gaminiais. Tai sudarė nemažai sunkumų, nes tik Baltų lankų ir Po langu knygynuose atradau bent šiek tiek naudingos informacijos.
Pasidomėjęs internete išsirinkau Antano Vidžiūno C++ ir C++ Builder pradmenys. Knyga atrodė patraukli ir ne tokia sena (2005 m. leidimas). Atsiliepimai apie ją taip pat buvo gan palankūs. Bet vėlgi po keleto skyrių supratau, kad jeigu taip toliau, tai neišsiaiškinsiu ir masyvų pagrindinių principų, jų naudojimo subtilybių. Knygoje pateikiama informacija labai siauri ir norint iš tikrųjų kažko išmokti reikalinga papildoma medžiaga. Šioje C++ ir C++ Builder pradmenys knygoje taip pat pateikiamos užduotys kartu su pavyzdžiais, tačiau viena užduotis pribloškė – reikėjo parašyti algoritmą labai keistu pavadinimu, kadangi nelabai supratau, ko ten nori iš manęs, bandžiau tą algoritmą susirasti internete ir paaiškėjo, kad tokio išvis nėra arba jo vertimas į lietuvių kalbą neatitinka realybės.
Vėliau susidariau tokį įspūdį, kad vis dėl to autoriui trūksta gebėjimų aiškinant mokomąją medžiagą. Teorija pateikiama, tačiau jos panaudojimo pavyzdžiai labai primityvūs ir nėra pateikiama papildomos medžiagos, kur dažniausiai naudojami vieni ar kiti algoritmai, programos dalys ir kaip išsiversti be jų. Asmeniškai man teorijos neužtenka, nes reikia bent tam tikrų nurodymų kada ir kas geriausia, reikia bent minimalių pamatų, o ne vien sausos teorijos.
Knyga nėra labai jau prasta, tačiau nepaneigsi to, kad trūksta autoriui supratimo, kaip reikia aiškinti programavimo kalbos principus ir pradmenis. Knygą verta pirkti tik tada, jeigu netingėsite ieškoti papildomos medžiagos internete, jeigu netingėsite ieškoti kodo pritaikymo pavyzdžių ir turėsite kantrybės spręsti labai keistus uždavinius. Knygos kaina apie 19 Lt.
Apie sekančią knygą sužinojau iš IRC. Ten labai malonus žmogus patarė pasirinkti užsienietiškos literatūros ir papildomai naudotis ja. Taigi, iš beveik 5 pasiūlytų knygų išsirinkau Accelerated C++ Practical Programing by Example. Manau, su tokia knyga galima įgauti tikrai neblogus programavimo pradmenis. Joje pateikiama daug informacijos, pateikiami kodo pavyzdžiai, kurie išaiškinami iki paskutinės kodo eilutės. Kiekvienas veikimo principas apžvelgiamas atskirai ir aptariamas jo panaudojimas. Čia, deja, šiek tiek mažiau teorijos, tačiau visas programavimas aprašomas pasitelkus tam tikrą pavyzdį ir jį analizuojant per kelis skyrius. Iš dalies man patiko toks autorių sprendimas, nes šalia turiu ir sausos teorijos vadovėlį – jie vienas kitą papildo ir taip gaunama apdorota, naudinga medžiaga tolimesniam mokymuisi.
Tačiau yra vienas trūkumas – knyga yra angliška, todėl informacija smegenėlese šiek tiek ilgiau „virškinama” ir pats mokymosi procesas šiek tiek sulėtėja. Visada lengviau mokytis iš gimtosios kalbos vadovėlių, bet šiuo atveju kito pasirinkimo nėra, tad tenka pasėdėti ir prie žodyno besiaiškinant tam tikrus programavimo terminus. Vis dėl to nauda abipusė – gilinamas anglų kalbos žinios (kompiuterinė terminologija ir pan.) ir tuo pačiu išmokstama šio to naudingo programavimo srityje.
Patariu nusipirkti šią knygą tiems žmonėms, kurie yra praktikai, o ne teorijos mylėtojai. Aš, asmeniška,i niekada nemėgstu mokytis teorijos, tad pavyzdžiai man artimesni, nors šioje srityje teorijos neišvengsi. :)
O geriausia būtų, jeigu turėtumėte abi knygas – nesupranti angliškai vienos kitos funkcijos, teorijos, imi lietuvišką A. Vidžiūno knygą ir skaitai, analizuoji.
Mano supratimu, be didelio triūso ir pastangų programuoti neišmoksi, todėl reikia naudotis kuo daugiau šaltinių.
Komentarai
Labai geras straipsnis/įrašas. Tik vienas pastebėjimas naudok lietuviškas kabutes tai yra „“ ;) Ar čia jau WP pasidarbavo?
Kaltas. :) Dėkui už pastebėjimą. :)
Accelerated C++
C++ Templates – complete guide
Design patterns
Labai teisingai pastebeta apie Vidziuno knyga. Jis mum desto C++, tai patikekit, ne tik knyga, bet ir paskaitos ne ka suprantamesnes.. :)
As kiek pastebėjau, kad paprastos(poperinės) knygos
yr labai sunkiai įsisavinamos, geresnės yra elektroninės, mat skaitant nesimėtoma, kreipemas dėmesys tik kur labiausiai reikia mokinantis.
Nesu C++ programuotojas, bet man labiausiai iš lietuviškų knygų patinka Algirdo Matulio „Mokomės programuoti C, C++, OOP”.
Labiausiai patinka, kad ten iš karto neinama prie praktinio programavimo, o supažindinama su kompiuterio darbo procesais, apskritai, kaip kompiuteris veikia. Kadangi nesu baigęs univero, kuriame tai būtų dėstoma, tai man ši knyga daug ką gana paprastai paaiškino.
perskaiciau isgirtaja „Accelerated C++” ir tikrai nusivyliau. pavyzdiai pagal kuriuos rasoma knyga yra labai neidomus ir nepraktiski (mokiniu pazymiu vidurkiu skaiciavimas :\). komentuojama viskas ko reikia ir ko nereikia, jau geriau perskaityti tutorial http://www.cpluplus.com – ir laiko sutaupysi ir ta pati suzinosi. be to si knyga tikrai netiks pradedantiesiams, ypac knygos pabaiga man pasirode paini. dabar skaitau „C++ for Programmers”. nauja, lengvai skaitoma knyga, idomus pavydziai, praktiniai patarimai, papildomai pateikiama analitine medziaga (kaip modeliuoti programas), viskas pradedama nuo objektinio programavimo ir tesiama gilinantis i kalbos subtilybes. knowfree protale nesudetinga ja atisiusti. skanaus.
Na, nesakyčiau, kad mokinių pažymių skaičiavimas nepraktiškas dalykas, nes kažkur jis vis tiek naudojamas. Sutinku, reikia kiekvienam atrasti knygą pagal savo poreikius ir ją domėtis, o šis komentaras tikrai pravers jų ieškantiems.