Bessere Schnittstellen

Letztens hatte ich in einer Klasse eine Methode überschrieben, um zu verhindern, das ein bestimmter Wert unterschritten wird. public class FontPreviewPanel extends JPanel { … @Override public void setSize(Dimension d) { if (d.width <= 0) d.width = 1; if (d.height <= 0) d.height = 1; super.setSize(d); } } Die Maßnahme zeigte auch seine gewollte Wirkung. […]

Java – immutable Objects

Wenn wir Software entwickeln, ist eines unserer Ziele unvorhersehbare Seiteneffekte zu vermeiden. Ich war mal vor knapp zehn Jahren in einem Projekt, in dem ein Kollege bei aufgetauchten Fehlern im System zum Auftraggeber sagte „Oh! Das ist leider ein Seiteneffekt.“. Irgendwann meinte der Auftraggeber genervt „Ich will das Wort Seiteneffekt nicht mehr hören!“. Wie kann […]