[python] globalni promenne
Jan Samohyl
samohyl na webseek.cz
Neděle Únor 16 01:34:47 CET 2003
On Thu, Feb 13, 2003 at 02:09:57PM +0100, Petr Mach wrote:
>
> >promenne jsou neco jako GOTO (koneckoncu se pouzivaji ve stejnem
> >programatorskem stylu) - mohou usetrit trochu psani, ale lepsi je na ne
> >zapomenout. zapouzdrete si data do objektu nebo do slovniku a budete muset
> >predavat jediny parametr nebo tak neco - proste "One can design around
> >this"
> Nesouhlasim. Proti goto se broji, protoze ho zacatecnici neumi pouzivat
> a delaji s nim sileny veci. Presto i to goto melo svuj vyznam, napr. pri
> vyskoku z nekolikanasobnych cyklu. Protoze se goto dostalo do klatby,
> musely jazyky za goto najit nahradu (uz to dokazuje, ze k necemu bylo),
> napr. continue label (coz je goto pojmenovane trochu jinak a trochu
> ochranene proti zneuziti) a nebo napr. continue level, kde level udava
> kolik smycek se ma prerusit. Za povsimnuti stoji, ze Python nic takoveho
> nenabizi a a preruseni vicenasobneho cyklu je nutno resit neintuitivni
> berlickou, pouzitim vyjimky. To je zneuziti tohoto mechanismu
> odpovidajici zneuzivani prikazu goto, kvuli kteremu bylo zruseno.
Ciste akademicka debata, ale prece jen: neni nakonec ta vyjimka prehlednejsi, protoze kvuli continue x se musi pocitat a
hledat x smycek?
Jinak taky nesouhlasim s tim, ze goto nema opodstatneni; nicmene ty situace, kdy by se pouzilo, lze stejne temer elegantne a
prehledne vyridit vyjimkou.
A jeste neco: novy Python ma ted iteratory, takze pokud mate nejakou komplikovanou smycku a potrebujete ji prerusovat apod.,
muzete ji (obcas) vrazit do iteratoru a mate uplne po potizich. ;-)
S pozdravem Jan Samohyl
Další informace o konferenci Python