26.10.2011, 23:49
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Пиар Ё!
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
27.10.2011, 01:15
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от DjDiablo
|
Что касается меня, тут почти всё в основном обьясняется привычкой.
|
хорошо, что ты это осознаешь
Сообщение от DjDiablo
|
Сахара хочу, и хочу много сахара. Я люблю сахар, он делает код яснее, бережет нервы, и время.
|
если тебе так нужен сахар... значит тебе он нужен ради сахара, ты уже забыл что ты делаешь
Сообщение от DjDiablo
|
Извиняюсь за резкость, но прототипное наследование в javaScript, у меня кровавый понос на физическом уровне вызывает. Я не сторонник прототипного программирования, но я почему-то обречён использовать чуждый мне стиль ООП.
|
ты обречен долго ныть на форумах о том, почему javascript не такой как c++/c#, а потом вернуться к ним, любимым
Сообщение от DjDiablo
|
Обидно что у меня нет выбора.
|
он есть, просто ты его не видишь. А в классическом ООП выбора нету, да
Сообщение от DjDiablo
|
На будущее всё таки надо своять табличку решений на классах и прототипах и сравнить, для объективной оценки.
|
для объективной оценки, ты должен сначала увидеть преимущества прототипного программирования и потом... что именно ты сравнивать собрался?
Сообщение от FINoM
|
Я не понимаю, почему "невозможно".
|
возможно им статической типизации и производительности не хватает... wtf javascript
|
|
27.10.2011, 01:44
|
|
Новичок
|
|
Регистрация: 05.09.2010
Сообщений: 2,298
|
|
Сообщение от x-yuri
|
статической типизации и производительности не хватает
|
Если я правильно понял в Дарте типизация гибридная, что не мешает так же сделать и в JS «не ломая текущий веб».
А по поводу производительности, простите чайника, но тот же Node.js достаточно быстр.
А Google — говнюки. Нет, чтоб развивать новую спецификацию Ecma и подталкивать других разработчиков на её развитие, дак они создали свой костыль, который нахер никому не уперся, особенно Микрософту. Мне очень жаль, что столько сил потрачено на, вероятно, бессмысленную разработку.
Сообщение от Gozar
|
Пиар Ё!
|
Пардон, а какая от Дарта Гуглу выгода? ES — открыт, популярен, развивается не только самим Гуглом.
|
|
27.10.2011, 02:10
|
|
Люмус, Емаксос Developer!
|
|
Регистрация: 06.05.2010
Сообщений: 677
|
|
Сообщение от FINoM
|
но тот же Node.js достаточно быстр
|
Нода быстра не потому что там используется JavaScript, а потому что там используется асиинхронная, событийно ориентированная модель. Все тяжелые операции выполняются асинхронно, и их выполняют модули написанные на C++. Хочу заметить что в Ноде все выполняется асинхронно кроме Вашего кода.
Сообщение от FINoM
|
А Google — говнюки. Нет, чтоб развивать новую спецификацию Ecma и подталкивать других разработчиков на её развитие, дак они создали свой костыль,
|
А Google и развивает JavaScript, у компании есть проект Harmony который направлен на исправление недостатков Javascript.
Сообщение от FINoM
|
который нахер никому не уперся, особенно Микрософту
|
Тут да, есть проблемма. Я думаю мы все четко понимаем что если Dart взлетит то IE будет последним браузером который внедрит нативную поддержку языка (Dart). Ситуация еще более усугубилась когда Майкрософт обьявила JavaScript (HTML, CSS) одним из основных языков (если не ошибаюсь их 5, C#, C++, VB ...) для разработки десктоп приложений в Виндовс 8.
Последний раз редактировалось Magneto, 27.10.2011 в 02:27.
|
|
27.10.2011, 02:29
|
|
Новичок
|
|
Регистрация: 05.09.2010
Сообщений: 2,298
|
|
Сообщение от Magneto
|
Нода быстра не потому что там используется JavaScript
|
Я думал, что она быстра из-за V8, помнится мне сравнивали циклы и побную синхронную хрень с php. Нода выигрывала. Опять же, я не силен в этом вопросе. Все мои знания заканчиваются пиаром Ноды, как очень быстрого инструмента для серверов.
Сообщение от Magneto
|
А Google и развивает JavaScript, у компании есть проект Harmony который направлен на исправление недостатков Javascript.
|
Молодцы конечно, но, блин, у них даже нет реализации пресловутого let, что уж говорить об (удобных) -> синтаксических_няшках и классах. Сравнительно активно развивается только ES, который существует только на бумаге, на внесение серьезных, полезных и интересных изменений в Javascript всем немножечко пофиг.
|
|
27.10.2011, 02:32
|
|
Новичок
|
|
Регистрация: 05.09.2010
Сообщений: 2,298
|
|
Сообщение от Magneto
|
для разработки десктоп приложений в Виндовс 8
|
То-то же. Dart — игрушка для гиков. В реальных проектах он может использоваться только на сервере, и даже в этом случае вопрос "зачем" остаётся.
|
|
27.10.2011, 04:43
|
|
|
|
Регистрация: 27.12.2008
Сообщений: 4,201
|
|
Сообщение от FINoM
|
Если я правильно понял в Дарте типизация гибридная, что не мешает так же сделать и в JS «не ломая текущий веб».
|
если цель - производительность и ты просто добавишь статический синтаксический сахар, ничего не измениться. В любом случае, у них должны быть на это причины. Ты видишь более вероятные причины?
Сообщение от FINoM
|
Пардон, а какая от Дарта Гуглу выгода? ES — открыт, популярен, развивается не только самим Гуглом.
|
Сообщение от trikadin
|
В первые годы завоевания дартом вейдером просторов веба, очевидно.
|
как вариант...
|
|
27.10.2011, 07:50
|
|
|
Регистрация: 10.07.2008
Сообщений: 3,873
|
|
Я согласен с мыслью, высказанной где-то на хабре, что это просто завоевание рынка, они хотят свой С#
|
|
27.10.2011, 09:35
|
|
猫
|
|
Регистрация: 07.06.2007
Сообщений: 7,504
|
|
Я так предполагаю первым ну очень быстрым приложением на Dart будет какая-нибудь игрушка, а затем клич - "теперь вам не нужны плагины, чтобы играть в свои любимые игры в своём \"любимом\" браузере". Далее все вытекающие ...
__________________
Последний раз редактировалось Gozar, Сегодня в 24:14.
|
|
27.10.2011, 13:01
|
Профессор
|
|
Регистрация: 04.02.2011
Сообщений: 1,815
|
|
Цитата:
|
Я думал, что она быстра из-за V8,
|
Не надо забывать что DART логически вытекает из V8.
насчёт скорости, я думаю притензии к непредсказуемому количеству св-в.
var test={};
for (var i=0;i<1000;i++){
test["x"+i]="sad"
}
//когда будет исполнятся эта строка интерпритатору придётся проверить есть ли свой-ство x999
// Компилятор не будет знать и подавно. Ему придётся вставить вызов попрограмки, для проверки существования св-ва и возврата значения.
alert (test.x999);
В классах это количество вполне предсказуемо
class d{
public int a=1;
public int b=2;
}
d test=new d();
alert(test.a);
В случае с классами, компилятор, может указать напрямую в исполняемом коде адрес памяти в которой хранится значение. Алгоритм присваивания значения, компилятор может создать прямо здесь же.
В случае с javaScript мы не знаем сущуствует ли свойство вообще. Поэтому сначало должны выяснить 1) есть ли оно вообще, 2) что оно из себя представляет, 3) и только потом где его взять. Соответственно в коде придётся хранить индекс в таблице св-в, работать с таблицей, а затем для установки значений некоторых св-в вызывать подпрограммы.
Это сотни лишних тактов процессора.
Предположим у вас в цикле 10 св-в обьекта, цикл исполняется 1000 раз.
100 тактов обслуживания *10 переменных*1000циклов=1 000 000 -лишних тактов.
Это написано на глазок, думаю в реале всё намного лохмаче.
Что касается динамических обьектов вообще, в том же C++ или Delphi, статическими массивы быстрее динамических раза в 3.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме
Последний раз редактировалось DjDiablo, 27.10.2011 в 14:07.
|
|
|
|