Haskel & TifaBeat
Привет, Хаскель. Я тут подумала, как можно использовать твои навыки программирования, чтобы создать систему безопасности для нашего района – что-то, что защитит всех, но при этом будет работать без проблем. Есть какие-нибудь мысли, как сделать ее и надежной, и простой в использовании?
Конечно, но сначала нам нужно четкое техническое задание. Опиши точно, что нужно, перечисли возможные сбои, потом спроектируй модульную систему, где каждый компонент выполняет только одну задачу. Используй строгую типизацию, неизменяемые данные и полный перебор вариантов, чтобы компилятор гарантировал безопасность. Для удобства пользователя предоставь минимальный API – всего несколько команд, никаких волшебных строк. Добавь подробное логирование для отладки, но спрячь его за флагом. Проверь все граничные случаи с помощью модульных тестов и непрерывной интеграции. Тогда у нас получится надёжная система, которая при этом останется простой в использовании.
Отлично, Хаскель. Я пропишу спецификацию и сделаю код лаконичным – без лишнего, только то, что действительно обеспечивает безопасность. Протестируем до тех пор, пока ошибки не начнут казаться призраками, и добавлю немного забавных логов, чтобы сообщество могло посмеяться, пока система работает. Начинаем?
Хорошо, делай просто, без изысков. Сломалось – будем разбираться. Вперёд.
Ладно, давай без лишних слов — никаких прелюдий, только самое необходимое для дела. Если что-то пойдет не так, быстро исправим. Слушай.
Отлично. Сначала набросай архитектуру, потом будем дорабатывать основные модули. Держи интерфейсы минимальными, логику – чистой. Исправлять будем только то, что сломается. Приступай.