Hallo!
Am 2003-07-12 18:41 +0200 schrieb Jens Lehmann:
Wenn alle statischen Methoden keiner Klasse zugeordnet sind, sparst Du vielleicht ein wenig Tipparbeit, aber bei den riesigen Frameworks wird es dann doch sehr schnell unübersichtlich und uneindeutig. Meiner Meinung nach spricht nichts dagegen solche Methoden in einer sinnvoll benannten Klasse unterzubringen.
Aber dazu gibt es doch Namespaces, die IMHO besser für diesen Zweck sind, als zwanghaft irgendwelchen Konzepten eine Klasse überzustülpen.
Darf ich dann nicht mehr 3 + 4 schreiben, sondern muss 3.add( 4 ) aufrufen? Wenn das zur reinen Lehre der OOP gehört, dann bleib ich doch lieber bei Perl, C++ und Prolog. ;-)
3 ist bestimmt kein zulässiger Variablenname.
Aber in einer reinen OOP-Sprache wie SmallTalk oder Ruby ein richtiges Objekt. In Ruby _kann_ man Methoden von Zahlen aufrufen, die einfach ein Objekt der Klasse Integer sind.
Java weicht bei einfachen Operatoren wie "+" und einfachen Datentypen bereits von der Objektorientierung ab, um es dem Programmierer einfacher zu machen.
Das hoffe ich ja auch, man sollte es nicht übertreiben, sondern pragmatisch bleiben.
Vielleicht wäre es sogar sinnvoller, wenn es einfache Datentypen wie int, float, double etc. nicht geben würde (stattdessen Integer, Float, Double).
S. o, ich finde die pragmatische Lösung besser. Wegen einem int (was der Prozessor prima vollständig in HW unterstützt) gleich ein ganzes Objekt anzulegen ist IMHO overkill. Zumindest dann, wenn es auch wirklich so gemacht wird (und nicht vom Compiler wegoptimiert wird).
Gute Nacht!
Pitti