Programmierung

Objektinstanzen mit dem UML-Objektdiagramm darstellen

In UML Objektdiagramm können Instanzen von Klassen dargestellt werden. Attributwerte werden als Slots oder über Links repräsentiert, Aggregationen und Instanziierungen können ebenso festgehalten werden. Instanzen werden wie Klassen dargestellt, deren Instanzname unterstrichen ist. In diesem Blogpost werden die relativ wenigen Notationsmittel des UML-Objektdiagramms vorgestellt.

Polymorphie in der objektorientierten Programmierung

Ein zentrales Konzept der objektorientierten Programmierung ist die Polymorphie: die Vielgestalt von Objekten. Es ermöglicht über Instanztypen das Verhalten eines Objekts festzulegen, während der Typ der Referenz festlegt, welche Member erreichbar sind. Objekte sind so flexibel über unterschiedliche Referenzen wiederverwertbar, ohne gecastet werden zu müssen.

Navigation einer GUI mit UML-Zustandsdiagrammen entwerfen

Der Ablauf des Geschäftsprozesses steht fest, jetzt geht es darum, die einzelnen Masken zu modellieren. Jede Maske repräsentiert dabei einen Zustand, den das UserInterface einnimmt. Diese Zustände und deren Übergänge werden mit einem UML-Zustandsdiagramm geplant, hierfür gibt es einige Kniffe, um bei größeren Seitenkomplexen eine übersichtliche Modellierung sicherzustellen (Teil der Artikelserie zur Gestaltung und Entwicklung von Benutzeroberflächen für Geschäftsprozesse).

Digitale Geschäftsprozesse als UML Aktivitätsdiagramm entwerfen

Auf Basis bestehender Geschäftsprozesse sollen die optimierten und digitalisierten Geschäftsprozesse entworfen werden. Zunächst die Übersicht aller Anwendungsfälle erstellt, die im Rahmen des Requirement Engineerings gewonnen wurde. Dann werden daraus die neuen Geschäftsprozesse abgeleitet und ermittelt, welche davon detaillierter modelliert werden müssen. Die Modellierung erfolgt diesmal mit einer Technik der Lösungsdomäne: dem UML-Aktivitätsdiagramm (Teil der Artikelserie zur Gestaltung und Entwicklung von Benutzeroberflächen für Geschäftsprozesse).

Python OOP: Statische Member und Type-Annotation

Neben Methoden und Instanzvariablen (Attributen), die das Verhalten und den Zustand einzelner Objekte speichern und verändern gibt es in der objektorientierten Programmierung auch Verhalten und Zustand, der einen gemeinsamen Zustand aller Objekte einer Klasse betrifft. Solche Klassenmethoden und Klassenvariablen werden in der OOP statisch genannt. Dieser Artikel beschreibt, wie sie in Python implementiert werden.

Übersicht der Programmentwurfsmethoden

Algorithmen können mit unterschiedlichen Programmentwurfstechniken dokumentiert werden: Pseudocode, Programm-Ablaufplan, Struktogramm oder UML-Aktivitätsdiagramm. Hier werden alle vergleichend dargestellt.

CleanCode: Oranger Grad – Übungsaufgaben

Leitfragen und Übungsaufgaben zu CleanCode: Der Artikel enthält eine Reihe von Leitfragen zum Verständnis der Prinzipien (SLA, SRP, SoC, Source Code Conventions) und Praktiken (Issue Tracking, Integrationstest, Lesen, Reviews), die im orangenen Grad des Clean-Code-Developers zusammengefasst sind.

CleanCode: Roter Grad – Übungsaufgaben

Leitfragen und Übungsaufgaben zu CleanCode: Der Artikel enthält eine Reihe von Leitfragen zum Verständnis der Prinzipien (DRY, KISS, BoPO, FCol, IOSP) und Praktiken (Boy Scout, Root Cause, VCS, Refactoring, Reflection), die im roten Grad des Clean-Code-Developers zusammengefasst sind. Am Ende findet sich eine praktische Übungsaufgabe, bei der CleanCode-Prinzipien angewendet werden sollen.

Übungsaufgaben zu ReST-API-Grundlagen

Aufgaben zu den Grundlagen von ReST: Zunächst ein paar allgemeine Leitfragen zu Begriffen und Konzepten, dann zwei Fallbeispiele (API einer smarten Heizung und eines Industrieroboters), anhand derer das Grundlagenverständnis für ReST-Schnittstellen abgeprüft werden kann.

Übungsaufgaben zu Regulären Ausdrücken

Reguläre Ausdrücke gelten als nicht wartbar. Zu kryptisch ist ihr Aufbau. Trotzdem kann man mit etwas Übung einen Blick dafür entwickeln, warum Zeichenketten durch Muster gefunden werden oder nicht gefunden werden. Hier sind ein paar Übungsaufgaben, um den Blick zu schärfen!