Архітектура

1 хв читання
На самому початку я сприймав програмування як процес «просто змусити речі працювати». Сьогодні це невід'ємна частина мене як інженера.
Зазвичай, коли хтось запитує мене, який я «програміст», я завжди відповідаю, що я хлопець типу «архітектура». Це те, над чим я завжди роздумую і в чому намагаюся ставати кращим. Мій інтерес виникає через нетерпимість до неоднозначності.
Найбільша зміна для мене за ці роки полягає в тому, що я більше не вважаю кодову базу просто набором інструкцій. Моя мета — відійти від неявних припущень або «інтуїтивних» відчуттів до стабільних і логічних правил (того, що я вважаю математичними гарантіями для системи).
Основна мотивація для написання нотаток про архітектуру програмного забезпечення майже завжди є досить особистою — я стаю кращим у чомусь, коли намагаюся пояснити це «щось».
Ви можете знайти мої нотатки, пов'язані з «Архітектурою», у розділі «Пов'язані згадки» нижче.

Пов'язані згадки6

Помилки, які ми моделюємо неправильно

Чому повернення null, кидання ексепшнів або загортання всього в Result — це не просто питання стилю, а контракт, який ви визначаєте.

Семантична типізація, яку ми ігноруємо

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

Іменування пакетів, про яке ви не дбаєте (але повинні)

Чому розробники часто ігнорують іменування пакетів? Розкрийте його вирішальну роль у підтримці коду та дізнайтеся, як мислення за межами звичайних папок може призвести до чіткіших обов'язків, легшої навігації та більш надійної архітектури програмного забезпечення.

Глибоке занурення в пошук правильного балансу між DDD, Clean та Hexagonal архітектурами

Пошук правильної архітектури може бути справжньою головоломкою. Пориньте в практичні ідеї щодо балансування принципів DDD, Clean та Hexagonal, щоб створювати надійні, підтримувані застосунки без зайвої складності. Дізнайтеся, як змусити ці теорії працювати на вас.

ViewModel — це не місце для вашої логіки

Чи не забагато на себе беруть ваші ViewModels? Досліджуємо правильні межі відповідальності ViewModel і те, чому фокус виключно на стейті є критичним для здорової та масштабованої архітектури.

Extension-Oriented Design (Проєктування орієнтоване на розширення)

Відкрийте для себе силу розширено-орієнтованого проєктування в Kotlin. Подивіться, як цей елегантний підхід оптимізує організацію коду, вдосконалює існуючі класи та пропонує рішення для поширених викликів розробки.

Непов'язані згадки0

Непов'язаних згадок не знайдено