Ovo me bas interesuje, a vidim i da je u trenutno aktuelnom topicu kernuo offtopic u objektno programiranje, pa reko' da pitam.
U modulu koji sam prikacio (verb.py - nece raditi samostalno, jer je dio paketa) se vidi na sta mislim. Napisao sam klasu Ver() koj vrsi konjugaciju glagola. Ali, Ver() je samo wrapper za funkcije koje se nalaze van klase, a koje vrse konjugaciju.
Moje pitanje glasi, da li je bolje sve funkcije staviti kao atribute klase ili ih ostaviti kao nezavisne funkcije? Da li postoji neka programerska praksa u vezi sa ovim, ili sve zavisi od primjera do primjera?
Kad smo vec kod primjera, u ovom modulu funkcije su van klase jer je citav paket zamisljen kao low-level interfejs, a jednom pozvana funcija za pojedinacni glagol vise se ne poziva (jer nema potrebe - klasa cuva rezultate funkcija). Sa druge strane, gomila funkcija ustaje pod public statusom, i dostupna je za posebno eksperimentisanje sa glagolima.
I jos nesto... Ako pogledate kod, vidjecete da su sve funkcije koje prave vremena (pocinju sa conj_) veoma slicne. Sad, da li je bolje napraviti jednu veliku funkciju/klasu sa if dijelovima i zaobici napotrebno ponavljanje koda ali na racun preglednosti?