Основные принципы составления программы

В закладки

Разместил пособие

ledivestlank1982

Эксперт по предмету «Программирование»

Поделись лекцией и получи скидку 30% на платформе Автор24

Заполни поля и прикрепи лекцию. Мы вышлем промокод со скидкой тебе на почту

Твоя лекция отправлена! Жди скидку на почте. Есть еще материалы? Загрузи прямо сейчас

Загрузить еще лекции

Поделись лекцией и получи промокод на скидку 30% на платформе Автор24

Заполни поля и прикрепи лекцию. Мы вышлем промокод со скидкой тебе на почту

Твоя лекция отправлена! Жди скидку на почте. Есть еще материалы? Загрузи прямо сейчас

Источник: spravochnick.ru

Лучшие принципы разработки программ

Перевод статьи «What Are The Best Software Engineering Principles?».

Лучшие принципы разработки программ

ЭФФЕКТИВНАЯ ДОГОВОРНАЯ РАБОТА ОРГАНИЗАЦИИ В 2023 Г. СУДЕБНАЯ ПРАКТИКА ДР. СЕМИНАР 3 АВГУСТА 2023 Г

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

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

Давайте рассмотрим базовые рекомендации. По большей части это общие советы, применимые независимо от языка, на котором вы пишете.

Семь раз отмерь, один раз отрежь

Я думаю, это самое главное. Если из всей статьи вы запомните только одно правило, то пусть это будет именно этот принцип.

Принципы проектирования ПО

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

Читайте также:
Как выглядит программа камин

Разумеется, речь пойдет о принципах SOLID. Это известная аббревиатура, которую можно расшифровать следующим образом:

  • S — Single Responsibility (единственная ответственность),
  • O — Open Closed (открытость/закрытость),
  • L — Liskov substitution (принцип подстановки Барбары Лисков),
  • I — Interface Segregation (принцип разделения интерфейсов),
  • D — Dependency Inversion Principles (принцип инверсии зависимостей).

1_e_H81_bCIgypraK0M8eiTQ_1-1801-9e9b1f.png

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

Single Responsibility

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

Как САМОСТОЯТЕЛЬНО составить программу тренировок? (БЕЗ ВОДЫ)

Общий принцип можно сформулировать так: для каждого класса важно определить единственное назначение, а все ресурсы, которые нужны для имплементации, следует инкапсулировать в данный класс и подчинить только единственной задаче.

Open Closed

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

Таким образом, программные сущности должны быть открыты для расширения, однако закрыты для модификации.

Liskov substitution

Согласно данному принципу, программисту следует соблюдать наследственность так, чтобы логика программного приложения нигде не нарушалась. К примеру, если новый класс «X-Class» является дочерним для класса «A-Class», то новый класс должен повторять функции родителя таким образом, чтобы эти функции не меняли поведение родительского класса. В таком случае вы без проблем сможете применять объект X-Class вместо объекта A-Class, не нарушая при этом логики программного приложения.

Если кратко, то объекты в разрабатываемой программе должны быть заменяемыми на экземпляры их подтипов без изменения правильности выполнения программы.

Читайте также:
Текстовым процессором из перечисленных программ является word Microsoft office

Interface Segregation

По принципу разделения интерфейсов класс должен обладать способностью реализовывать множество интерфейсов. То есть код надо писать так, чтобы классу не надо было реализовывать функцию, которая не является важной для задач класса. Вывод тут прост: следует разделять свои интерфейсы на категории.

Или же: много интерфейсов, которые специально предназначены для клиентов, — это лучше, чем 1 интерфейс общего назначения.

Dependency Inversion Principles

Любой, кто когда-нибудь применял для создания приложения TDD, знает, насколько важно расщеплять код перед тестированием и моделированием. Иными словами, когда определенный класс «ex:Purchase» имеет зависимость от класса «Users», то установка пользовательских объектов должна инициировать снаружи класс «Purchase».

Таким образом, можно говорить о зависимости на абстракциях, а точнее, об отсутствии зависимости на что-либо конкретное.

Источник: otus.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru