|    
						Какой рейтинг вас больше интересует?
						
						 | 
						Главная / Каталог блогов / Cтраница блогера Хабрахабр: Web-разработка / Блог / Захабренные / Запись в блоге
					  
 Matreshka.js — Наследование2013-10-30 02:58:13 (читать в оригинале)
 Приветствую всех читателей и писателей Хабра. В предыдущей статье мы поговорили об основах работы с Матрешкой. В этой, я хочу рассказать, как наследовать Матрешку и как строить пока что небольшие приложения на её базе. Матрешка устроенна в виде класса, сконструтированного при помощи кастомной функции Class. Это немного измененная версия функции, о которой я писал на форуме javascript.ru (ссылка на доку).Так почему классы? Класс — это лишь слово, не противоречащее парадигме прототипного программирования. Если взглянуть на документацию того же Backbone.js, то вы увидите, что и они оперируют словом «класс» без всяких стеснений. Мы можем поспорить о том, что в Javascript нет классов, есть конструкторы, и я с вами соглашусь, но, на деле, имеет ли этот спор смысл? Если конструктор выглядит как класс, плавает как класс, и крякает как класс, то это, наверное, и есть класс? От лирики к делу. Итак, Матрешка создана в виде класса: Аргумент класса — прототип конструктора, который можно определить так: … который затем и возвращается из функции Class. Если конструктор не определен, то им станет пустая функция.Один класс может быть унаследован от другого класса (в данном случае MyClassнаследуется от Матрешки):(Для 'extends'кавычки нужны не только для того, чтоб избежать ошибки синтаксиса (extends — зарезервированное слово), но и для подсветки синтаксиса. Остальные свойства могут быть без кавычек.)При наследовании Матрешки есть важное правило: конструктор должен быть всегда и в нем должен вызываться метод .initMK, который, в данном случае, инициализирует псевдоприватные свойства:__id(идентификатор экземпляра для внутреннего использования), объект.__events(объект событий) и объект.__special(хранящий значения «специальных» свойств, их акцессоры и привязанные элементы). Это же правило верно и для классов, которые будут объяснены в следующих статьях:MK.ArrayиMK.Object.Читать дальше → 
 |    
						Категория «Ню»
						
					 Взлеты Топ 5 
 Падения Топ 5 
  
						Популярные за сутки | 
Загрузка...
 
			BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.











 
						

