Semver в основному стурбований версіями бібліотек і пакетів таким чином, щоб уникнути пекло залежностей, оскільки це різні втілення. Однак ідея Semver може поширюватися на всі види програм - будь-який фрагмент коду має якийсь інтерфейс користувача, або він досить марний.
- Бібліотека програмування або веб-служба має API.
- Споживче програмне забезпечення може мати графічний інтерфейс.
- Програми командного рядка мають набір комутаторів та опцій.
- Файли конфігурації - це також інтерфейс користувача.
Використовуючи приклад споживчого програмного забезпечення, такого як текстовий процесор:
- Збільште номер виправлення, коли ви надсилаєте виправлення помилки, наприклад: " виправлена помилка, коли програма завжди виходить з ладу в 00:00 у вівторок ".
- Збільшення другорядного номера версії при додаванні нової функції, наприклад: " додана підтримка підкресленого тексту ".
- Збільшуйте основну версію, коли ви істотно переробляєте користувальницький інтерфейс або переписуєте всі внутрішні пристрої. Наприклад: " Панелі інструментів використовують занадто багато властивостей екрана. Тепер інтерфейс користувача надається лише за допомогою жестів дотику »- така зміна порушить існуючі робочі процеси.
Однак багато проблем, які Семвер намагається вирішити, не існують поза зоною управління залежностями. У споживчих додатках версія - це не лише версія, але й маркетинговий актив.
Firefox та Chrome випускають нові версії порівняно часто і збільшують їх основний номер версії при кожному випуску. Це призводить до смішно високої кількості версій (обом зараз 30 років). Веб-переглядач з більшим номером версії повинен бути просто кращим, ніж браузер із меншим номером версії, правда?
Основний номер версії операційної системи Apple OS X став частиною назви (X - 10 за римськими цифрами), що робить малий номер версії ефективним основним номером версії.
Операційна система Ubuntu використовує схему версій року.month.patchlevel. Це дозволяє легко згадати, скільки років вашій ОС, але значно ускладнює з'ясування, які версії сумісні, і скільки триває підтримка кожної версії.
Ядро Linux зіткнулося з номером версії від 2.6.39 до 3.0.0, оскільки воно 39
було дещо більшим і відзначало 20-річчя Linux.
Легендарна система набору TeX Дональда Кнута використовує номер версії, який, починаючи з версії 3, переходить до π, додаючи ще одну цифру при кожному випуску: 3.14159265…. Це означає, як система наближається до досконалості. Аналогічно, система Metafont сходиться до e : 2.7182818….
Таким чином, багато заявок не надто добре обслуговуються Semver. Виберіть схему версій, яка підходить для ваших користувачів (незалежно від того, чи є вони іншими програмістами або споживачами), і дотримуйтесь її послідовності.