|
Прототипы лучше классов?
Прототипы же лучше классов? Это как классы, только динамические, разве нет?
|
Цитата:
Цитата:
|
Цитата:
Суть и того и другого в том чтобы экономить память, храня общие свойства и методы единожды. |
Цитата:
Пример с прототипами: у меня есть некий класс X, который при инициализации создает HTML элемент для какой-нибудь информации. Я хочу сделать класс Y, который наследуется от X.
X = function(){ // функция? блжад, это же конструктор, причем тут функция?
this.elem = document.createElement('div');
}
Y = function(){}
Y.prototype = new X;
//что бы вы думали? Теперь this.elem является одним и тем же объектом для всех экземпляров Y
|
Цитата:
Мы говорим про теорию если что. |
На этот раз соглашусь с автором темы, по поводу его последнего поста.
FINoM, Вы как раз таки повесить на классическую систему наследования - классами и так же пытаетесь реализовать наследование в JS. Правильное наследование:
var a = function(){},
b = function(){};
b.prototype = Object.create(a.prototype);
И прототипы да, лучше. И их тем более не нужно ни с чем там сопоставлять. |
Цитата:
|
Livaanderiamarum,
тут скорее в теории медленнее язык программирования, из-за динамичности. типа Но это только в теории. |
Nekromancer, то есть прототипы не медленнее классов если абстрагироваться от языка?
|
Livaanderiamarum,
Ну во первых, даже классы быстрее, то их здесь нет. А есть прототипы, этого не изменишь. Как на низком уровне реализуются классы представления не имею, но не думаю что будет большое отличие в скорости между двумя динамически типизированными языками одного уровня, где в одном будет прототипное наследование, а в другом привычно классовое. |
| Часовой пояс GMT +3, время: 05:16. |
|