TGViewer
Channel Public Channel
Programming & QA

Programming & QA

@smartiqa

Smartiqa - платформа о технологиях, программировании и тестировании ПО.

Сайт: https://smartiqa.ru
Канал YouTube: https://www.youtube.com/channel/UCk_7MNLSD0S2fxi0EQ-V6lQ
Vkontakte: https://vk.com/smartiqa
Vkontakte Python: https://vk.com/smartiqa_python
Subscribers
323
Photos
300
Videos
0
Links
178

Showing posts older than #476 · Back to latest

Older Posts 18 shown
Post #475 232
Вопрос №116

Тема: Основы программирования. Проектирование.

Q: Что такое Бритва Оккама?

A: Не нужно множить сущности без необходимости.
Post #474 230
  • 👍 4
Post #473 224
  • 👍 2
Post #472 236
Вопрос №115

Тема: Основы программирования. Проектирование.

Q: Что такое Принцип SOLID? На какие под-принципы его можно разделить?

A: Делится на 5 принципов.

1) S (Single-responsibility principle): каждый класс/метод должен отвечать только за что-то одно.

2) O (Open–closed principle): Программные объекты должны быть открыты для расширения, но закрыты для модификации. Пример - наследование.

3) L (Liskov substitution principle): Можно заменить использование класса-родителя его потомком и в работе программы ничего не изменится.

4) I (Interface segregation principle): Объекты не должны зависеть от интерфейсов, которые они используют. То есть если мы создаем интерфейс, то не нужно делать обязательными методы, которые пригодятся только некоторым объектам, использующим этот интерфейс. Например интерфейс Animal с методами eat() и fly() - не все животные могут летать.

5) D (Dependency inversion principle): Объекты программы должны иметь слабую связность с другими объектами. Нужно полагаться на абстракции, а не на конкретные реализации. Например, можно сделать абстракцию над Datetime() классом. И тогда при смене поставщика даты, нужно будет внести изменения только внутри этой абстракции.
  • 👍 1
Post #470 178
Вопрос №113

Тема: Основы программирования. Проектирование.

Q: Что такое Принцип Big Design Up Front?

A: Переводится как "Глобальное проектирование прежде всего". Сначала проектируем, и только потом приступаем к реализации.
Post #468 213
Вопрос №112

Тема: Основы программирования. Проектирование.

Q: Что такое Принцип KISS?

A: Расшифровывается как Keep It Simple, Stupid (Будь проще). Чем проще, тем надежнее.
Post #465 196
Вопрос №111

Тема: Основы программирования. Проектирование.

Q: Что такое Принцип DRY?

A: Расшифровывается как Don't Repeat Yourself (Не повторяйтесь). Нужно избегать дублирования кода.
Post #464 214
  • 👍 4
Post #463 242
  • 👍 2
Post #462 248
Вопрос №110

110
Тема: Основы программирования. Проектирование.

Q: Что такое Принцип YAGNI?

A: Расшифровывается как You Aren't Gonna Need It (Вам это не понадобится). Пишем код, только если уверены, что он нужен. При рефакторинге не боимся удалять ненужные методы.
Post #460 253
Вопрос №109

Тема: Основы программирования. Проектирование.

Q: Расскажите про паттерн проектирования Abstract Factory (Абстрактная фабрика).

A: В приведенном примере метод create_form_with_buttons(factory) создает объекты классов Form и Button на основе переданной фабрики (LinuxFactory или WindowsFactory). Класс AbstractFactory определяет фабричные методы create_form() и create_button() и передает их по наследству классам LinuxFactory и WindowsFactory.
  • 🔥 1
Post #457 217
Вопрос №108

Тема: Основы программирования. Проектирование.

Q: Расскажите про паттерн проектирования Observer (Наблюдатель).

A: Наблюдаем за списком объектов. При возникновении события оповещаем каждый их них.
Post #456 199
  • 🔥 2
  • 👍 1
Older posts →
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 →