Содержание
12 отношения: SOLID (объектно-ориентированное программирование), Принцип единственной ответственности, Полиморфизм (информатика), Объектно-ориентированное программирование, Абстрактный класс, Абстракция данных, Наследование (программирование), Мартин, Роберт, Модульное тестирование, Мейер, Бертран, Инкапсуляция (программирование), Ларман, Крэг.
- Принципы программирования
- Проектирование программного обеспечения
- Теория типов
SOLID (объектно-ориентированное программирование)
SOLID (сокр. от и dependency inversion) в программировании — мнемонический акроним, введённый Майклом Фэзерсом (Michael Feathers) для первых пяти принципов, названных Робертом Мартином (прим.
Посмотреть Принцип открытости/закрытости и SOLID (объектно-ориентированное программирование)
Принцип единственной ответственности
Классу позволительно слишком много. Вероятнее всего при внесении в его код изменений, возникнут трудности. Причиной тому станет нарушение SRP. В ООП принцип единственной ответственности (The Single Responsibility Principle, SRP) обозначает, что каждый объект должен иметь одну ответственность и эта ответственность должна быть полностью инкапсулирована в класс.
Посмотреть Принцип открытости/закрытости и Принцип единственной ответственности
Полиморфизм (информатика)
В языках программирования и теории типов полиморфизмом называется способность функции обрабатывать данные разных типов.
Посмотреть Принцип открытости/закрытости и Полиморфизм (информатика)
Объектно-ориентированное программирование
Объе́ктно-ориенти́рованное программи́рование (ООП) — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определённого класса, а классы образуют иерархию наследования.
Посмотреть Принцип открытости/закрытости и Объектно-ориентированное программирование
Абстрактный класс
Абстрактный класс в объектно-ориентированном программировании — базовый класс, который не предполагает создания экземпляров.
Посмотреть Принцип открытости/закрытости и Абстрактный класс
Абстракция данных
Абстра́кция в объектно-ориентированном программировании — это использование только тех характеристик объекта, которые с достаточной точностью представляют его в данной системе.
Посмотреть Принцип открытости/закрытости и Абстракция данных
Наследование (программирование)
Наследование (англ. inheritance) — концепция объектно-ориентированного программирования, согласно которой абстрактный тип данных может наследовать данные и функциональность некоторого существующего типа, способствуя повторному использованию компонентов программного обеспечения.
Посмотреть Принцип открытости/закрытости и Наследование (программирование)
Мартин, Роберт
Роберт Сесил Мартин (Robert Cecil Martin), также известный как Дядя Боб (Uncle Bob) — консультант и автор в области разработки ПО.
Посмотреть Принцип открытости/закрытости и Мартин, Роберт
Модульное тестирование
Единичное тестирование, или модульное тестирование (unit testing) — процесс в программировании, позволяющий проверить на корректность единицы исходного кода, наборы из одного или более программных модулей вместе с соответствующими управляющими данными, процедурами использования и обработки.
Посмотреть Принцип открытости/закрытости и Модульное тестирование
Мейер, Бертран
Бертран Мейер Бертран Мейер (род. 21 ноября 1950 года) — создатель языка программирования Эйфель.
Посмотреть Принцип открытости/закрытости и Мейер, Бертран
Инкапсуляция (программирование)
Инкапсуляция (encapsulation, от in capsula) — в информатике упаковка данных и функций в единый компонент.
Посмотреть Принцип открытости/закрытости и Инкапсуляция (программирование)
Ларман, Крэг
Крэг Ларман — канадский ученый в области компьютерных наук, специализирующийся в итеративной разработке, гибкой методологии разработки, объектно-ориентированном анализе, объектно-ориентированном дизайне.
Посмотреть Принцип открытости/закрытости и Ларман, Крэг
См. также
Принципы программирования
- CQRS
- Don’t repeat yourself
- GRASP
- KISS (принцип)
- YAGNI
- Закон Деметры
- Зацепление (программирование)
- Инверсия управления
- Инкапсуляция (программирование)
- Повторное использование кода
- Правило наименьшего удивления
- Принцип единственной ответственности
- Принцип инверсии зависимостей
- Принцип открытости/закрытости
- Принцип подстановки Лисков
- Принцип разделения интерфейса
- Разделение ответственности
- Связность (программирование)
- Сокрытие (программирование)
- Чем хуже, тем лучше
- Чёрный ящик
Проектирование программного обеспечения
- CRC-карта
- GRASP
- Бумажное прототипирование
- Декомпозиция
- Закон Конвея
- Компилятор компиляторов
- Контрактное программирование
- Метамодель (информатика)
- Объектно-ориентированное проектирование
- Предметно-ориентированное проектирование
- Принцип единственной ответственности
- Принцип открытости/закрытости
- Принцип разделения интерфейса
- Проектирование программного обеспечения
- Соглашения по конфигурации
- Функциональная спецификация
- Чем хуже, тем лучше
Теория типов
- Static cast
- Void
- Абстрактный тип данных
- Алгебраический тип данных
- Вывод типов
- Высший тип
- Гомотопическая теория типов
- Зависимый тип
- Категориальная грамматика
- Класс типов
- Ковариантность и контравариантность (программирование)
- Конструктор типов
- Кортеж (информатика)
- Лямбда-куб
- Математическая структура
- Обобщённый алгебраический тип данных
- Параметрический полиморфизм
- Переменная (программирование)
- Переменная типа
- Перечисляемый тип
- Полиморфизм (информатика)
- Приведение типа
- Принцип открытости/закрытости
- Принцип подстановки Лисков
- Просто типизированное лямбда-исчисление
- Прототипное программирование
- Род (теория типов)
- Система F
- Система типов
- Система типов Хиндли — Милнера
- Сложный тип
- Соответствие Карри — Ховарда
- Теория типов
- Тип, гарантирующий уникальность
- Тип-произведение
- Тип-сумма
- Типаж (абстрактный тип)
- Типизированное лямбда-исчисление
- Типобезопасность
- Упорядоченная пара
- Утиная типизация
- Функциональный тип
- Частный случай формулы