-
Що таке Anti Corruption Layer (ACL)?
Anti Corruption Layer – це дуже корисна практика у розробці програмного забезпечення, яка вирішує проблему проникнення непотрібних деталей і відтак сплутанності коду. Найчастіше Anti Corruption Layer використовується у випадках, коли ми маємо справу з елементами системи, над якими не маємо влади, тобто т.з. 3rd-parties. Проблема Ми розробляємо певний значущий для бізнесу код. Нехай це буде […]
-
Проти захисних випадків
Захисний випадок (guard case) є популярним патерном у багатьох мовах програмування, як то: Ruby, Golang, Erlang та багато інших. Суть цього патерну полягає у додаванні перевірок безпосередньо перед виконанням основної роботи, аби негайно припинити виконання функції, якщо деякі умови порушені. Як виглядає захисний випадок: Чи доцільно у цьому випадку повертати 0 – це вже інше […]
-
Відповідність функцій принципу єдиної відповідальності
Якщо вивчати класиків, а саме Роберта Мартіна, то він сам плутається у тому, що таке принцип єдиної відповідальності (SRP – Single Responsibility Principle), тому я просто вкраду стару назву і вкладу у неї новий сенс. У цій публікації я торкнусь лише функцій, проте я вважаю функції основною будівельною одиницею і дуже доброю абстракцією в умовно […]