Опис товару
Класична книга Е. Еванса освітлює найбільш загальний, стратегічний круг питань, пов'язаних з об'єктноорієнтованим розробленням програмного забезпечення. Це перероблення і структуризація знань про предметні галузі, застосування типових архітектурних шаблонів, побудова і аналіз моделей предметних областей, проєктування програмних об'єктів із погляду якості їхньої взаємодії та передавання логічної структури знань, організація програм на основі великомасштабних структур, вироблення спільної мови та стратегії комунікації в групі. Підхід автора будується на динамічному рефакторингу моделі та постійній дистиляції знань. Це дає змогу досягти високого ступеня гармонії між логікою предметної зони та кодом програми, а також достатньої гнучкості програмної архітектури для цілей зручної доробки та інтеграції програмного забезпечення. Книга насичена практичними прикладами з реальних проектів.Мірова спільнота програмістів визнає, що моделювання предметних областей — ключовий розділ проєктування програмного забезпечення. У моделях предметних областей розробники виражають складні функції своїх програм, реалізуючи їх потім у такому вигляді, який відповідає реальним потребам користувачів. Але попри очевидну важливість предмета, є дуже мало посібників з ефективного впровадження моделювання предметних областей у практику розроблення програм.Книга Еріка Еванса заповнює цей пробіл. Вона присвячена не окремим технологіям, а систематичному предметно-орієнтованому підходу. У ній представлений широкий набір прийомів і методик, що ґрунтуються на практичному досвіді, і фундаментальних принципів, що допомагають в реалізації програмних проєктів із складних предметних областей. Органічно переплітаючи практику проєктування та реалізації програм, ця книга містить безліч фактичних прикладів, що ілюструють застосування загальних стратегічних принципів в реальних програмних проєктах. З книги читач дізнається, як за допомогою моделі предметної зони надати розробці складної системи потрібну спрямованість і динаміку. Виділені основні прийоми та зразки-шаблони, що утворюють спільну мову групи розробників. Особливо підкреслюється необхідність рефакторингу не тільки коду, а й моделі в його основі, що в поєднанні з ітераційною agile-методикою призводить до поглиблення знань про предметну сферу та підвищення якості взаємодії між фахівцями та програмістами. Підхід книги будується саме на цьому фундаменті, пропонуючи моделі та архітектури для систем і організацій будь-якої складності. Зокрема, у книзі розглядаються такі теми: Єдина мова спілкування для всієї групи розробників.Блакитний зв'язок між моделлю та програмною реалізацією.Виділення ключових рис моделі.керування циклом існування об'єктів.Написування легко інтегруваного коду предметної зони.Як зробити складний код очевидним і передбачуваним у поведінку.Формулювання введення в предметну зона. Дистиляція ядра предметної зони.Пошук неявних понять, прихованих у моделі. Застосування аналітичних шаблонів.Архітектуритні шаблони в моделях.Підтримання цілісності великих систем.Зтворення декількох моделей в одному проєкті. Організація систем відповідно до великомасштабних структур. Якісні стрибки в моделях.Імея під рукою цю книгу, розробники об'єктноорієнтованих програм, системні аналітики та архітектори завжди будуть розташовувати набором рекомендацій з організації своєї праці, створення складних і корисних моделей предметних областей, перетворення їх на високоякісні, довгожювальні програмні продукти.Книга призначена для підвищення кваліфікації програмістів, що працюють, зокрема за методиками екстремального програмування та agile-розробки. Може бути корисна студентам відповідних спеціальностей. Про автора Еріка Еванса є засновником Domain Language — консультативної групи, яка допомагає різним фірмам будувати та розвивати програмні системи, тісно пов'язані з їхньою професійною діяльністю. Автор працював як архітектор і програміст над великими об'єктноорієнтованими системами в низці складних комерційних і технічних предметних областей, починаючи з 1980-х років. Він також займається підвищенням кваліфікації груп розробників в галузі екстремального програмування.