Нумерация версий программы
У многих начинающих разработчиков возникает вопрос: как назначать версию своей программы?
Поделюсь своим опытом.
Не буду вдаваться в теорию, тем более, что жестких рамок в данном вопросе нет. В своей практике я встречал много различных вариантов назначения версий программ.
Приведу несколько примеров написания версии:
Разберем каждое значение.
Ревизия (Revision)
Номер ревизии (revision) в системе управления версиями (Version Control System, VCS или Revision Control System). Благодаря ему, можно легко получить исходный код конкретной версии, выгрузив его из хранилища. Как правило, данное значение начинается с 1 с последующим увеличением соответственно номеру ревизии и никогда не обнуляется. В силу того, что значение важно только для разработки, в нумерации программы его часто опускают.
Билд (build)
Иными словами, номер сборки программы. После изменения в коде программы, как правило, проводят сборку программы, т.е. полную компиляцию всех файлов проекта. Как правило, данное значение начинается с 1 с последующим увеличением соответственно номеру сборки. Обнуление сборки либо не проводят никогда, либо при смене мажорной (major) версии. В силу того, что это значение важно только для разработки, в нумерации программы его часто опускают.
Что такое «платформа» программы, «редакция», «конфигурация» и «релиз»
Патч или заплатка (patch)
Значение изначально устанавливается в 0 и увеличивается по мере внесения незначительных изменений в программу, например исправление какой-либо ошибки. Обнуляется при смене мажорной или минорной версий.
Минорная версия (minor)
Значение изначально устанавливается в 0 и увеличивается по мере внесения существенных изменений в программу, например, добавления нового функционала в программу. Значение также может повышаться при накоплении мелких изменений (патчей). Обнуляется при смене мажорной версии.
Мажорная версия (major)
Собственно говоря, это и есть версия программы. Значение мажорной версии устанавливается равной 1. Увеличивается данное значение с выходом новой версии, когда происходят значительные переходы в функциональности, например, добавлены новые функции, существенно меняющие возможности программы, изменен интерфейс, переписаны основные алгоритмы и т.п. Значение также может повышаться при накоплении серьезных (минорных) изменений.
Для пред-релизных версий используют значение равное 0, получая номер вида 0.9.*.*
Год.Месяц.День (year.month.day)
Такое назначение версии указывает на дату выхода программы, что удобно для конечного пользователя. Исходя из такой нумерации пользователь может судить о том, как давно вышла конкретная версия программы, и не пора ли проверить обновление. К сожалению, подобная версионность не всегда удобна для разработчиков, особенно когда над проектом работает не один человек.
Кроме указанных позиций, разработчики часто используют буквенные обозначения в номере версии:
alpha — как правило, первая публичная тестовая версия, перед выходом финальной версии. Служит для обкатки и тестирования.
Как писать пресс-релиз? Секреты идеального пресс-релиза.
beta — вторая публичная тестовая версия, перед выходом финальной версии. Также служит для тестирования.
RC, RC2 — релиз-кандидат (Relise Candidate) версия, почти готовая к релизу. Служит для окончательной проверки.
final — окончательная (финальная) версия программы. Используется крайне редко, обычно просто опускается.
Какую схему наименования версий использовать решать прежде всего разработчикам, главное, чтобы нумерация была удобна в разработке и понятна конечному пользователю. И это один из тех вопросов, о которых необходимо договариваться в самом начале разработки любого проекта.
В своей практике я использую написание вида major.minor[.patch[.build]], так как оно больше подходит к моему стилю разработки.
(Visited 7 831 times, 2 visits today)
- , Метки: version, версия, программа, программирование
Источник: subreal-team.com
Определение слова релиз, релиз-кандидат
Создание программного обеспечения – это сложный и длительный процесс, состоящий из множества этапов, и он не заканчивается, даже когда стадия разработки уже завершена. После завершения написания и отладки программного кода начинается другой, не менее трудоемкий этап – тестирование, целью которого является выявление ошибок. Сначала этим занимаются штатные тестировщики компании разработчика, затем к работе подключаются приглашенные специалисты, работающие по договору и, наконец – все желающие принять участие в тестировании новой программы (так называемое открытое бета-тестирование).
На всех этапах работы тестировщики составляют отчеты, которые направляются разработчикам для исправления обнаруженных ошибок (багов). И только когда все ошибки исправлены, тесты показывают стабильную и устойчивую работу программы, проверен весь заявленный функционал – производитель выпускает релиз-кандидат своей программы, который обозначается буквами RC (Release candidate).
Что такое релиз-кандидат?
Это еще не окончательный релиз, потому он и называется кандидатом. Но он представляет собой полнофункциональную, стабильно работающую версию программы, предоставляемую для свободного скачивания всем желающим. Обычно релиз-кандидат имеет ограничение по сроку действия или же может работать по лицензии предыдущей версии программы.
Иногда производители могут пропускать стадию выпуска релиз-кандидата, а могут выпустить их несколько. В этом случае им присваиваются номера – RC1, RC2 и так далее.
Чем вызвана необходимость выпуска релиз-кандидатов, ведь, казалось бы, программа уже многократно проверена? Обычно на этой стадии разработчик хочет убедиться в стабильной работе программы в разнообразном аппаратном и программном окружении.
Возможны ситуации, когда программа будет конфликтовать с другой программой или периферийным устройством, обращаясь к одним и тем же ресурсам. Иногда при установке обновлений операционной системы или другой программы могут быть заменены версии общих библиотек, используемых программой. Нередко антивирусы блокируют файлы, необходимые для работы программы. Чтобы проверить все это, производителю нужен максимально широкий охват различных сочетаний программных и аппаратных средств.
Работа RC у многочисленных пользователей отслеживается. С участием пользователя, или даже без его ведома, собирается статистика. Получив удовлетворительные результаты эксплуатации релиз-кандидата, и исправив выявленные ошибки, производитель выпускает окончательную, финальную версию.
Но даже этот этап может быть разбит на две фазы. Сначала выпускается релиз для производителей – RTM (Release to manufacturing). К примеру, операционные системы сначала поставляются сборщикам компьютеров, с тем, чтобы к тому моменту, когда новая версия операционной системы появится в свободном доступе, в продаже уже были компьютеры, на которых она установлена.
И наконец, выпускается общедоступный релиз – GA (General availability). Он тиражируется на различных носителях и поступает в свободную продажу. Это уже окончательная версия нового продукта, предназначенная для всех пользователей. Далее последуют только выпуски обновлений, патчей и сервис-паков. И так до выпуска новой версии программы, а там все начнется сначала!
Источник: myblaze.ru
Что такое релиз и модельный релиз
Неологизм «релиз» появился сравнительно недавно, но уже прочно обосновался в русском языке. Однако точно, что такое релиз, знают относительно немногие. Имеется два варианта перевода этого слова с английского языка: «выпуск» и «освобождение».
Во втором варианте это слово обозначает какое-либо устройство, обеспечивающее освобождение чего-либо. Например, релизом называют приспособление для стрельбы из блочного лука. Также релизом можно назвать расслабление мышцы какими-либо приёмами, например, мазями, иглоукалыванием или массажем.
Молодых людей чаще интересует не второе значение этого слова, а первое, то есть «выпуск». Действительно, отвечая на вопрос «Что такое релиз?», трудно не вспомнить о том, что и демонстрация или публикация чего-либо, и показ фильма, и выпуск нового альбома либо новой версии программного обеспечения – всё это тоже называют релизом.
Но иногда этим же словом называют не только выпуск, но и сам объект, который был выпущен недавно. Кроме того, часто выпуск чего-либо сопровождается специальным сообщением для печати, в котором указывается основная информация о продукте. СМИ никогда полностью не публикует весь пресс-релиз, а только опирается на эти материалы, создавая свои статьи или выступления.
Освещая тему, что такое релиз, стоит также указать, что и разрешение на показ или демонстрацию, публикацию или выпуск чего-либо можно назвать этим термином.
Вот такое многогранное слово явилось в русскую речь и осталось жить навсегда! Теперь-то уже никто не спросит, что такое релиз музыкальный или интернет-релиз. Например, скачал сынуля из интернета какую-то новую программу, запустил её, а она «парит мозги».
Он к программисту: «Что, старик, это значит?» И «старик», почесав свой ещё не знавший бритвы подбородок, с умным видом ответит одногодку: «А что ты хотел? Эта программа ещё не имеет релиза! Ты, брат, поторопился, недоделку слизал!» Вот какое это властное слово – «релиз». Нет его – не стоит и мучиться понапрасну.
А говоря о модельном бизнесе или о фотографировании, стоит уточнить, что «релиз модели» следует рассматривать как соглашение между тем, кто снимает, и тем, с кого эти снимки или видео делаются. Обязательно во время составления данного договора необходимо присутствие третьего лица – свидетеля. Ведь данное соглашение предусматривает право фотографа как на дальнейшую обработку материала (ретуширование, художественная правка), публикацию и распространение, так и на продажу материалов, демонстрацию на выставках и различных конкурсах.
С другой стороны, этот договор обязательно защищает честь модели. Фотограф не имеет права производить над снимками действий, могущих опорочить честь и достоинство модели ни при помощи обработки снимков, ни добавлением «прикольных» надписей.
По большему же счёту модельный релиз и самому фотографу крайне необходим. Это является гарантией в случаях возникновений конфликтных ситуаций, когда модель по какой-то причине высказывает своё недовольство какими-либо действиями со стороны фотографа. Например, модели не нравится тот факт, что её фото выложено в какой-либо социальной сети либо фотография принимает участие в выставке или фотосессии.
Особого внимания заслуживает ситуация, когда фотография занимает призовое место, получает награду. Модель в этом случае может начать требовать с фотографа «своей доли». При наличии же релиза этот вопрос легко улаживается, ведь в нём обговариваются заранее все возможные спорные ситуации.
И если выплата процентов по выгоде в нём не предусмотрена, то фотограф имеет полное право заявить модели: «Дорогая! Ты должна благодарить меня за то, что я сделал из тебя знаменитость! А насчёт денег… Ещё неизвестно, кто кому должен платить. Возможно, это я продешевил, однако…».
Источник: fb.ru
Нумерация версий программного обеспечения
Жизненный цикл любой программы — будь то десктопное или веб-приложение может быть продолжительным. Если проект активно развивается то в нем постоянно что-то меняется: добавляются новые функции или исправляются ошибки. Как правило, название проекта при этом никуда не девается, а меняется версия проекта.
Вариант 1. Нумерация целым числом
Обычно программы нумеруются целыми числами 1,2,3,4,5,6,7 и т.д. когда новая версия программы сложна, долго пишется и появляется только раз в год или несколько лет. После того, как такая программа будет протестирована, она помечается целым номером и выпускается для использования. Какие-либо мелкие изменения, добавляемые в процессе обслуживания программы, не учитываются в нумерации. Например, целым числом нумеруется Corel Draw (Corel Draw 10, Corel Draw 11)
Вариант 2. Десятичная дробь
Другой способ, который позволяет указать в версии программы серьезные и не большие изменения — это нумерация десятичной дробью. Например, как правило первая версия программы получает номер 1.0. При небольшом изменении увеличивается вторая цифра — 1.1. А при добавлении новой функции, изменяется вновь первая цифра, а вторая, следующая за ней, обнуляется — 2.0.
Вариант 3. Последовательные числа
Нумерация версий программы последовательными числами выглядит следующим образом.Версия программы состоит из трех или четырех чисел, разделенных точкой: например, 2.7.5.
- Первое число — старшая версия (major), изменяется при кардинальных изменениях программы
- Второе число — младшая версия (minor), изменяется при значительных изменениях функциональности
- Третье число (или буква) — стадия разработки
- Альфа версия — стадия тестирования приложения, число 0 или символ a
- Бета версия — стадия публичного тестирования приложения, число 1 или символ b
- RC (Release candidate) — релиз-кандидат — стадия-кандидат на то, чтобы стать стабильной версией, число 2 или символы rc
- RTM (Release To Manufacturing) — релиз — стабильная версия приложения, число 3 или символы rtm
- GA (General availability) — общедоступный релиз
Он может отсутствовать, и тогда вместо него ставится следующее число.
- Четвертое число — небольшие изменения (micro, maintenance), изменяется при любом, даже незначительной правке программы
Когда одно из чисел увеличивается, то все следующие за ним сбрасываются до нуля: 1.0.0, 1.0.1, 1.0.2, 1.1.0 и т.д. Часто, последний ноль может отбрасываться из версии, например: 1.0.0 = 1.0
Например, последовательные числа используют в Adobe Photoshop (Adobe Photoshop 7.0)
Вариант 4. Нумерация годом
Обычно, год используют в качестве нумерации для программных продуктов, которые долго разрабатываются и новые версии которых выходят не очень часто. Например, продукты того же Microsof, взять хотя бы их операционную систему или пакеты офисных утилит Word, Excel, PowerPoint и т.п.
Вариант 5. Нумерация текстом
Кроме чисел, в нумерации программы могут участвовать и различные буквы. Например, как это сделано в интегрированной среде разработки Delphi (Delphi XE)
Выбор, как именно нумеровать программу, выбирается по следующим причинам:
- в зависимости от использования системы контроля версии или иных инструментов разработки
- частота изменений в программе
- в маркетинговых целях, когда чтобы не отставать от конкурентов, разработчики проекта перескакивают на новый номер версии
Какой именно тип нумерации версий используете вы?
Источник: unetway.com