TGStat
TGStat
Qidiruv uchun matnni kiriting
Ilg‘or kanal qidiruvi
  • flag Uzbek
    Sayt tili
    flag Russian flag English flag Uzbek
  • Saytga kirish
  • Katalog
    Kanal va guruhlar katalogi Hududiy to‘plamlar Tematik to‘plamlar Платные каналы Kanallar qidiruvi
    Kanal/guruh qo‘shish
  • Reytinglar
    Kanallar reytingi Guruhlar reytingi Postlar reytingi
    Brendlar va shaxslar reytingi
  • Analitika
  • Postlarda qidiruv
  • Telegram'ni kuzatish
  • Targ‘ibot
    Yandex Business orqali reklama TGStat Agency orqali kanallarda reklama TGStat.ru saytida reklama
Твой кролик писал

26 Aug 2024, 22:07

Telegram'da ochish Ulashish Shikoyat qilish

Системный Аналитик dan repost
🔖Паттерны проектирования и архитектурные паттерны

Паттерны проектирования
(ПП) — проверенные решения для часто встречающихся проблем в ПО. Шаблоны, которые применяются для повышения эффективности и качества кода

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


✳️ Отличие

Служат для разных уровней проектирования ПО:

🟢 ПП работают на уровне классов и объектов. Используются разработчиками при написании / рефакторинге кода
🔵 АП на более высоком уровне, описывают структуру всего продукта. Определяют на какие компоненты/модули будет делиться приложение и каким образом они взаимодействуют


✳️ Паттерны проектирования

Применение

〰 Улучшение читаемости и поддержки кода
〰 Уменьшение дублирования кода
〰 Помогают быстрее и эффективнее создавать код

Делятся на три вида:

🟢 Порождающие

Для создания экземпляра объекта или группы связанных объектов

➡️ Одиночка (Singleton): гарантирует существование только одного экземпляра определенного класса, который можно использовать из любой части программы
➡️ Фабрика (Factory): создает объекты через специальный метод или класс, скрывая детали их создания
➡️ Прототип (Prototype): объект сам создает свои копии
➡️ Ленивая инициализация (Lazy Initialization): создает объект по мере необходимости

🟢 Структурные

В основном связаны с композицией объектов, с тем, как сущности могут использовать друг друга

➡️ Декоратор (Decorator): динамически добавляет новые обязанности объектам
➡️ Фасад (Facade): предоставляет простой интерфейс к сложной системе, скрывая ее реализацию
➡️ Заместитель (Proxy): паттерн, похожий на «Фасад», но со специальным объектом-заместителем, который контролирует доступ к основному

🟢 Поведенческие

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

➡️ Наблюдатель (Observer): позволяет объектам следить за изменениями состояния другого объекта
➡️ Посредник (Mediator): организует слабые связи между объектами, чтобы снизить их зависимость друг от друга
➡️ Хранитель (Memento): помогает сохранить объект в каком-то состоянии с возможностью вернуться к нему в будущем


✳️ Архитектурные паттерны

Применение

〰 Определение общей структуры системы
〰 Обеспечение масштабируемости и надежности
〰 Упрощение взаимодействия между компонентами

Примеры


Более абстрактные:
➡️ Service-Oriented Architecture (SOA) (Сервис-ориентированная архитектура): система организована вокруг предоставления услуг (сервисов), которые могут использоваться различными приложениями
➡️ Layered Architecture (Слоистая архитектура): делит систему на уровни (слои), каждый из которых отвечает за конкретный функционал

Более конкретные:
➡️ Event-Driven Architecture (Событийно-ориентированная архитектура): компоненты системы взаимодействуют через передачу событий. Это один из способов реализации SOA
➡️ Микросервисы: разделяет приложение на небольшие, самостоятельные сервисы, которые могут разрабатываться и разворачиваться независимо. Является конкретным примером SOA
➡️ Клиент - сервер: делит систему на серверы, предоставляющие услуги, и клиенты, запрашивающие их
➡️ MVC (Model-View-Controller) (Модель-Вид-Контроллер): разделяет систему на три основные компоненты для улучшения тестирования и организации кода


✳️ Взаимосвязь GRASP с архитектурными паттернами

В объектно-ориентированных системах внутри архитектурных паттернов можно использовать паттерны GRASP
Например, паттерны для распределения обязанностей между классами и объектами (Creator, Information Expert)
Они помогут определить, как распределять обязанности


⭐️ Подборки материалов по этой и другим темам доступны в закрытом канале

#проектирование #архитектура

3 0 0
Katalog
Kanal va guruhlar katalogi Kanallar to‘plamlari Kanallar qidiruvi Kanal/guruh qo‘shish
Reytinglar
Telegram-kanallar reytingi Telegram-guruhlar reytingi Postlar reytingi Brendlar va shaxslar reytingi
API
Statistika API'si Postlar qidiruvi API'si API Callback
Kanallarimiz
@TGStat @TGStat_Chat @telepulse @TGStatAPI
O‘qish
Академия TGStat Telegram tadqiqoti 2019 Telegram tadqiqoti 2021 Telegram tadqiqoti 2023
Kontaktlar
Справочный центр Qo‘llab-quvvatlash Email Vakansiyalar
Har xil narsalar
Foydalanuvchi shartnomasi Maxfiylik siyosati Ommaviy oferta
Botlarimiz
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot