Posted By: Koles (www.jablok.cz) on 'CZprogram'
Title:     Re: garbage collectoryyyyyy
Date:      Fri Nov 12 15:03:17 2004

> pozadavku, ktery popisoval Quasimodo. Samozrejme, namitas, ze zde muzou byt 
> cross reference, ja namitam, ze cross reference nejsou az tak caste, zvlaste
> u pripadu, ktery Quasimodo popisoval. 

Ano, nejsou tak caste. Jenze v praktickem zivote radeji dam programatorum
do ruky pravidlo "NIKDY nepouzivejte destructory pro dealokaci zdroju", 
nezli "destruktory pro dealokaci zdroju pouzivat muzete, ale pozor na
cross-reference". Bude to tak praktictejsi. I pri debugovani pak je snazsi
si vybavit (a zodpovedet) otazku "uzaviras zdroje?" nez "nehrozi mi nekde
cross-reference?".

A v okamziku, kdy se i autori jazyka (resp. reseni GC) shodnou na tom,
ze tento pristup je praktictejsi, tak pochopitelne daji tvemu a Quasimodovu
pohledu na vec nizsi prioritu.

Jde mi ciste o ten dopad na realny vyvoj software. Tim, ze umoznim
dealokaci zdroju v destruktoru, ziskam jen jakousi estetiku, jeji prinos
bude dle meho prevazen rizikem zaneseni tezko odhalitelnych chyb.

Je to vec vkusu a pristupu, mluvim za sebe a myslim, ze i za filosofii
jazyka Java, ale za objektivni pravdu to pochopitelne prohlasit nemohu :-)

> ... obecna poznamka - to, ze nekdo za me spravuje destrukci objektu (at uz 
> formou reference-countu ci garbage collectoru), je pomerne hodne uzitecna 
> vec, ktera navrh "programu" silne zjednodusuje. V okamziku, kdy napises, ze 
> na garbage collector v Jave (ci kdekoli jinde) se spolehat neda, a ze si
> tuhle spravu musis defakto zajistovat sam, znamena to degradaci na uroven 
> strukturovaneho programovani. (trosku prehnane, ale doufam, ze myslenka je 
> zrejma) 

Nemohu rict, ze se na GC v Jave spolehat neda. Pouze se neda spolehat
na to, ze k ruseni objektu dojde tehdy, kdy bych si pral - v tom citim
preci jen jisty rozdil.

A myslim, ze praxe ukazuje, ze to s tou degradaci tak zle neni.
Jak uz jsem napsal, je o to reseni rozporu mezi idealem a pragmatickou
snahou znesnadnit programatorovi dopoustet se obtizne odhalitelnych chyb.

Pavel

Search the boards