Автор Тема: Параметрический полиморфизм и Оберон.  (Прочитано 16279 раз)

Илья Ермаков

  • Full Member
  • ***
  • Сообщений: 177
    • Просмотр профиля
    • OberonCore
Re:Параметрический полиморфизм и Оберон.
« Ответ #15 : Апрель 01, 2011, 06:16:00 pm »
копипаст -- зло, как поддерживать в актуальном состоянии изменения во всех скопипастенных местах?

Вот тут мы и подходим к ключевому моменту - А ЗАЧЕМ? И вот здесь критерий отличия компонента в смысле компонентного программирования от элемента разработки.
Зачем Вам синхронно менять какой-нибудь алгоритм сортировки или поиска, или ещё чего-нибудь? Разумеется, мы предполагаем, что он был правилен (такие алгоритмы просто недопустимо писать неправильно).
Вы можете захотеть поменять его в одном из приложений-компонентов, под требования этого компонента. И он тут же перестанет быть таким же, как в других местах.

Это такая же разница, как между заменой электронного модуля на более совершенный или между идеей заменить все микросхемы в модуле, потому что появились более совершенные - второе просто не придёт в голову, да и невозможно.

Более того, такая невозможность - благо, если некоторый общего назначения алгоритм работает, зачем моей программе зависеть от каких-то его дальнейших изменений-усовершествований, мало ли.