[LUGOS-PROG] Kje v SLO lahko clovek najde kaksen dober tecaj za C?

Anze anze at volja.net
Wed Jun 15 10:39:46 CEST 2005


> > Je 'top', takoj za assemblerjem seveda... ;)
>
> Hja, to je ze vse lepo in prav, ampak preden "obdelas veliko kolicino
> podatkov" v Cju, bos moral skozi zelo obicajen postopek debugiranja.
> Sam C obvladam, pa se vseeno problemov lotim tam, kjer je najmanj
> moznosti, da bom kaj zamocil. V C/C++ je zamocit trivialno, najt bug
> pa obicajno ne. Seveda je fino, da jezik poznas, ampak danes to ni
> nujno (razen ce si ze odlicen programer in bi se rad zgolj naucil
> jezika, v katerem se danes pise vecina "low level" reci).

Ravno zato, ker je tako trivialno zamocit v Cju, je dobro, da C obvladas. C te 
nauci, da moras vnaprej premisliti, kako se bos lotil problema, si v glavi 
narediti strukturo, mogoce napisati nekaj vrstic pseudo kode, nato pa biti 
zelo skoncentriran, ko res pises - ker ne smes delati napak. Debugiranje je 
zapravljanje casa, zato ga moras obdrzati na minimumu, in ta pristop ti 
pomaga v vseh jezikih. 
Zelo pogosto naletim na programe, ki so jih ljudje pisali in toliko casa 
popravljali, dokler niso delali, kar bi morali. Rezultat je seveda nepregledna 
koda in skriti bugi, ki se pac se niso pojavili. Saj je jasno, da delas 
kaksne manjse napake, ampak ce si dober, bi moral program, ki ga napises na 
list papirja in pozenes skozi OCR, delati "iz prve". In to ne delati v smislu 
"sem poskusil, pa dela", ampak v smislu "dela natanko ter samo tisto, kar 
zelim od njega, in to v vseh primerih".

C je ravno zaradi svoje tezavnosti idealen ucitelj. :)

> Gre preprosto za to, da je hitrost "throwaway prototyping", skratka
> izdelave konceptov, ki nekaj demonstrirajo, zelo pomembna. Tega ti C
> in C++ ne moreta ponuditi, zato je za razvoj potrebnega bistveno vec
> dela, discipline in seveda poglobljeno znanje.

Vse res. 
Ampak clovek postane boljsi programer, ce se nekaj casa muci tudi v Cju. 
PHP extensiona recimo nek povprecen PHP programer, ki ni programiral se cesa 
drugega v C/C++, ne bo nikoli spravil skupaj (vsaj ne takega, ki ne bi imel 
memory leakov ;) ). C je preprosto prevec "nizek", da bi ga lahko osvojil 
spotoma, ce si navajen (oz. razvajen od) "visjih" jezikov. 

To je seveda vse s stalisca ucenja programiranja, ne pa samega programiranja. 
Za _ucenje_ programiranja se mi zdi C skoraj obvezna stopnicka, za samo 
programiranje pa - odvisno od problema. Ampak ne skodi, ce ga imas v 
arzenalu, vcasih pride prav. So problemi, kjer je C prava resitev.

LP!

Anze



More information about the lugos-prog mailing list