Реализация шаблона поиска событий в приложении Go с помощью EventStoreDB

Реализация шаблона поиска событий в приложении Go с помощью EventStoreDB

Введение в Event Sourcing Event Sourcing — это шаблон проектирования, который набирает популярность в мире разработки программного обеспечения, и не зря. Он позволяет фиксировать изменения состояния приложения в виде последовательности событий, а не просто хранить текущее состояние. Этот подход обеспечивает полный аудит всех изменений, упрощая отладку, аудит и даже возврат к предыдущим состояниям при необходимости. Что такое EventStoreDB? EventStoreDB — это база данных, предназначенная для хранения, обработки и доставки изменений состояния приложений, известных как события....

14 января 2025 14:00 · 4 минуты · 787 слов · Maxim Zhirnov
Миф об объективном Код-ревью: признание предвзятости в экспертных оценках

Миф об объективном Код-ревью: признание предвзятости в экспертных оценках

Неуловимый поиск объективности при проверке кода В мире разработки программного обеспечения проверки кода часто преподносятся как священный ритуал, оплот качества и защита от гнусных проявлений плохого кода. Однако под поверхностью этого, казалось бы, объективного процесса скрывается сложная паутина предубеждений, субъективных суждений и человеческих ошибок. Давайте углубимся в миф об объективной проверке кода и выясним, почему, несмотря на наши лучшие намерения, проверки кода по своей сути субъективны. Человеческий фактор: где умирает объективность Проверки кода, особенно те, которые проводятся через запросы на включение, предполагают, что разработчик отправляет свой код на проверку коллеге....

14 января 2025 06:00 · 4 минуты · 708 слов · Maxim Zhirnov
Ошибка 'Всегда использовать Monorepo': Когда выигрывают несколько репозиториев

Ошибка 'Всегда использовать Monorepo': Когда выигрывают несколько репозиториев

Мания монорепозиториев: критический взгляд В мире разработки программного обеспечения дебаты между сторонниками монорепозиториев и мультирепозиториев ведутся уже давно. Хотя монорепозитории приобрели значительную популярность, особенно среди таких технологических гигантов, как Microsoft, Facebook и Twitter, идея о том, что они всегда являются лучшим решением, ошибочна. Давайте углубимся в нюансы обоих подходов и выясним, почему во многих случаях использование нескольких репозиториев может быть более предпочтительным. Понимание монорепозиториев и мультирепозиториев Прежде чем мы перейдём к деталям, давайте определим, о чём идёт речь:...

13 января 2025 06:00 · 4 минуты · 844 слова · Maxim Zhirnov
Разработка плагинов OBS Studio на C++: Пошаговое руководство

Разработка плагинов OBS Studio на C++: Пошаговое руководство

Введение в разработку плагинов для OBS Studio Если вы стример, видеоблогер или просто любите возиться с программным обеспечением для потоковой передачи видео, вы, вероятно, слышали об OBS Studio. Одна из самых мощных функций OBS — возможность расширения с помощью плагинов. В этой статье мы погрузимся в мир разработки плагинов для OBS Studio на C++, путешествие, которое одновременно является сложным и полезным. Почему именно C++? C++ — это родной язык для разработки плагинов OBS, предлагающий прямой доступ ко всем функциям и возможностям OBS Studio....

12 января 2025 14:00 · 4 минуты · 802 слова · Maxim Zhirnov
Почему Ваш код не такой модульный, как Вы думаете

Почему Ваш код не такой модульный, как Вы думаете

Иллюзия модульности В мире разработки программного обеспечения модульность часто преподносится как Святой Грааль организации кода. Она обещает утопию, где код аккуратно разделён на части, пригоден для многократного использования и обслуживания. Однако реальность часто далека от этого идеала. Если вы думаете, что ваш код модульный, вас может ждать сюрприз. Что такое модульность? Прежде чем мы углубимся в то, почему ваш код может оказаться не таким модульным, как вы думаете, давайте определим, что же такое модульность на самом деле....

12 января 2025 06:00 · 4 минуты · 825 слов · Maxim Zhirnov