У меня сложная система для проектирования.У меня есть два способа:
Сверху вниз : я разработаю множество интерфейсов и контрактов.После этого я реализую эти интерфейсы и напишу прототип для проверки проекта.
Вверх : я напишу код для запуска системы.После слов я буду извлекать интерфейсы и контракты из твердого кода.Дистиллированные интерфейсы и контракты - мой дизайн.Это правило " заставить его работать, сделать это правильно ".
Что лучше?На мой взгляд, я выберу снизу вверх.Поскольку нисходящий процесс очень сложен, никто не может спроектировать много интерфейсов на высоком абстрактном уровне, по крайней мере, для меня это сложно.Когда я пишу надежную реализацию для проверки первоначального дизайна, есть много неразумных вещей, которые заставляют меня перепроектировать с нуля.Хотя я использую «снизу вверх», я чувствую себя довольно «в безопасности», он может работать как минимум.