ukazkove zdrojaky

Vlada Macek tuttle na sandbox.cz
Sobota Březen 4 18:48:21 CET 2006


Dalibor Straka wrote:

>Ahoj,
>
>On Fri, Mar 03, 2006 at 11:05:05PM +0100, Martin `MJ' Mares wrote:
>  
>
>>To by jiste fungovalo, ale zkus se zamyslet, co je Tve vlastni predstave
>>o tom, jak ma ta funkce pracovat, blizsi. Te me je blizsi urcite "udelej
>>tohle a pokud se to nepovede, tak vyskoc a uklid" nez "nejdriv zkontroluj,
>>jestli se zatim vsechno podarilo, pokud ano, tak udelej tohle a poznamenej
>>si, jestli se to podarilo". A podle toho by take mel kod vypadat -- myslim-li
>>na goto, necht pisi goto, cokoliv jineho je pokrytectvi :-)
>>
>>Samozrejme je pravda, ze skoku se da vzdy zbavit, ale stejne tak plati,
>>ze kazdy program se da upravit tak, aby obsahoval jenom jeden cyklus :-)
>>
>>    
>>
>Ale jo, ja jsem jen rypnul do vosiho hnizda :-). Nekdo psal, ze bych se
>utopil ve vnorenych ifech, ale zas tak hrozne to neni :-). 
>  
>
Jo, myslenka switche na uklizeni na konci funkce vypada elegantne. Co ji
predchazelo uz tak elegantni neni.

Kdyz tu zminim garbage collector, tak me asi utlucete, co? :-))

Yenou predkladany priklad goto na uklizeni z driveru kernelu mi prijde
jako velice rozumny a pokud programator pouziva goto napriklad vyhradne
pro tyto vyjimecne stavy v kodu, ctenar si na to zvykne a jak uvidi
goto, bude moci okamzit oddelit normalni tok od reseni chyb. Coz je taky
podle me prinos pro citelnost.

Jeden z nejvetsich prinosu prechodu od C k Pythonu (pro vhodne programy
samozrejme) pro me predstavovalo to, ze v malych programech vlastne
vetsinou pisu jen normalni tok. Kdyz to selze, tak mi interpretr diky
vyjimce okamzite povi, kde, co a nekdy i proc. Dalsi kod se diky vyjimce
neprovadi, coz vyhovuje.

V C musi byt i minimalni zdrojak z 30-50% procent osetreni chybovych
stavu. Phuj. :-)

-- 

\//\/\
(Sometimes credited as BA92 C339 6DD2 51F6 BACB 4C1B 5470 360E 20E5 926D.)

 [ When you find a virus in mail from me, then I intended to infect you, ]
 [ since I use SW that is not distributing malware w/o my knowledge.     ]




Další informace o konferenci Linux