Re[23]: Модуль - единица инкапсуляции
От: Schade Россия  
Дата: 29.10.04 09:07
Оценка: +2
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Именно модуль является единицей инкапсуляции, а не class. Когда Вы покупаете модуль у другого производителя, то на руки Вы получаете бинарный и символьный файлы. В символьном файле есть только экспортируемая этим модулем информация. Вся остальная информация РЕАЛЬНО инкапсулирована. С классом дела обстоят с точностью до наоборот. Вы не можете купить "скомпилированный" код класса, а должны купить его исходник (иначе просто смысла нет). А в исходнике все эти самые private Вы потом ручками можете подредактировать, так что липовая получается инкапсуляция, даже если и не будете редактировать, то все равно ПОСМОТРЕТЬ-то сможете.


Споем старую песню про компетенцию?
Те же .NETовские сборки точно так же могут распространяться как бинарники без исходного кода (да и Java, кажется, тоже), причем вся метаинформация (символьный файл, в терминологии оберона) находится там же. Кроме того, в отличие от убогих оберонов, и возможности использования этой мета-информации гораздо шире, и generic-и также находятся в бинарнике (начиная с 2.0).
Ах да, при желании можно декомпилятором заглянуть и ПОСМОТРЕТЬ. Так ведь и оберон компилирует в промежуточный код, нет никаких препятствий (кроме, собственно, отсутствия декомпилятора), чтобы тоже посмотреть. Так ведь это, как и отсутствие отладчика — не плюс, а показатель убогости передовой среды разработки для языка гиганта мысли. У меня вот, скажем, BMW нет — я же от этого лучше не становлюсь
... << RSDN@Home 1.1.4 @@subversion >>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.