-
Основна помилка з реалізацією event-driven архітектур
Основна помилка полягає у тому, що більшість розробників використовують події (events) не як повідомлення про зміни, що відбулися, а як команди. У такому випадку відбувається більш сильне зв’язування сервісів у системі, оскільки вони знають один про одний та починають оркеструвати роботу інших сервісів. Я бачив таку помилку у багатьох проєктах, в які підключався як розробник…
-
Не варто так панікувати
В Golang спільноті існує правило стосовно того, що від використання panic необхідно відмовитися, особливо розробникам бібліотек. В цьому є розумне зерно, але будь-яке правило – це евристика, що базується на популярних анти-паттернах та історіях невдач, а не на поміркованому рішенні конкретної задачі. Подібні правила – це застареження для людей, що не мають звички замислюватись над…
-
Інформаційні системи повинні основуватися на фактах
Про що більшість розробників (включно з архітекторами) зазвичай забувають, то це про те, що інформаційні системи мають базуватися на фактах, тобто незмінних подіях минулого. Інформація – це інсайди, висновки, інтерпретації з сукупності фактів, якими володіє інформаційна система. Замість розробки структури даних(фактів), більшість розробників одразу переходять до створення сутностей (втілень патерну Entity з DDD, або чогось…