
Ориентированный на предметную область дизайн для занятых инженеров: 20%, которые вам действительно нужны
Введение Добро пожаловать, коллеги-инженеры! В круговороте современной разработки программного обеспечения, где модные слова разлетаются быстрее, чем вы успеете сказать «микросервисы», легко потеряться в шумихе. Сегодня мы собираемся прояснить одно из тех модных слов, которое выдержало испытание временем: Domain-Driven Design (DDD). Но не волнуйтесь, мы не будем погружаться в философский трактат; мы здесь, чтобы дать вам те 20%, которые сделают 80% разницы в ваших проектах. Что такое Domain-Driven Design? Domain-Driven Design — это методология, которая подчёркивает важность модели предметной области в разработке программного обеспечения....

Минимальные затраты и бюджет ошибок: реальная надежность или просто новые модные словечки для руководства?
Введение В мире DevOps и инженерии надёжности сайтов (SRE) термины «цели уровня обслуживания» (SLO) и «бюджеты ошибок» становятся всё более популярными. Но являются ли они просто новыми управленческими модными словами или предлагают реальную ценность для обеспечения надёжности наших систем? В этой статье мы подробно рассмотрим концепции SLO и бюджетов ошибок, изучим их практическое применение, преимущества и потенциальные подводные камни. Что такое SLO и бюджеты ошибок? Цели уровня обслуживания (SLO) SLO — это количественные целевые показатели, которые определяют желаемый уровень обслуживания системы....

Практические рисунка: обработка ошибок, контекст и параллелизм
Обработка ошибок в Go Подход к обработке ошибок в Go часто становится предметом споров среди разработчиков. Кому-то он нравится, кому-то нет, но одно можно сказать наверняка: он уникален. В Go ошибки являются значениями, и вы обрабатываете их с помощью шаблона if err != nil. Это может показаться многословным, но такой подход поощряет явную проверку и обработку ошибок. Шаблон if err != nil Рассмотрим простой пример: func readFile(filename string) ([]byte, error) { data, err := ioutil....

Корпоративный открытый исходный код: вклад или стратегический маркетинг?
Введение Открытый исходный код стал неотъемлемой частью современной сферы разработки программного обеспечения. Это уже не просто код; это культура, движение и для некоторых корпораций стратегический инструмент. Но что мотивирует компании участвовать в проектах с открытым исходным кодом? Истинное желание внести свой вклад в сообщество или расчётливый ход для улучшения имиджа бренда и присутствия на рынке? В этой статье мы углубимся в нюансы участия корпораций в проектах с открытым исходным кодом. Мы рассмотрим мотивы их участия, преимущества, которые они получают, и влияние на сообщество с открытым исходным кодом....

Feature Flag в производстве: шаблоны и анти-шаблоны для безопасных выпусков
Введение Флейты функций, также известные как тумблеры функций, являются мощным инструментом для управления выпуском новых функций в программном продукте. Они позволяют разработчикам динамически включать или отключать функции без изменения кодовой базы, что позволяет постепенно и безопасно внедрять новые возможности. Однако, как и любой мощный инструмент, флейты функций могут использоваться неправильно, что приводит к ряду антипаттернов, которые могут принести больше вреда, чем пользы. В этой статье мы рассмотрим лучшие практики и распространённые ошибки, связанные с использованием флейтов функций в продакшене....