Why Your Code Isn't as Reliable as You Think It Is

Why Your Code Isn't as Reliable as You Think It Is

Remember that smug feeling you get when your code compiles on the first try? That warm, fuzzy sensation when all your tests pass green? Well, buckle up, because I’m about to burst that bubble faster than a soap opera plot twist. Your code isn’t nearly as reliable as you think it is, and frankly, neither is mine. Let’s start with a sobering reality check: on February 25, 1991, a tiny rounding error—we’re talking 0....

August 20, 2025 · 9 min · 1839 words · Maxim Zhirnov
Почему Ваш код не так надежен, как Вы думаете

Почему Ваш код не так надежен, как Вы думаете

Помните то самодовольное чувство, когда ваш код компилируется с первой попытки? То приятное ощущение, когда все тесты проходят успешно? Что ж, приготовьтесь, потому что я собираюсь разрушить этот пузырь быстрее, чем сюжетный поворот в мыльной опере. Ваш код не так надёжен, как вам кажется, и, честно говоря, мой тоже. Давайте начнём с отрезвляющей проверки реальности: 25 февраля 1991 года небольшая ошибка округления — речь идёт о потере точности на 0,000000095 секунды каждые десятые доли секунды — накопилась за 100 часов и привела к тому, что ракета «Пэтриот» не смогла перехватить ракету «Скад»....

August 20, 2025 · 6 min · 1090 words · Maxim Zhirnov
Effective Use of Design by Contract in Software Development

Effective Use of Design by Contract in Software Development

What is Design by Contract? Imagine you’re at a restaurant, and you order a meal. You expect the food to be prepared according to your specifications (no nuts, extra sauce), and you trust that the chef will deliver. If the chef fails to meet these expectations, you might be in for a surprise, and not the good kind. This scenario is eerily similar to how software components interact with each other, and that’s where Design by Contract (DbC) comes into play....

October 15, 2024 · 5 min · 944 words · Maxim Zhirnov
Эффективное использование дизайна по контракту при разработке программного обеспечения

Эффективное использование дизайна по контракту при разработке программного обеспечения

Что такое «Дизайн по контракту»? Представьте, что вы в ресторане и заказываете блюдо. Вы ожидаете, что еда будет приготовлена согласно вашим требованиям (без орехов, с дополнительным соусом), и доверяете повару. Если повар не выполнит ваши ожидания, вас может ждать неприятный сюрприз. Этот сценарий очень похож на то, как взаимодействуют программные компоненты, и здесь вступает в игру «Дизайн по контракту» (DbC). Созданный Бертраном Мейером в 1980-х годах, DbC — это подход к проектированию программного обеспечения, который фокусируется на определении контрактов, описывающих взаимодействие между компонентами....

October 15, 2024 · 4 min · 721 words · Maxim Zhirnov