Semantische Versionierung: Was es ist, was nicht und warum Sie es brauchen
Veröffentlicht: 2019-05-20Die meisten der von Ihnen verwendeten Software veröffentlicht häufig neue Versionen, die normalerweise durch eine zugehörige Versionsnummer gekennzeichnet sind. Das System heißt 'semantische Versionierung' und ermöglicht es Ihnen, den Entwicklungsfortschritt zu verfolgen. Darüber hinaus können Sie, wenn Sie mit WordPress arbeiten, definitiv von guten semantischen Versionierungspraktiken profitieren.
In diesem Artikel geben wir Ihnen eine kurze Einführung in das semantische Versionierungssystem und seine Funktionsweise. Dann besprechen wir, wer davon profitieren kann und geben Ihnen einige Tipps, damit Sie es richtig machen.
Reden wir über Zahlen!
Was ist semantische Versionierung?
Wenn Sie die Download-Seite von WordPress.org besuchen, werden Sie feststellen, welche Version des Content Management Systems (CMS) Sie herunterladen:

Das System zur Ermittlung dieser Nummer wird als Versionierung bezeichnet. Genauer gesagt sehen Sie sich ein Beispiel für die semantische Versionierung an, bei der die Veröffentlichung in drei durch Punkte getrennte Zahlen unterteilt ist. Sehen wir uns an, wofür jeder dieser Werte steht:
- Die Hauptversion, die mit Änderungen an der API korreliert.
- Kleinere Updates der Software, die nicht signifikant genug sind, um ein größeres Update zu rechtfertigen.
- Patches oder Bugfixes.
Zum Zeitpunkt des Schreibens befinden wir uns in der WordPress-Version 5.1.1. Version 5.0.0 wurde am 6. Dezember 2018 veröffentlicht. Seitdem haben wir fünf kleinere Patches (Inkremente der endgültigen Zahl) und eine kleinere Version in dieser Reihenfolge:
- 5.0.1
- 5.0.2
- 5.0.3
- 5.0.4
- 5.1
- 5.1.1
Wie Sie sehen, wird die Patch-Nummer jedes Mal zurückgesetzt, wenn es ein kleineres Update gibt. Gleiches gilt bei einem Major Release, was bei WordPress traditionell etwa alle vier Monate passiert.
Der Sinn hinter der semantischen Versionierung besteht darin, dass Sie alle Änderungen und Fortschritte, die Sie vornehmen, verfolgen können. Wenn Sie Endbenutzer sind und mit den Releases Schritt halten, sagen Ihnen die Versionsnummern außerdem, wann ein Update wirklich wichtig ist. Sie können zum Beispiel ein oder zwei Bug-Patches überspringen, aber jedes Mal, wenn es eine Neben- oder Hauptversion gibt, sollten Sie aktualisieren (wir beobachten, wissen Sie!).
Wenn Sie sich nicht sicher sind, ob sich ein Update lohnt, schauen Sie einfach im Changelog nach, das mit jedem Release herauskommt. Jeder Entwickler, der sein Geld wert ist, wird bei jeder Veröffentlichung eine schriftliche Aufzeichnung der Neuerungen veröffentlichen.
Insgesamt ist die semantische Versionierung ziemlich unkompliziert und in vielen Situationen über die Softwareentwicklung hinaus praktisch. Reden wir darüber, was das ist.
Wer kann von der Verwendung der semantischen Versionierung profitieren?
Normalerweise finden Sie es Entwickler, die Versionsverwaltungssysteme verwenden. Was WordPress betrifft, sind die offensichtlichsten Beispiele Updates für den Kern selbst. Allerdings verwenden Plugin- und Theme-Entwickler auch semantische Versionierung, obwohl die Zahlen oft schwer zu finden sind. Wenn Sie sich beispielsweise eine Plugin-Seite auf WordPress.org ansehen, finden Sie Informationen zu deren Veröffentlichungen und Änderungsprotokollen auf der Registerkarte Entwicklung :

Ebenso können Sie sich auf den zugehörigen WordPress.org-Seiten über die Entwicklung eines Themes informieren. In diesem Fall müssen Sie jedoch unten auf der Seite auf den Link Entwicklungsprotokoll klicken:

Kurz gesagt, Sie können die semantische Versionierung für so ziemlich jede Art von Projekt verwenden, das Code beinhaltet. Es hat jedoch auch Anwendungen außerhalb der einfachen Entwicklung. Beispielsweise können Sie die Versionsverwaltung auf Entwurfsprojekte anwenden. Hier können Sie die Versionsnummer für größere visuelle Änderungen, den Wert für neue Elementerweiterungen oder kleinere Optimierungen erhöhen. Was Patches angeht, können Sie diese für kleine visuelle Updates oder Korrekturen reservieren.
Semantische Versionierung ist jedoch möglicherweise das beliebteste Spiel in der Stadt, aber es ist nicht das einzige System, das Sie verwenden können. Der Chrome-Browser verwendet beispielsweise ein Versionssystem mit vier Abschnitten – major.minor.build.patch .
Andere Projekte wie Ubuntu verwenden Systeme, die auf Datumsangaben basieren. Ubuntu befindet sich beispielsweise derzeit in der Version 19.04, die, wie Sie vielleicht vermutet haben, im April 2019 veröffentlicht wurde.

