Thread Perl OOP
(12 answers)
Opened by sid burn at 2006-09-21 19:24
[quote=sid burn,22.09.2006, 13:28]
Wenn ich die duration um ein Tag erhöhen möchte, dann möchte ich dies lediglich so schreiben "$user->duration->add(1)" und nicht so "$user->duration_add(1)" [/quote] schon klar, aber warum? Quote ich weiß nicht, bei simplen integern oder strings rufst du doch in anderen sprachen auch keine methode mehr auf. Quote moment, moment. du hast mich glaube ich nicht verstanden. net_ftp_connect ist ja witzlos. wie gesagt, simple integer oder strings finde ich als objekte overkill. und da, wo du meinst, ein objekt haben zu müssen, mach auch eins. aber nicht implizit bei *jedem* attribut. Quote jetzt bin ich ganz verwirrt. wenn der user eine methode add_duration hat, warum steht die plötzlich "für "name", "password", "email" zur Verfügung"? und wenn ich die duration eines users erhöhen will (was auch immer das bedeutet), dann gehört diese methode für mich schon zum user. Quote bis jetzt sehe ich nur, dass dir ->foo_bar nicht gefällt und du lieber ->foo->bar schreiben willst. das finde ich gut für attribute, die richtige objekte sind. wenn du der meinung bist, duration verdient eine eigene klasse, dann hält dich nichts davon ab, das zu machen. ich finde einzig und allein den ansatz schlecht, generell jedesattribut einer klasse so zu behandeln. dann kommst du vom hundertsten ins tausendste. du verschwendest speicher und cpu. Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wie frage ich & perlintro brian's Leitfaden für jedes Perl-Problem |