Здравствуйте, gandjustas, Вы писали:
G>Здравствуйте, ankf, Вы писали:
A>>Здравствуйте, gandjustas, Вы писали:
G>>>Здравствуйте, ankf, Вы писали:
A>>>>Есть такое мнение что html5 — убийца Silverlight, Flash и даже .NET Framework.
A>>>>На мой взгляд это совсем не так.
G>Бессмысленное сравнение. JS нету и не будет в серверной части, в энтерпрайзах или еще где. Даже node.js до сих пор не то что взлететь, даже от земли оторваться не может.
Ну я собственно о том же, задача данного поста не сравнить JS c java/c#, а показать что утверждение что html5 заменит нам все и вся — в корне не верно.
G>А что касается клиентского веба, то там да HTML5 зарулит Flash и Sliverlight, но отнюдь не из за js, а скорее вопреки ему.
Можно на примере каким образом HTML5 зарулит разработку анимации и интерактивного интерфейса на том же Flash или Silverlight ?
Начнем с того что в html5 нет тегов для разработки интерактивного интерфейса, все как и раньше делается за счет javascript , только в html5
для изменения визуального за счет модификации DOM, предлагается также модификация Canvas. Собственно серьезные графические вещи сопоставимые с Flash и Silverlight можно делать только через Canvas. А собственно все описание логики работы этого самого Canvas выносится в javascript.
Например как мне на Canvas нарисовать линию ? Нужно в javascript вызвать метод типа lineTo(1,1) , а как собственно можно на эту линию повлиять из css — никак. Собственно css остается в своей сегодняшней роли — влияние на представление только на DOM модель.
Например на том же Canvas нарисовали 2 кнопки, нужно как-то менять положение этих кнопок, опять же нужно менять javascript, разрабатывать отдельный код для данного случая css тут не поможет
A>>>>3) Преимущества ради чего кто-то кинется писать GUI проекты под html5 это кроссплатформенность, но не нужно забывать что помимо различных ОС еще требуется адаптация под железо, одно дело создать удобный интерфейс для десктопа с 102 клавишами и разрешением 1920х1080 , другое дело для телефона 320х240 или iPad с одной кнопкой и поддержкой multitouch. Что опять сводится к разработке некой общей части с использованием стандартных объектно-ориентированных приемов, тот же полиморфизм, которые в javascript будут очень плохо укладываться. В результате трудоемкость разработки реального качественного кросплатформенного приложения будет не менее тяжеловесна чем сейчас.
G>>>Это вообще-то CSS рулится, а не JS. Кроме того пользователям можно подсовывать мобильный интерфейс приложений с помощью серверного кода.
A>>css это рулится только отчасти, css можно повлиять на статичный размер/видимость объектов. Но мультиплатформа требует помимо размеров еще и интерактивность с пользователем держать на уровне , одно дело когда одна кнопка на девайсе, другое дело когда кнопок нет, но есть джойстик и т.п..
A>>Также допустим анимация , что с того что в css размер объекта стал меньше, анимация на разном разрешении требует изменения ее логики, например на маленьком экране нужно 5 кадров сделать, на большом 20. не всегда можно пропорционально уменьшать объекты и использовать только относительные координаты.
G>Это вопрос дизайниа. Давно устоявшийся подход — подсовывать разным клиентам разные представления.
Не только дизайн ( Layout ), логика ввода-вывода зависит от особенностей устройства.
A>>>>4) Вопрос открытости исходников и безопасности, тут все думаю и так понятно без пояснений, не всем такой вариант подойдет в принципе.
G>>>Есть различные JS minifiers и packers, которые значительно усложняют реверс-инжинирирг кода. Кроме того KS может быть сгенерирован на сервере, что дает еще больше возможностей для обфускации. Опять-таки весть business critical код можно держать на сервере.
A>>Про то и речь что в проектах где недопустимо все выкладывать в открытый код, будут по прежнему держать на сервере, что в свою очередь ничем не меняет существующий подход. Врятли кто-то серверный код будет делать на javascript, когда более удобную с точки зрения разработки/безопасности версию можно сделать на том же .net, java.
G>Именно, а ты что ожидал? Что придет html5 и сразу все на нем писать будут? Пока это только интерфейс (client-side) и ничего другого не предвидится.
Что я ожидаю я написал в 1м посте в конце

А именно то что нифига html5 существенно не изменит, в том числе Flash и Silverlight останутся как основные средства разработки интерактивных интерфейсов.