Insgesamt gibt es kein einzelnes Versionierungssystem, das perfekt für jede Art von Projekt geeignet ist. Semantische Versionierung ist jedoch eine großartige Option, wenn Sie in der Softwareentwicklung jeglicher Art arbeiten. Außerdem ist es eine großartige Einführung, wenn Sie noch kein Versionsprotokoll verwenden.
3 Best Practices für die semantische Versionierung
Inzwischen haben Sie bereits eine Vorstellung davon, wie semantische Versionierung funktioniert. Lassen Sie uns jedoch einige Tipps durchgehen, um sicherzustellen, dass Sie es richtig verwenden.
1. Fangen Sie nicht gleich mit Version 1.0 an
Irgendwann haben Sie wahrscheinlich Software verwendet, die noch nicht die Version 1.0 erreicht hat. Dies ist völlig normal, da Benutzer erwarten, dass Version 1.0.0 relativ stabil und fehlerfrei ist. Dies führt jedoch auch zu Situationen, in denen Software lange braucht, um diese Zahl zu erreichen, während sie noch vollständig verwendbar ist.
Nehmen Sie zum Beispiel das beliebte PC-Spiel Dwarf Fortress. Es befindet sich seit etwa 15 Jahren in der Entwicklung und befindet sich immer noch in der Version 0.44.12, obwohl es mehr Funktionen enthält als die meisten großen Spiele.

Während Sie damit bis zum Äußersten gehen könnten, ist es sinnvoll, nicht sofort mit Version 1.0.0 zu beginnen. Es ermöglicht Ihnen, Beta-Tests für Ihre Software durchzuführen und die Erwartungen der Benutzer zu dämpfen, während Sie dies tun.
Intern sollten Sie mit der Version 0.1.0 beginnen. Die meisten Projekte veröffentlichen diese Version jedoch nicht, sondern warten, bis sie etwas mehr Entwicklung auf dem Buckel haben. In der Zwischenzeit können Sie diese sehr eingeschränkten Alpha-Versionen jedoch für interne Tests verwenden, die für die gesunde Entwicklung jedes Projekts von entscheidender Bedeutung sind.
2. Erklären Sie die spezifischen Änderungen für jede neue Version
Eine der nervigsten Situationen, die Sie als Endbenutzer finden können, ist, eine Menge Updates zu erhalten, ohne zu wissen, was sie tun. Wir wissen, dass die meisten Leute keine Changelogs lesen, aber wenn Sie ein Update veröffentlichen – auch wenn es nur ein kleiner Patch ist – müssen Sie es dokumentieren.

Changelogs sind, wie der Name schon sagt, eine einfache Aufschlüsselung der Neuerungen in jedem Release. Einige Entwickler schreiben lange Updates, um jede einzelne Änderung zu erklären, und wenn Sie einer von ihnen sind, haben Sie mehr Macht.
Um ehrlich zu sein, begnügen wir uns normalerweise mit einer einfachen, prägnanten Liste der Neuerungen. Ein Changelog zusammenzustellen ist einfach und sollte nicht lange dauern, also bleib cool und spare nicht an deinen Pflichten!
3. Sammeln Sie Benutzerfeedback für jede Version
Sie haben wahrscheinlich eine ziemlich gute Vorstellung davon, wie Ihr fertiges Projekt aussehen soll. Dies bedeutet jedoch nicht, dass Sie auf Feedback von Benutzern oder dem Rest Ihres Teams verzichten können.
Im Idealfall erhalten Sie für jede veröffentlichte Version ein gewisses Maß an Feedback, abgesehen von kleinen Patches und Fehlerbehebungen. Das Ziel dieses Prozesses besteht darin, Sie darüber zu informieren, ob Benutzer auf Probleme stoßen oder Probleme mit der Richtung des Projekts haben.
Das einfachste Beispiel für diesen Prozess in Aktion wäre, die neueste Version einer laufenden Website mit dem Kunden zu teilen. In den allermeisten Fällen haben Kunden ein gewisses Maß an Feedback für Sie, das Sie in zukünftige Versionen einfließen lassen können.
Beachten Sie jedoch, dass es wichtig ist, auf Feedback zu hören, aber in einigen Fällen wissen Sie es möglicherweise besser als Ihre Benutzer. Dies bedeutet jedoch nicht, dass Sie sie ignorieren sollten, aber manchmal könnte Ihr Bauchgefühl Recht haben.
Abschluss
Die semantische Versionierung ist ein bemerkenswert einfaches System. Mit wenigen Zahlen können Sie viele Informationen über den Entwicklungsfortschritt Ihres Projekts vermitteln, Benutzer über neue wichtige Updates informieren und generell Ordnung halten.
Lassen Sie uns drei der Best Practices zusammenfassen, die Sie für die semantische Versionierung beachten müssen:
- Beginnen Sie nicht mit der ersten Version von vornherein.
- Erläutern Sie die spezifischen Änderungen für jede neue Version.
- Sammeln Sie Benutzerfeedback für jede Version.
Haben Sie Fragen zur Verwendung der semantischen Versionierung? Fragen Sie in den Kommentaren unten!
Miniaturansicht des Artikels von fatmawati achmad zaenuri / shutterstock.com
