Кому и когда помогала эта онтологическая деталь (допустим, что определены эти подходы точно), и не придумали ли эти «подходы» те, кто программировать не программирует, а чем-то заняться для виду нужно? (Вполне возможно, что это и идёт из какой-нибудь вполне приличной (и, в дополнение, старой — времён появления процедур) работы, где, однако, и слова, и приоритеты были другие, так что оригинал ни при чём.)
См., нпр.,
П. Грогоно, Программирование на языке Паскаль, М.:Мир, 1982, С. 294. Далее автор в качестве примера приводит поэтапную разработку программы генератора перекрестных ссылок. Т.о. можно видеть, что это очень полезная деталь, хотя бы для учебного процесса. Указанная книга не первоисточник, и кто первый предложил эти термины, мне неизвестно. Список литературы, в том числе и более новой, можно найти в англо-Википедии, см.
Top-down and bottom-up design. Помнится, при появлении ОО-Паскаля Turbo Pascal 5.0 утверждалось, что ООП предполагает последовательную конкретизацию: базовый класс - потомки.
полагаю, эти подходы имеют отношение не только и не сколько к программированию, но к проектированию (design) в целом.
В упомянутой вики-статье это утверждается. Очень интересны мнения, высказанные на странице обсуждения этой статьи.
-- Вс дек 21, 2014 22:37:59 --Ну вот это как-то язык не поднимается назвать «парадигмой».
Да. Парадигмы это, нпр., ООП. А top-down и bottom-up - это только методы разработки. Глядя на конечный исходный код программы, обычно невозможно сказать, как ее делали - сверху или снизу.