TGViewer
Книги для программистов Книги для программистов @bfbook · 54K subscribers
Post #5330 8.46K
📚 Software Design for Flexibility: How to Avoid Programming Yourself into a Corner
✍️ Авторы: Chris Hanson, Gerald Jay Sussman (2021)

Стратегии построения крупных систем, которые можно легко адаптировать к новым задачам с минимальными изменениями в коде.

Ограниченные сроки часто заставляют программистов писать код, который хорошо работает только для узкой задачи, не оставляя возможностей для развития. Но лучшие системы - это те, которые можно эволюционировать: их можно адаптировать к новым ситуациям за счёт добавления кода, а не изменения уже существующего. Авторы описывают техники, которые они считают эффективными - опираясь на более чем 100 лет совокупного опыта программирования, - чтобы помочь разработчикам избежать ситуаций, когда система заходит в тупик и перестаёт быть гибкой.

Авторы рассматривают способы повышения гибкости систем за счёт:

• Организации систем через комбинаторы - создание модульных компонентов, которые можно свободно комбинировать, начиная от маленьких функций и заканчивая целыми арифметическими системами, используя стандартизированные интерфейсы.
• Обогащения данных независимыми слоями аннотаций, например, добавлением единиц измерения или информации о происхождении данных.
• Объединения независимых фрагментов неполной информации с помощью механизмов унификации или распространения данных.
• Разделения управляющей логики и предметной области через использование доменных моделей, правил, сопоставления с образцом (pattern matching), систем распространения данных и обратного поиска с учётом зависимостей.
• Расширения возможностей языка программирования с помощью динамически расширяемых интерпретаторов и средств выполнения кода.

🔗 Скачать

📲 Мы в MAX

👉 @bfbook
  • 👍 6
  • ❤ 3
More from @bfbook
  1. Sep 28, 2026📚 Рефакторинг на максималках (2025) ✍️ Автор: Александр Беспоясов Ты тоже откладывал рефа…
  2. Sep 22, 2026📚 Тестирование программного обеспечения: базовый курс, 3-е издание (2025) ✍️ Автор: Свято…
  3. Sep 17, 2026📚 Какие книги должен прочитать каждый Java-программист? 🔹1. Java. Библиотека профессиона…
  4. Sep 15, 2026📚 An Elegant Puzzle: Systems of Engineering Management ✍️ Авторы: Will Larson (2019) Есть…
  5. Sep 10, 2026📚 Pwning OWASP Juice Shop (2025) ✍️ Автор: Björn Kimminich Это официальный гайд по взлому…
  6. Sep 6, 2026📚 Programming Persistent Memory: A Comprehensive Guide for Developers (2020) ✍️ Автор: St…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →