Цитата:
Сообщение от __etc
Приват и создан для инкапсуляции. Конечно, вы можете создать для себя правила, какие методы вызывать, какие нельзя и типа у вас инкапсуляция получилась. Отлично.
|
Инкапсуляция - это всего лишь механизм образования "черного ящика". Да, приват создан для усиления инкапсуляции, но сам по себе инкапсуляцию не обеспечивает.
А так как вы отказываетесь говорить, какие вы видите цели в привате, то глупо утверждать, что ничего подобного нет в AS1.
Цитата:
Сообщение от __etc
Да откройте википедию хотя бы, насчет должен.
|
Ага, отлично - википелия
Там, кстати AS к ООП относят (явно не 3-й)
Ну так ДОЛЖЕН язык ООП иметь зарезервированное слово private? Простой вопрос: да или нет? (то же самое к словам class, interface)
Цитата:
Сообщение от __etc
...я даже не говорю, что AS1 вообще не ООП, он ООП, но с приставкой «псевдо» только лишь из-за того, что это самое ООП надо самому необходимо реализовывать... А я не считаю такой язык по-настоящему объектно-ориентированным, в котором надо эту ориентированность самому реализовывать.
|
Что значит САМОМУ? Есть синтаксические конструкции языка или нет, которые позволяют это делать? Есть. Правда почему-то их обозвали "хаками", "костылями" и т.п. Но это только с точки зрения ООП на классах. А как можно судить об AS1 как языке ООП
с точки зрения AS3? Не хотите тогда посмотреть на AS3 с точки зрения AS1 и обозвать хаками interface? Нет? Правильно. Потомучто нужно смотреть с точки зрения общей парадигмы ООП.
Цитата:
Сообщение от __etc
Подтвердите свои слова кодом
|
Код:
function Polymorph(){
}
Polymorph.prototype.getAngle=function(angle){
trace(this.getSin(angle))
}
function Degree(){
}
Degree.prototype.getSin=function(angle){
function convert(){
return angle*Math.PI/180
}
return Math.sin(convert())
}
function Radian(){
}
Radian.prototype.getSin=function(angle){
return Math.sin(angle)
}
obj=new Polymorph()
Polymorph.prototype.__proto__=Degree.prototype
obj.getAngle(90) // 1
obj.getAngle(Math.PI/2) // 0.0274121335920443
Polymorph.prototype.__proto__=Radian.prototype
obj.getAngle(90) // 0.893996663600558
obj.getAngle(Math.PI/2) // 1
Хотите - перепишите на AS3
Цитата:
Сообщение от __etc
А вы дальше моего предложения «iNils привел код, в котором нет объекта активации и код, в котором он является рутом.» вообще ничего читать не стали и сразу объявили меня в некомпетентности?
|
А где вы ДАЛЬШЕ сказали, что iNils ошибся? Надо думать забыли?
Оригинально, это лишний раз подтверждает то, что вы читаете ровно до того предложения и лепите ответ к одному предложению, не обращая внимания на другие.
Цитата:
Сообщение от __etc
Программист не должен знать низкоуровневые особенности кода
|
Ну значит вам не надо
А мне надо и интересно.