[ AelTHeGriN @ 29.12.2003. 23:40 ] @
Ovako, cisto me zanima jedna stvar.
Je li pametno (znam da nije bas, ali mozete reci zasto) staviti KOMPLETAN program (mislim skriptu) u jednu funkciju... Recimo program koji skida mejl sa nekog proizvoljnog servera da izgleda ovako:

Code:
def main():
  i sad tu razliciti kod, funkcije unutar glavne, razne operacije i to...
main()


Dakle najprije definiramo funkciju, u njoj napravimo citav nas program i na koncu je pozovemo. Pitam zato jer sam se navukao na takav stil, prije nisam tako pisao, ali od jednog covjeka sam pokupio taj stil i ne mogu ga se rijesiti...
Dakle, pozitivne i negativne strane me zanimaju:)
Hvala.
[ alex @ 30.12.2003. 00:28 ] @
Ukoliko je u pitanju manji skript, pa cak i veci, totalno je nepotrebno definisati nekakvu main() funkciju - python interpreter ce krenuti izvrsavanje koda od prve komande koja nema indent.

Stavljanjem celokupnog koda u main() (mozes je nazvati kako god hoces) je redundantno, mada, moze doprineti lepsem kodu.

Kod pisanja modula, recimo, zgodno je imati neku glavnu funkciju koja ce odraditi nesto ukoliko se modul pozove iz komandne linije, npr:

Code:

if __name__ == "__main__"
    test()


Ja obicno koristim taj test() kako bih testirao klase u modulima..

Inace, za manje skriptove uopste ne koristim grupisanje celog koda u neku funkciju tipa main()..

Kod tog coveka od koga si pokupio taj stil je uzrok verovatno zaostavstina C-a..
[ AelTHeGriN @ 30.12.2003. 00:41 ] @
Hvala puno, to je sve sto sam zelio znati:)

P.S. I ja sam se bojao da mu je to ostavstina iz C-a, a posto C nikad nisam dobro znao, nisam se nikad navukao na taj stil, osim eto sada:)