 
			
				17.11.2013, 17:13
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от DjDiablo
			 
		
	 | 
 
	
		Я шизею))))))) 
Как ты разбираешься только.  
Где же я объявил функцию render? Ах да, 11 уровнями ниже ))))
	 | 
 
	
 
 Соглашения, JSDoc, нормальная ИДЕ и здравый смысл)  
		
	
		
		
		
		
		
			
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 17:48
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 04.02.2011 
					
					
					
						Сообщений: 1,815
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			 Цитата: 
		
	 | 
 
	| 
		Уверен что таких поделок на JS куда больше
	 | 
 
	
 
 угу дофига, но в DART никакой возни с компиляторами или утилитами. Нет такого гемора как с прикручиванием webkit к ноде. Реально собранный готовый к употреблению продукт прямо из коробки. 
 
1) создать проект 
2) выбираем Chrome package project 
3) жмем "ok" 
4) жме "run" 
enjoy !!!  готовое десктопное приложение на базе хрома уже работает !!! 
 
В качестве CSS фреймворка предложен bootstrap, хош на JS пиши, хош на dart или и на том и на другом одновременно.
 Ее нет даже в С/С++ зачем она в JS?
Ну думаю  что неявное определение типа это тоже самое что отсутствие типа.  
Подозреваю что такой  код не проконает.
 
auto year=2020;
year="две тысячи двадцать";
  
		
	
		
		
		
		
		
			
				__________________ 
				Лучше калымить в гандурасе чем гандурасить на колыме
			 
		
		
		
		
		
						  
				
				Последний раз редактировалось DjDiablo, 17.11.2013 в 18:04.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 18:13
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Особый гость 
				
				
				
				
	
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.04.2010 
					
					
					
						Сообщений: 4,260
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от DjDiablo
			
		
	 | 
 
	| 
		Ну думаю что неявное определение типа это тоже самое что отсутствие типа.
	 | 
 
	
 
 Типы есть почти во всех языках, разве что правила приведения могут отличаться.
 
К примеру, в С/С++ можно сделать так:
 
int number = 1;
number = 'a';
 
А Erlang, где отсутствует статическая аннотация типов, так нельзя делать даже с переменной того же типа:
 
$ erl
0> Number = 0 .
1> Number = 1 .
** exception error: no match of right hand side value 1
  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось monolithed, 17.11.2013 в 18:21.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 18:18
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 04.02.2011 
					
					
					
						Сообщений: 1,815
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		Тип как был целым числом так и остался, в JS тип изменится (number перестанет быть числом). 
Я это к тому что нет оснований утверждать что в C++ нет типов.  Просто акцент сместился в сторону автоматического определения типов и шаблонов<>. Все это работает на этапе компиляции и к исполнению это никакого отношения не имеет.
 
Erlang вообще не обычный язык    
		
	
		
		
		
		
		
			
				__________________ 
				Лучше калымить в гандурасе чем гандурасить на колыме
			 
		
		
		
		
		
						  
				
				Последний раз редактировалось DjDiablo, 17.11.2013 в 18:40.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 18:37
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 junior 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 29.11.2011 
					
					
					
						Сообщений: 3,924
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от DjDiablo
			
		
	 | 
 
	
		Вот что я имел ввиду  
rectangle ={x,y,z,render:function(){},remove:function(){} } 
circle ={x,y,z,render:function(){},remove:function(){} } 
text ={x,y,z,render:function(){},remove:function(){} } 
... и еще 100500 классов. 
Если где то забыл переопределить render, то пока в редакторе эту фигуру не нарисуешь то ошибку не увидишь. 
 
Вот только ради этого мне и нужен интерфейс, не хочу тест под каждую фигуру ваять. Да и неудобно это тестить, так как там почти нет логики просто работа с канвасом. Писать тест только для того чтобы проверить все ли свойства и методы на месте меня не улыбает как то.
	 | 
 
	
 
 если все одинаковое, можно так
 
var obj = {
    a: null,
    b: 1,
    c: NaN
};
      
console.assert( Object.keys( obj ).join() === 'a,b,c', "Doesn't equal" );
Или с методами прототипа сверять, если интересуют только методы.
 
Вообще, если все одинаковое, можно написать один тест и только необходимые объекты в него подставлять (тестируемые).  
		
	
		
		
		
		
		
			
				__________________ 
				Чебурашка стал символом олимпийских игр. А чего достиг ты? 
Тишина - самый громкий звук
			 
		
		
		
		
		
						  
				
				Последний раз редактировалось nerv_, 17.11.2013 в 18:42.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 18:51
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Профессор 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 04.02.2011 
					
					
					
						Сообщений: 1,815
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от nerv_
			 
		
	 | 
 
	
		если все одинаковое, можно так 
Вообще, если все одинаковое, можно написать один тест и только необходимые объекты в него подставлять (тестируемые).
	 | 
 
	
 
 Ну вот поэтому я и говорил про тесты, других вариантов то нима. 
