Über den Service
ÜbersetztIch bin ein Entwickler in Eiffel, der dort arbeitet, wo Korrektheit kein nettes Add-On, sondern das Herzstück der Aufgabe ist. Der Großteil des objektorientierten Codes beruht auf Tests und Hoffnung; ich verlasse mich auf Design by Contract—Vertragsprogrammierung. Jede Klasse erklärt offen ihre Verpflichtungen: Vorbedingungen, die der Aufrufer erfüllen muss, Nachbedingungen, die die Methode garantiert, und Klasseninvarianten, die während der gesamten Lebensdauer des Objekts wahr sind. Ein solcher Vertrag ist eine ausführbare Spezifikation, die zur Laufzeit während der Entwicklung überprüfbar ist und für immer ein Stück Dokumentation bleibt. Wenn etwas kaputt geht, wird die Überprüfung genau an der verletzten Grenze ausgelöst, und der Fehler wird an seiner Quelle erfasst, anstatt drei Ebenen später als beschädigter Zustand aufzutauchen.
Meine Ingenieurskunst basiert auf strenger statischer Typisierung, void-safety und Disziplin, die die Sprache selbst durchsetzt: sorgfältige Vererbung mit Umbenennung und Auswahl, Trennung von Befehlen und Abfragen, einheitlicher Zugriff, sodass die Clients nicht von der Speicherimplementierung abhängen. Ich entwerfe Cluster von Klassen klein, kohärent und nachweislich zusammensetzbar und halte sie ehrlich über Verträge, während das System wächst. Ich arbeite fließend mit EiffelStudio und seinem inkrementellen Compiler, wende SCOOP für Parallelität ohne Datenrennen an und verlinke Eiffel mit C und fertigen Bibliotheken, wenn das Projekt es erfordert. Leistung und Zuverlässigkeit sind für mich Partner: Ich profiliere reale Lasten, anstatt zu raten.
Ich übernehme Systeme von Grund auf und rette fragile Altlasten, die zuverlässig werden müssen. Ich kann Verträge schrittweise in unter-spezifizierten Code einführen, die riskantesten Module absichern und eine Reihe von Überprüfungen und Tests hinterlassen, die die Absicht für den nächsten Ingenieur dokumentieren. Wenn Sie etwas bauen, das richtig sein muss—finanzielle Logik, Steuerungssoftware, Werkzeuge, von denen andere Teams abhängen—bringe ich einen "verify first"-Ansatz mit, der Mängel erfasst, bevor Ihre Benutzer es tun.
— Anwendung und Bibliotheksentwicklung in Eiffel von Grund auf
— Design by Contract: Vor- und Nachbedingungen, Klasseninvarianten, Schleifenvarianten
— Void-sichere, streng typisierte Architektur von Klassen und Clustern
— Altlastenabsicherung und schrittweise Einführung von Verträgen
— Parallelität über SCOOP und Integration mit C und externen Bibliotheken
— EiffelStudio-Konfiguration, Builds, Profilierung und Test-Suiten
Meine Ingenieurskunst basiert auf strenger statischer Typisierung, void-safety und Disziplin, die die Sprache selbst durchsetzt: sorgfältige Vererbung mit Umbenennung und Auswahl, Trennung von Befehlen und Abfragen, einheitlicher Zugriff, sodass die Clients nicht von der Speicherimplementierung abhängen. Ich entwerfe Cluster von Klassen klein, kohärent und nachweislich zusammensetzbar und halte sie ehrlich über Verträge, während das System wächst. Ich arbeite fließend mit EiffelStudio und seinem inkrementellen Compiler, wende SCOOP für Parallelität ohne Datenrennen an und verlinke Eiffel mit C und fertigen Bibliotheken, wenn das Projekt es erfordert. Leistung und Zuverlässigkeit sind für mich Partner: Ich profiliere reale Lasten, anstatt zu raten.
Ich übernehme Systeme von Grund auf und rette fragile Altlasten, die zuverlässig werden müssen. Ich kann Verträge schrittweise in unter-spezifizierten Code einführen, die riskantesten Module absichern und eine Reihe von Überprüfungen und Tests hinterlassen, die die Absicht für den nächsten Ingenieur dokumentieren. Wenn Sie etwas bauen, das richtig sein muss—finanzielle Logik, Steuerungssoftware, Werkzeuge, von denen andere Teams abhängen—bringe ich einen "verify first"-Ansatz mit, der Mängel erfasst, bevor Ihre Benutzer es tun.
— Anwendung und Bibliotheksentwicklung in Eiffel von Grund auf
— Design by Contract: Vor- und Nachbedingungen, Klasseninvarianten, Schleifenvarianten
— Void-sichere, streng typisierte Architektur von Klassen und Clustern
— Altlastenabsicherung und schrittweise Einführung von Verträgen
— Parallelität über SCOOP und Integration mit C und externen Bibliotheken
— EiffelStudio-Konfiguration, Builds, Profilierung und Test-Suiten