Wie wendet man das ISP Principle in Embedded Software an?

Auch wenn C oder C++ keine Interfaces im klassischen Sinne wie Java oder C# kennen, kann man das ISP Principle mit Abstraktionen und Pointer-zu-Funktionen oder reinen abstrakten Klassen umsetzen:

Beispiel (C++):

class IButton {
public:
    virtual void onPress() = 0;
};

class ILED {
public:
    virtual void turnOn() = 0;
    virtual void turnOff() = 0;
};

Statt eines „Mega-Interfaces“ wie:

class IDevice {
    virtual void onPress();
    virtual void turnOn();
    virtual void turnOff();
};

trennt man die Verantwortlichkeiten auf – genau das ist der Kern vom ISP Principle.

com

Newsletter Anmeldung

Bleiben Sie informiert! Wir informieren Sie über alle neuen Beiträge (max. 1 Mail pro Woche – versprochen)