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