С некоторыми сотоварищами развернулась интересная дискуссия. Как известно для того, чтобы собрать и задеплоить свой продукт на жабе требуется N-ное количество сторонних пакетиков в виде JAR-файлов.
Так вот, я доказываю, что для коммерческого продукта необходимо иметь полный и замкнутый цикл разработки, который включает в себя полное дерево исходников и пересборку 3rd-party jar-файлов, любое обращение к сети во время сборки должно быть запрещено.
Противоположная точка зрения -- все выкачивается из интернета в виде бинарных jar-файликов (в идеале при каждой сборке, как вариант -- кашируется 1 раз для локального использования).
Как по вашему -- кто прав и почему? ;-)
Так вот, я доказываю, что для коммерческого продукта необходимо иметь полный и замкнутый цикл разработки, который включает в себя полное дерево исходников и пересборку 3rd-party jar-файлов, любое обращение к сети во время сборки должно быть запрещено.
Противоположная точка зрения -- все выкачивается из интернета в виде бинарных jar-файликов (в идеале при каждой сборке, как вариант -- кашируется 1 раз для локального использования).
Как по вашему -- кто прав и почему? ;-)
no subject
Date: 2012-08-06 18:08 (UTC)1. это как бы очевидно. вопрос не в этом, а в п.2, точнее -- что делать, если баги есть, а апстрима, как такового уже нет.
[ С точки зрения разработки ]
1. Сырцы тоже требуют jar-ки для сборки, набор которых не обязательно пересекается с изначальным ;-)
2. Без этого ты даже не будешь уверен, что ты сможешь пересобрать эту jar ;-)
Можно еще компилятор и окружение припомнить, которые апдейтятся на сборочной системе, пока в какой-то момент не оказывается, что в текущем окружении просто скомпилировать то же самое, что было в прошлом году, не получается (правда с jar тут я не уверен -- долговременного опыта по поддержке нет). Или обратная ситуация, что продукт оказывается завязан на специфическое окружение, включая аппаратуру, на которое все молятся, т.к. восстановить в случае чего будет тяжело (это уже из практики пример).
no subject
Date: 2012-08-06 18:18 (UTC)