В самом начале, при зарождении программирования как профессии, программисты создавали программы “как получится”. Просто садились и писали исходный текст - а там как кривая выведет.
Однако программы становились всё сложнее, процесс их разработки надо было как-то упорядочивать, проектировать и т.п. Так появилась каскадная, или водопадная модель, которая включала в себя этапы разработки программы: анализ, планирование (проектирование), кодирование и внедрение. Схематично изобразить эту модель можно так:
То есть эти этапы можно было проходить только сверху вниз и никак иначе (водопад вверх не течёт).
Водопадная модель имеет множество недостатков. В этой модели подразумевается, что каждый шаг выполняется без ошибок или с небольшим их количеством.
Однако в жизни так не бывает. Каждый этап вносил свои ошибки, их количество от этапа к этапу росло, делая всю программу одной большой ошибкой. Изменение любого предыдущего этапа автоматически подразумевало изменение всех последующих этапов, делая процесс разработки очень трудозатратным и дорогим.
К тому же в ходе разработки заказчик мог изменить свои требования, а по окончании этапа планирования уже сложно было вновь к нему вернуться. Оказывалось в итоге, что к тому счастливому дню, когда программа была написана, она уже просто устаревала.
И если при создании простых программ эти недостатки не оказывали существенного влияния ни на сроки, ни на стоимость разработки, то в случае со сложными программами можно было просто утонуть в этом море ошибок и переделок, и так и не закончить разработку.
Было понятно, что эту модель надо менять… И однажды у кого-то из тех, кто это понимал, зародилась идея про...
>>> Объектно-ориентированное программирование >>>
Комментариев нет:
Отправить комментарий