Класична книга Е. Еванса освітлює найбільш загальний, стратегічний круг питань, які пов'язані з об'єктноорієнтованим розробленням програмного забезпечення. Це перероблення і структурізація знань про предметні галузі, застосування типових архітектурних шаблонів, побудова і аналіз моделей предметних областей, проєктування програмних об'єктів із погляду якості їхньої взаємодії та передавання логічної структури знань, організація програм на основі великомасштабних структур, вироблення спільної мови та стратегії комунікації в групі. Підхід автора будується на динамічному рефакторингу моделі та постійній дистиляції знань. Це дає змогу досягти високого ступеня гармонії між логікою предметної зони та кодом програми, а також достатньої гнучкості програмної архітектури для цілей зручної доробки та інтеграції програмного забезпечення. Книга насичена практичними прикладами з реальних проектів.
Світова спільнота програмістів визнає, що моделювання предметних областей — ключовий розділ проєктування програмного забезпечення. У моделях предметних областей розробники виражають складні функції своїх програм, реалізуючи їх потім у такому вигляді, який відповідає реальним потребам користувачів. Але попри очевидну важливість предмета, є дуже мало посібників з ефективного впровадження моделювання предметних областей у практику розроблення програм.
Книга Еріка Еванса заповнює цю прогалину. Вона присвячена не окремим технологіям, а систематичному предметно-орієнтованому підходу. У ній представлений широкий набір прийомів і методик, що ґрунтуються на практичному досвіді, і фундаментальних принципів, які допомагають у реалізації програмних проєктів із складних предметних областей. Органічно переплітаючи практику проєктування та реалізації програм, ця книга містить безліч фактичних прикладів, які ілюструють застосування загальних стратегічних принципів в реальних програмних проєктах.
З книги читач дізнається, як за допомогою моделі предметної зони надати розробці складної системи потрібну спрямованість і динаміку. Тут виділені основні прийоми та зразки-шаблони, які утворюють спільну мову групи розробників. Особливо підкреслюється необхідність рефакторингу не тільки коду, а й моделі в його основі, що в поєднанні з ітераційною agile-методикою призводить до поглиблення знань про предметну сферу та підвищення якості взаємодії між фахівцями та програмістами. Підхід книги будується саме на цьому фундаменті, пропонуючи моделі та архітектури для систем і організацій будь-якої складності.
Зокрема, у книзі розглядаються такі теми:
- Єдина мова спілкування для всієї групи розробників.
- Глибокий зв'язок між моделлю та програмною реалізацією.
- Вибір ключових рис моделі.
- Керування циклом існування об'єктів.
- Напис легко інтегруваний коду предметної зони.
- Як зробити складний код очевидним і передбачуваним у поведінку.
- Формулювання введення в предметну зону.
- Дистиляція ядра предметної зони.
- Пошук неявних понять, прихованих у моделі.
- Застосування аналітичних шаблонів.
- Архітектурні шаблони в моделях.
- Підтримка цілісності великих систем.
- Здійснення декількох моделей в одному проєкті.
- Організація систем відповідно до великомасштабних структур.
- Якісні стрибки в моделях.
Маючи під рукою цю книгу, розробники об'єктноорієнтованих програм, системні аналітики та архітектори завжди будуть розташовувати набором рекомендацій з організації своєї праці, створення складних і корисних моделей предметних областей, перетворення їх у високоякісні, довготривалі програмні продукти.
Книга призначена для підвищення кваліфікації програмістів, які працюють, зокрема за методиками екстремального програмування та agile-розробки, а також може бути корисна студентам профільних спеціальностей.
Об авторе
Ерік Евансє засновником Domain Language — консультативної групи, яка допомагає різним фірмам будувати та розвивати програмні системи, тісно пов'язані з їх професійною діяльністю. Автор працював як архітектор і програміст над великими об'єктноорієнтованими системами в низці складних комерційних і технічних предметних областей, починаючи з 1980-х років. Він також займається підвищенням кваліфікації груп розробників в галузі екстремального програмування.
"Ця книга має стояти на полиці в будь-якого програміста, що мислить."
— Кент Бек (Kent Beck)
"Ерику вдалося схопити суть того, що досвідчені проектувальники програмних об'єктів завжди знали, але провалювали всі спроби донести це знання до своїх колег у суміжних зонах. Ми охоче ділимося окремими секретами... але ніколи не піклувалися про організацію і систематизацію принципів побудови логічної структури предметної зони. Ось чому ця книга так важлива."
— Кайл Браун (Kyle Brown), автор книги " Enterprise Java Programming with IBM WebSphere"
| Основні | |
|---|---|
| ISBN | 978-5-8459-1597-9, 978-0-321-12521-7 |
| Користувальницькі характеристики | |
| Автор | Ерік Еванс |
| Артикул | 978-5-8459-1597-9, 978-0-321-12521-7 |
| Рік видання / перевидання | 2016 |
| Видавництво | Вільямс |
| Вага книги | 710 г |
| Тип паперу | офсетний |
| Кількість сторінок | 448 |
| Виробник | Вільямс |
| Мова | російська |
| Обкладинка | м'який |
| Ілюстрації | з іл. |
- Ціна: 1 470 ₴
