| 
	
	
		
		
			
			 
				Наследоваться от Ext.data.Model или нет?
			 
			
		
		
		
		У меня есть классы геометрических примитивов: точка, линия, квадрат и пр. 
 
Я хочу сделать, чтобы было две сущности: 
 
1) модель примитива (хранит данные примитива и методы). 
2) вид примитива (знает как этот примитив отобразить в окне браузера, например в контейнере SVG). 
 
По сути аналог этому Grid: там модели строк и вид grid panel. 
 
Сначала я хотел создавать модели путем наследования от класса Ext.data.Model. Но тут возникает сложность: класс Ext.data.Model имеет очень много всяких методов, которые могут совпасть с методами работы с геометрическим примитивом. Плюс некоторые методы могут появиться динамически (когда создаются связи между моделями). 
 
Что посоветуете? 
 
Наследовать от Ext.data.Model и потом мучаться чтобы не дай бог пересеклись названия методов и свойств? 
 
Или создать модель разбить на две сущности: модель и геометрический примитив? 
 
Во втором случае у модели будет метод getPrimitive(), а у примитива будет метод getModel(), чтобы иметь доступ и к данным и к геометрическим методам. 
		
	
		
		
		
		
		
			
				__________________ 
				Хусамов Сухроб, Москва, khusamov@yandex.ru 
Мой JS-стек: Sencha ExtJS 6, Node.js, TypeScript.
			 
		
		
		
		
	
		
		
	
	
	 |