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.
|
|
|
|