Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул. Алексей Сергеевич Лот

Читать онлайн.
Название Полезные конспекты книг и авторские заметки по информационным технологиям. Без формул
Автор произведения Алексей Сергеевич Лот
Жанр
Серия
Издательство
Год выпуска 0
isbn 9785006032576



Скачать книгу

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

      Рост числа переменных экземпляров свидетельствует о необходимости выделения класса.

      Рефакторинг может удлинить программу.

      Приватные методы, действие которых распространяется на небольшое подмножество класса, – признак возможности усовершенствований.

      Структурирование проводится с учетом изменений.

      Время, необходимое для понимания класса, падает почти до нуля.

      Вероятность того, что одна из функций нарушит работу другой, ничтожно мала.

      Принцип открытости-закрытости: классы должны быть открыты для расширений, но закрыты для модификации.

      Структура системы должна быть такой, чтобы обновление системы создавало как можно меньше проблем.

      В идеале новая функциональность должна реализовываться расширением системы, а не внесением изменений в существующий код.

      С помощью интерфейсов и абстрактных классов класс изолируется от конкретных подробностей.

      Принцип обращения зависимостей: классы системы должны зависеть от абстракций, а не от конкретных подробностей.

      В программных системах фаза инициализации, в которой конструируются объекты приложения и «склеиваются» основные зависимости, должна отделяться от логики времени выполнения, получающей управление после ее завершения.

      Инициализация – область ответственности.

      Код инициализации пишется системно и отделен от логики времени выполнения.

      Удобные идиомы не ведут к нарушению модульности.

      Приложение ничего не знает о main или о процессе конструирования.

      Все аспекты конструирования помещаются в main или в модули, вызываемые из main.

      Если момент создания объекта должен определяться приложением, то использовать паттерн «Фабрика».

      Вся информация о конструировании хранится на стороне main.

      Приложение изолировано от подробностей построения.

      Использовать внедрение зависимостей Dependency Injection или обращение контроля Inversion of Control для отделения конструирования от использования.

      Итеративная разработка – сегодня реализуем текущие потребности, а завтра перерабатываем и расширяем систему для реализации новых потребностей.

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

      Компонент-сущность (entity bean) – представление реляционных данных в памяти.

      Применять АОП – модульные конструкции, называемые аспектами, определяют, в каких точках системы поведение должно меняться некоторым последовательным образом в соответствии с потребностями определенной области ответственности (изменения вносит инфраструктура без необходимости вмешательства в целевой код).

      Посредники (proxies) хорошо подходят для простых ситуаций – вызова методов отдельных объектов или классов.

      Использовать POJO-объекты.

      DAO –