|
|
ru.website- RU.WEBSITE ------------------------------------------------------------------- From : Alex Kharitonov 2:5038/7.17 20 Jan 2002 00:18:06 To : Vinokurov Andrey Subject : Perl OOP??? -------------------------------------------------------------------------------- 17 Янв 02 18:28, Vinokurov Andrey wrote to All: VA> Еще один важный момент - _подлинная_ инкапсуляция предполагает VA> сокрытие данных. Этого перл, естественно, тоже не умеет - данные VA> объекта доступны всегда: Если сделать класс на основе ссылки на процедуру, то никто снаружи ничего не увидит ;-) VA> Я уж не VA> говорю о об отсутсвии таких "вкусностей", как перегрузка операторов. ;-) Есть это. VA> аналог перлового массива @ISA и т.д.. Т.е. "объектность перла" - это VA> типичный образчик не встроенной, а "приклепанной" объектности. Что довольно логично - ведь первоначально Perl не был объектно-ориентированным языком. VA> Еще раз повторю, язык можно считать объектным не тогда, когда на нем VA> можно программировать в "объектном стиле" (это позволяют почти все VA> языки - в той или иной степени), а только тогда, когда в языке есть VA> _встроенная_ поддержка всей парадигмы ОО. Почему? Может наоборот - все языки, позволяющие в той или иной степени программировать в объектном стиле, являются в той или иной степени объектными? VA> Перл этому условию не VA> удовлетворяет. Инкапсуляции, наследования и полиморфизма уже недостаточно, нужно чтобы они были сделаны строго определенным способом? ;-) >> 5 примеров пожалуйста. VA> Могу и больше - но по одному. По мере разбирательства с предыдущими. VA> Итак, сделайте ка мне на перле "ромбовидное невиртуальное VA> наследование". Это когда VA> class L { /*...*/ }; VA> class A: public L { /*...*/ }; VA> class B: public L { /*...*/ }; VA> class AB: public A, public B { /*...*/}; VA> И чтоб все производные классы унаследовали методы своих базовых VA> классов. См. http://askh.karelia.ru/perl/labab.pl Устраивает? С уважением, Alex! mailto:askh@go.ru http://askh.karelia.ru/ PGP key fingerprint: 183A DDC9 D784 4623 98D5 4749 4F9C E20B 47E0 769C --- GoldED/386 3.00.Beta5+ * Origin: ASKh Home (2:5038/7.17) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.website/147413c4a05c9.html, оценка из 5, голосов 10
|