Irgendwie tut er mir ja leid. Wenn ich mich an die Diskussionen zu Java in den 90ern zurückerinnere, wurde die Sprache zur Programmierung von Wasch- und Kaffeemaschinen entwickelt. Ich bin dann sofort umgestiegen, meinen Kaffee mit der Hand aufzubrühen. Das mache ich heute immer noch. Neulich hat mich ja jemand gefragt, wieso ich mir immer diese Mühe mache...
Also: Verwenden Sie Java, wozu Java konzipiert wurde: Zum machen von viel maschinellem Milchschaum und diesen ätzenden puste und klacker Geräuschen.
So, jetzt hab ich auch mal was über Java verbloggt.
Bin gerade dabei Code meiner wirklich hochgeschätzten Kollegen zu Reviewen und spezielle Funktionsweisen von Bestimmten Teilen des Programm-Codes zu überprüfen und natürlich sprachlich zu beschreiben.
Irgendwann musste ich feststellen, dass ich in jedem Satz mindestens einmal das Wort Exception verwenden muss. Ich will das mal nicht werten, denn an den Stellen macht das überall Sinn. Wenn da nicht die Durchreich-Orgien wären. Was meine Kollegen an sich auch sauber gebaut haben sieht um kurz nach 0200 aber aus wie Spagetti-Code aus dem Jahre 1988 als ich noch Programme zur Unterstützung chemischer Maßanalysen in einen Casio Taschenrechner mit BASIC-Interpreter tippen musste (meine Spezies war damals schon verpönt bei den C-Entwicklern die einen richtigen Tischrechner hatten). In der Zeit musste man auch noch vor jedem Befehl die Zeilennummer angeben, die Teil des Programmes war:
10 DIM $i
20 $i = 20
30 $i = $i - 1
40 IF $i > 10 THEN GOTO 30
50 PRINT $i
50 END
So aus dem Stand würde ich sagen, heute würde man dieses Problem wesentlich eleganter lösen (und das ganze wäre auch viel besser erweiterbar und wartbarer. Quasi die Software für das übernächste Jahrtausend):
class Basic_Exception extends Exception {
}
class Basic {
protected $_i = 20;
public static getInstance() {
static $instance;
if (empty($instance)) {
$instance = new Basic();
}
return $instance;
}
public function decrement() {
$this->_i--;
if ($this->_i > 10) {
throw Basic_Exception('goto');
} else {
throw Exception('goto');
}
}
public function __toString() {
return $this->_i;
}
}
Es gibt so Nächte, in denen mich die Vermutung beschleicht, dass OOP nicht nur ein Segen ist, sondern auch im Sinne der erweiterten Albrecht-Doktrin ein Verbrechen an der Zukunft ist. Was sich nebenbei bemerkt an der organisierten Verschwendung von Ressourcen und Entdecke-die-Möglichkeiten an sich durch mutmaßliche Weitsicht in der Software-Entwicklung manifestiert. Oder nicht goto 0.
Hab' ich das geschrieben? Ach nochwas: Das BASIC und das PHP-Beispiel tun natürlich nicht das gleiche, wie man schnell feststellen kann. Letzeres ist wesentlich robuster. Und auch übersichtlicher. Eine schöne Code-Architektur, wenn man so will.
Keine Ahnung, wieso sich Pflichtenhefte immer so zäh schreiben lassen. In einem Q-Universum wäre die erste Stellschraube, an der ich drehen würde die, die die Ernsthaftigkeit der Dinge in sich komplett ins Absurde ziehen würde. Nebenbei bemerkt glaube ich nicht daran, dass sich an der Welt, wie wir sie kennen, irgendwas signifikantes Ändern würde. Erstens wäre das zu schön um wahr zu sein. Zweitens wird die Welt überwiegend von Insekten beherrscht (Management ist in diesem Kontext genauso eine Illusion des Betrachters wie der Glaube an sich, der sich nachweislich bei Insekten nicht manifestieren kann, weil ihre Gehirne das einfach nicht hergeben). Drittens musste ich eben mit dem Kopf schütteln und hab nur einen Aufhänger gesucht, noch etwas mit dem Niveau zu feilschen. Es passt aber immer noch nicht unter der Türe durch:
[19:16:40] locke : übrigens konnte ich uns Montagmorgen, 8:00 Uhr als Liefertermin für das PH rausholen (jetzt will ich aber Ablaus!)
[19:19:30] xenjo : verneug und applaus
[19:27:26] locke : Die Ablaus ist übirgens im Gegensatz zur Alblaus eine, die nicht mit unterschiedlich langen Beinen am Hang steht, sondern eine, die unglücklicherweise von ihrem Wirt getrennt wurde und daher jetzt "ab" ist. Abläuse neigen zu übertriebener Weinerlichkeit und sind daher unter den Artgenossen wenig beliebt.
[19:28:24] xenjo : in dir steckt ja doch noch ein entomologe!
[19:29:35] locke : vor allem steckt in mir gerade der Wunsch, ganz weit weg zu sein und die Sonne zu genießen.
[19:29:45] locke : die sicher irgendwo scheint
[19:30:08] xenjo : naja, geht mir nicht anders!
[19:34:39] architektur_nazi__ : lol
[19:34:44] architektur__ : bitte den dialog von eben verbloggen
[19:36:38] locke : Xenjo, willst du?
[19:37:04] xenjo : hehe, das hat für meinen blog einfach zuviel niveu!
Heute hat mich Herr locke darauf hingewiesen, dass man in so manchen IT-Projekten in der Tat den Humor nicht verlieren darf. Wie recht er damit hat. Mein Rezept: Ab in den Wald und Erde drüber! Aber ich will necrophlirt ja nicht überstrapazieren.
Also hole ich einfach einmal wieder mit etwas zum Bleistift-Wording aus:
Ich finde nämlich nicht, dass Ally McBeal wirklich not getan hat (aber um Sex zu bekommen springe auch ich gelegentlich über meinen Schatten, lege den Rechner beiseite und bilde mich zum Thema Frauen und das heilige Schuhwerk). Ich erinnere mich jedoch zu meiner Schande noch gut an eine der core messages dieser unsäglichen Serie für die Ballkönigin im vorklimakterialen Alter (und baerli):
#1 "Du brauchst eine Hymne!".
Ok, mein Vorschlag für mein Team in München inkl. Agile-Nazi:
#2 Lernt singen!
Wer schon heiser vom agilen Mitmachen beim Bauen der Schnittstellen bei Gayflowr zu youporn.de geworden ist, für den hätte ich eine Alternative anzubieten. (Anm.: Herr Ude hat mir neulich bei den Lokalisten nicht dazu geraten, in einer erotisch aufgeladenen Stimmung wie in der permanenten Entladung unseres Sub-realXXX-indoktrinierten Projekt-Teams, youporn.de zu verlinken. Bekannt ist ja das viele Blut bei uns, wenn die Test im Cruse Control nicht durchgelaufen sind. Aber für den einen oder anderen mag es überraschend neu sein, dass unser Italienischen Hengs mit dem multilingual gut klingenden Namen einem wirklichen Jam-Jam-Verdienst zufällt. Danke, dass du mir die Telefonkonferenzen mit dezentem Telko-Hijacking versüßt!)
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/blog/include/plugin_api.inc.php on line 558
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/blog/plugins/serendipity_event_spamblock/serendipity_event_spamblock.php on line 398
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/blog/plugins/serendipity_event_spamblock/serendipity_event_spamblock.php on line 423
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/blog/plugins/serendipity_event_spamblock/serendipity_event_spamblock.php on line 466
Deprecated: Assigning the return value of new by reference is deprecated in /home/www/blog/plugins/serendipity_event_spamblock/serendipity_event_spamblock.php on line 697