Любая программа — это живой организм. Она рождается, болеет багами, взрослеет с новыми фичами и иногда бесславно сдыхает. Но если повезло, и проект не помер через полгода, то он будет развиваться. И чтобы в этом бардаке хоть как-то ориентироваться, придумали нумерацию версий.
Вот как это бывает.
Вариант 1. Целые числа: по старинке, по-крупному
Когда новую версию пилят долго, с пафосом, и выпускают раз в год или в пятилетку — ставят просто число.
CorelDRAW 11, Photoshop 7, Windows 3.1 — всё в духе: «Вот вам большая обновка, уважайте».
Никаких мелочей, только хардкор.
Вариант 2. Десятичная дробь: немного апгрейда — немного версии
Тут всё чуть сложнее. Первый релиз — 1.0. Добавили пару кнопок — 1.1. Переделали половину интерфейса — уже 2.0.
Простой способ дать понять: было что-то, стало лучше. Но не так радикально, чтобы менять название. Удобно.
Маркетологи любят — звучит серьёзно.
Вариант 3. Последовательные числа: когда версия — как хроника
Здесь уже настоящее мясо. Формат Major.Minor.Patch, иногда с хвостом — 1.4.2-rc1.
- Первое число (major) — всё переделали, старые файлы не открываются, интерфейс — как в другой вселенной.
- Второе (minor) — функционал допилили, багов стало меньше, но ничего критичного.
- Третье (patch) — пофиксили одну строчку кода, но релиз же — надо показать, что работаем.
- Четвёртое (build/micro) — когда даже патч перепатчили.
Сюда часто прилетают ещё и стадии разработки: alpha, beta, rc, rtm, ga. Понимать их надо так:
- alpha — «держится на костылях»
- beta — «почти готово, но может бахнуть»
- rc — «если багов не найдёте, пускаем в прод»
- rtm — «отдали на завод, дальше только багфиксы»
- ga — «ну вот, держите»
Вариант 4. Нумерация по годам: Microsoft style
Прямо в лоб: Windows 98, Office 2016, AutoCAD 2024. Год — это и версия, и маркетинг.
Удобно: никто не путается. Проблема — если за год ничего не сделали, а релиз нужен. Тогда выпускают новый пакет с тем же функционалом, но с новой обложкой.
Но работает.
Вариант 5. Буквы и магия: чтобы выглядело солидно
Некоторые не парятся с цифрами и просто лепят буквы, как в Delphi XE, Android Pie, macOS Ventura.
Это когда цифры уже ничего не значат, и надо просто продавать ощущение нового. Маркетологи в восторге, программисты — тихо матерятся.
Почему вообще всё это важно?
- Порядок в хаосе: версионность — это ваша карта в болоте изменений.
- Для поддержки: если баг в версии 1.3.7, а ты уже на 2.0.1 — вопросы к тебе уже не по адресу.
- Для доверия: у тебя версия 0.1.2, а у конкурента 5.6 — даже если ваш код лучше, клиенту это не очевидно.
- Для командной работы: когда у каждого своя сборка — нумерация спасает от войны.
А что используешь ты?
Если твой проект ещё дышит и обновляется — пора решить, как ты будешь метить свои релизы. Сколько бы ты ни писал «fix», если у тебя всё «версия 1.0», никто не узнает, сколько крови и кофе в неё влито.
Так что не ленись, ставь версию. И пусть даже это будет 0.0.1, но пусть будет честной.
0 комментариев