Я прочитав наступне речення у вільній вікі NHibernate :
...; Однак, для більшості нових родовищ додатків (і досить багато занедбаних з них теж) автоматичного відображення буде більше , ніж здатні.
Що таке «зелені поля» та «коричневі поля»?
Я прочитав наступне речення у вільній вікі NHibernate :
...; Однак, для більшості нових родовищ додатків (і досить багато занедбаних з них теж) автоматичного відображення буде більше , ніж здатні.
Що таке «зелені поля» та «коричневі поля»?
Відповіді:
в інших дисциплінах, таких як програмна інженерія, зелений майданчик - це також проект, в якому відсутні будь-які обмеження, накладені попередньою роботою. Аналогія полягає у будівництві на земельних ділянках, де немає необхідності переробляти чи руйнувати існуючу споруду.
(з http://en.wikipedia.org/wiki/Greenfield_project )
Розробка Браунфілда - це термін, який зазвичай використовується в ІТ-галузі для опису проблемних просторів, що потребують розробки та розгортання нових програмних систем у безпосередній присутності існуючих (застарілих) програмних програм / систем. Це означає, що будь-яка нова архітектура програмного забезпечення повинна враховувати та співіснувати з актуальним програмним забезпеченням, яке вже знаходиться на місці.
(з http://en.wikipedia.org/wiki/Brownfield_(software_development) )
Думаю, це може бути пов’язано з містобудівними термінами „зелена земля” та „земельна ділянка коричневого поля” . Зелені ділянки - це незабудовані землі - сільськогосподарські, озеленені чи природні. Браунфілд - це освоєна земля.
Заявка на закупівлю - це вже існуюча програма, тоді як заявка на Грінфілд ще не зроблена або знаходиться на дуже ранніх стадіях розробки.
Додатки Greenfield: нова розробка, жодна попередня робота, яка не обмежує ваше рішення. Я думаю, що цей термін походить від ООН "неораного, зеленого" поля.
Браунфілд: існуюча програма, безліч існуючих речей для розгляду тощо.
Я гадаю, це аналогія будівлі
Виходячи з того, що я знаю про Джеймса Грегорі (хлопця, що стоїть за вільним NHibernate), я думаю, що запис у Вікіпедії для Браунфілда трохи з теоретичного боку. У розробці додатків Brownfield ми визначаємо це як:
проект або кодова база, яка була раніше створена і може бути забруднена поганою практикою, структурою та дизайном, але має потенціал для відродження шляхом всебічного та спрямованого рефакторингу
Коротка версія: Існуючий проект, який потребує роботи, але все ще активно розробляється (на відміну від більшості застарілих систем).
Існує багато суперечок навколо рішення компанії про "зелене поле", "коричневе поле" або рефакторинг застарілого коду.
Рішення потрібно приймати з урахуванням багатьох факторів - не в останню чергу - наявні кошти на розробку заявки на нове місце. У багатьох випадках застарілий додаток - це поточна готівкова корова компанії, і будь-яка заміна цього застарілого коду не принесе жодного червоного долара, поки він не буде повністю розроблений та перебуває в руках першого клієнта-платника.
Хоча перевагою більшості програмних розробників є ПОЧАТИ НОВИЙ ПРОЕКТ GREENFIELD, оскільки вони зазвичай ненавидять OPC (Кодекс інших людей), це не завжди може бути в довгостроковій фінансовій діяльності компанії.
Я написав статтю, в якій проаналізовано ризики, пов'язані з проектами, що ґрунтуються на реальному досвіді в компанії, в якій я працював 20 років тому (показуючи свій вік зараз). Ви можете прочитати його тут:
http://stepaheadsoftware.blogspot.com.au/2012/09/greenfield-or-refactor-legacy-code-base.html