Количество параметров для функции можно еще проверять.  
		
	
		
		
		
		
		
			
				__________________ 
				Лучше калымить в гандурасе чем гандурасить на колыме
			 
		
		
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 19:40
			
			
			
		  
	 | 
 
	
		
		
		
			
			| 
			
				
				
				 Особый гость 
				
				
				
				
	
 
 
			 | 
			  | 
			
				
				
					Регистрация: 02.04.2010 
					
					
					
						Сообщений: 4,260
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от DjDiablo
			
		
	 | 
 
	| 
		Я это к тому что нет оснований утверждать что в C++ нет типов.
	 | 
 
	
 
 Я так тоже не утверждал.
 
	
 
	| 
		
			Сообщение от DjDiablo
			
		
	 | 
 
	| 
		Просто акцент сместился в сторону автоматического определения типов и шаблонов<>
	 | 
 
	
 
 Точнее в сторону обобщенного программирования (generic) и автоматического вывода типов на этапе компиляции   
Так что мешет использовать JSDoc-аннотацию и GCC?  
		
	
		
		
		
		
		
		
		
						  
				
				Последний раз редактировалось monolithed, 17.11.2013 в 19:43.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 19:48
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 junior 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 29.11.2011 
					
					
					
						Сообщений: 3,924
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от monolithed
			
		
	 | 
 
	| 
		Так что мешет использовать JSDoc-аннотацию и GCC?
	 | 
 
	
 
 а для тупых можно поподробней?   
	
 
	| 
		
			Сообщение от kobezzza
			
		
	 | 
 
	| 
		Соглашения, JSDoc, нормальная ИДЕ и здравый смысл)
	 | 
 
	
 
 аналогичный вопрос
 
	
 
	| 
		
			Сообщение от Gozar
			
		
	 | 
 
	| 
		Что ты так на этом все время акцентируешь внимание?
	 | 
 
	
 
 надоели уже хаять его без повода )  
		
	
		
		
		
		
		
			
				__________________ 
				Чебурашка стал символом олимпийских игр. А чего достиг ты? 
Тишина - самый громкий звук
			 
		
		
		
		
		
						  
				
				Последний раз редактировалось nerv_, 17.11.2013 в 19:50.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 19:51
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 Быдлокодер;) 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 19.11.2010 
					
					
					
						Сообщений: 4,338
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	
		
			Сообщение от nerv_
			 
		
	 | 
 
	
		а для тупых можно поподробней?  
	 | 
 
	
 
 https://developers.google.com/closur...s-for-compiler
GCC понимает эти анотации и использует их чтобы генерировать как можно более оптимальный и эффективный код.
 
	
 
	
		
			Сообщение от nerv_
			 
		
	 | 
 
	| 
		аналогичный вопрос
	 | 
 
	
 
 Многие JS IDE понимают JSDoc, в частности WebStorm понимает стандарт GCC JSDoc и использует его для статического анализа кода и автокомплита.
 
Соглашения - ну тут всё понятно, ибо когда мы вводим рамки и следуем им, то наш код становится более предсказуем и очевиден.
 
Ну а здравый смысл - это думать, что делаешь   
		
	
		
		
		
		
		
			
		
		
		
		
		
						  
				
				Последний раз редактировалось kobezzza, 17.11.2013 в 19:55.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
	
	
	
		
	
		
		
		
			
			 
			
				17.11.2013, 20:30
			
			
			
		  
	 | 
 
	
		
		
		
			  | 
			
			
				
				
				 猫 
				
				
				
				
	
 
 
 
			 | 
			  | 
			
				
				
					Регистрация: 07.06.2007 
					
					
					
						Сообщений: 7,504
					 
					
					
			
		
 
		 
		
			 | 
		 
		 
		
	 | 
 
	
	
	
		
		
		
		
		
	
 
	| 
		
			Сообщение от nerv_
			
		
	 | 
 
	| 
		надоели уже хаять его без повода
	 | 
 
	
 
 Никто, ничего не хает. Где ты это углядел не ясно. Не пора закончить этот затянувшийся разговор про ангуляр?
 
	
 
	| 
		
			Сообщение от monolithed
			
		
	 | 
 
	| 
		А Erlang, где
	 | 
 
	
 
 В Erlang нельзя изменять значение переменной, не ясно какое отношение это имеет к типам? Ну разве, что производительность это повышает, как и в статической типизации.  
		
	
		
		
		
		
		
			
				__________________ 
				Последний раз редактировалось Gozar, Сегодня в 24:14.
			 
		
		
		
		
		
						  
				
				Последний раз редактировалось Gozar, 17.11.2013 в 20:33.
				
				
			
		
		
	
		
		
	
	
	 | 
 
 
	 
		 | 
 
 
 
 
 
 
 
	 | 
 
 
 |