🕵️
Введение в паттерны
  • Введение в паттерны
  • Паттерны
    • Оглавление
    • Порождающие паттерны
      • Фабричный метод
        • Реализации на С++
        • Реализации на Kotlin
        • Возможные реализации для решения конкретных задач на С++
      • Абстрактная фабрика
        • Реализации на С++
        • Реализации на Kotlin
        • Возможные реализации для решения конкретных задач на С++
      • Прототип
        • Реализации на С++
        • Реализации на Kotlin
        • Реализации на Java
        • Возможные реализации для решения конкретных задач на С++
      • Строитель
        • Реализации на С++
        • Реализации на Kotlin
      • Одиночка
        • Реализации на C++
        • Реализации на Kotlin
        • Возможные реализации для решения конкретных задач на С++
      • Пул объектов
        • Реализации на С++
    • Структурные паттерны
      • Адаптер
        • Реализации на С++
        • Реализации на Kotlin
        • Возможные реализации для решения конкретных задач
      • Декоратор
        • Реализации на С++
        • Реализации на Kotlin
      • Компоновщик
        • Реализации на С++
      • Мост
        • Реализации на С++
      • Заместитель
        • Реализации на С++
        • Реализации на Kotlin
      • Фасад
        • Реализации на С++
      • Приспособленец
        • Реализации на С++
    • Поведенческие паттерны
      • Стратегия
        • Реализации на С++
        • Реализации на Kotlin
      • Команда
        • Реализации на С++
        • Реализации на Kotlin
      • Цепочка обязанностей
        • Реализации на С++
        • Реализации на Kotlin
      • Подписчик-издатель
        • Реализации на С++
        • Реализации на Kotlin
      • Посетитель
        • Реализации на С++
        • Возможные реализации для решения конкретных задач
      • Посредник
        • Реализации на С++
        • Реализации на Kotlin
      • Шаблонный метод
        • Реализации на С++
      • Опекун
        • Реализации на С++
      • Итератор
        • Реализации на С++
        • Реализации на Kotlin
      • Свойство
        • Реализации на С++
        • Возможные реализации для решения конкретных задач
  • Введение в идиомы
  • Идиомы
    • Оглавление
    • RAII
    • Type erasure
      • Контейнеры с type erasure
    • CRTP
    • Статический полиморфизм
    • Shrink to fit
    • Proxy
    • Erase remove
    • Decltype (auto)
    • Copy and swap
    • Safe bool
    • Scope guard
    • Addressof
Powered by GitBook
On this page
  • Что такое идиомы?
  • Основная идея
  • Преимущества
  • Недостатки

Was this helpful?

Введение в идиомы

PreviousВозможные реализации для решения конкретных задачNextОглавление

Last updated 1 year ago

Was this helpful?

Что такое идиомы?

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

Разница между идиомами и :

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

Основная идея

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

Преимущества

  • Улучшение читаемости кода. Идиомы предоставляют стандартные шаблоны и конструкции, которые повышают читаемость кода. Это делает его более понятным и легким для сопровождения другими разработчиками.

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

  • Улучшение структуры и модульности.Идиомы помогают организовать код в модули и классы, что способствует его логическому разделению и улучшает структуру и модульность программы. Это делает код более гибким, легко расширяемым и поддерживаемым.

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

Недостатки

  • Увеличение количества и сложности кода. Использование идиом может привести к увеличению объема кода и его сложности. Некоторые идиомы требуют добавления дополнительных классов, методов или шаблонов, что может усложнить код и сделать его более громоздким.

паттернами