Я прочитал следующее предложение в вики- сайте Fluent NHibernate :
...; тем не менее, для большинства приложений с нуля (и довольно многих из них) автоматическое отображение будет более чем способным.
Что такое новые и старые приложения?
Я прочитал следующее предложение в вики- сайте Fluent NHibernate :
...; тем не менее, для большинства приложений с нуля (и довольно многих из них) автоматическое отображение будет более чем способным.
Что такое новые и старые приложения?
Ответы:
в других дисциплинах, таких как разработка программного обеспечения, «с нуля» - это также проект, в котором отсутствуют какие-либо ограничения, налагаемые предыдущей работой. Это аналогия со строительством на земле с нуля, где нет необходимости переделывать или сносить существующее строение.
(из http://en.wikipedia.org/wiki/Greenfield_project )
Браунфилд разработка - это термин, обычно используемый в ИТ-индустрии для описания проблемных пространств, требующих разработки и развертывания новых программных систем в непосредственном присутствии существующих (унаследованных) программных приложений / систем. Это означает, что любая новая архитектура программного обеспечения должна учитывать и сосуществовать с действующим программным обеспечением, уже существующим на месте.
(из http://en.wikipedia.org/wiki/Brownfield_(software_development) )
Я думаю, это может быть связано с терминами городского планирования «земля с нуля» и «земля с заброшенной площадкой» . Земля с гринфилдом - это неосвоенная земля - сельскохозяйственная, ландшафтная или природная. Земля Браунфилд - это развитая земля.
Приложение на заброшенном участке - это существующее приложение, а новое приложение - это приложение, которое еще не создано или находится на очень ранних стадиях разработки.
Приложения с нуля: новые разработки, без ранее проделанной работы, которая создает ограничения для вашего решения. Я думаю, что термин происходит от не вспаханного, зеленого поля.
Браунфилд: существующее приложение, множество существующих вещей, которые следует учитывать, и т. Д.
Думаю, это аналогия со строительством
Основываясь на том, что я знаю о Джеймсе Грегори (разработчике Fluent NHibernate), я думаю, что статья в Википедии о brownfield немного теоретична. В Браунфилдской разработке приложений мы определяем это как:
проект или кодовая база, которые были созданы ранее и могут быть загрязнены плохими практиками, структурой и дизайном, но могут быть возрождены путем всестороннего и направленного рефакторинга
Краткая версия: существующий проект, который требует доработки, но все еще активно развивается (в отличие от большинства устаревших систем).
Существует много споров по поводу решения компании «с нуля» или «коричневого» или рефакторинга унаследованного кода.
Решение необходимо принимать с учетом многих факторов, не в последнюю очередь из-за наличия средств для разработки нового приложения. Во многих случаях унаследованное приложение - это текущая дойная корова компании, и любая замена этого унаследованного кода с нуля не принесет ни единого красного доллара, пока оно не будет полностью разработано и не попадет в руки первого платящего клиента.
Хотя большинство разработчиков программного обеспечения предпочитают НАЧАТЬ НОВЫЙ ПРОЕКТ GREENFIELD, потому что они обычно ненавидят OPC (Кодекс других людей), это не всегда может быть в долгосрочной перспективе для компании.
Я написал статью, в которой анализирует риски, связанные с новыми проектами, основываясь на очень реальном опыте работы в компании, в которой я работал более 20 лет назад (показывает мой возраст сейчас;). Вы можете прочитать это здесь:
http://stepaheadsoftware.blogspot.com.au/2012/09/greenfield-or-refactor-legacy-code-base.html