Volta. первый взгляд
Сперва всех хотелось бы поздравить с наступившим 2008 годом ;)
Наступил он неизбежно и тяжко. Второй день как в тумане :) Одно сгладило вчерашние впечатления - попытка разобраться, что за рыба такая эта Volta. Подталкнул на это меня Владимир Лещинский, отметив, что как-то это связанно с Script#.
Действительно много общего, но и отличия коренные :) На эту тему понравились каменты в блоге Ajaxian:
A: Looks a lot like sript#
B: probably because Nikhil works for MS
Мне показалось, что Volta сделана как более серьёзная реализация Script#. Основные отличия даже отмечены на офф. сайте. Итак:
В отличии от Script#, который транслирует JS напрямую из C#, Volta, все же, генерирует MSIL, а потом из него уже все остальное. Плюсы очевидны.
- Теперь можно пользоваться любым MSIL совместимым языком.
- Трансформация существующего MSIL может быть частичная, не для всех классов. Это позволяет оставить часть кода "как есть" и выполнять его на сервере под .NET. Авторы называют это Split. Звучит наглядно ;)
Кроме того обещанна полноценная отладка приложения дебаггером. Теперь подсвечивается строка кода именно в самом C#.
Имеется встроенный эмулятор Web сервера для отладки Slit приложений.
К сожалению вчера дома так и не смог заставить работать под Visual Studio простейшее приложение Volta. Приложение компилируется, но не запускается. Никаких ошибок, студия просто "молчит". На форуме офф. сайта такое проскакивало, но ответа так и не дали :( Пробовал под Vista x64 и Windows Server 2008 x86.
Завтра попробую на XP запустить, может заработает наконец-то.
Из того, что удалось посмотреть и оценить вот моё имхо:
- Поиграться уже можно, делать что-то бессмысленно. Перформанс пока никакой. Т.к. обещанная поддержка большой части .net, то весть этот .net ребята сконвертировали в Javascript файлы. Их много и работают они медленно! Думаю не сложно понять почему :)
- Понравилась реализация обвёрток над готовыми Javascript библиотеками. Нагляднее и профессиональнее реализована нежели в Script#.
- Уже не терпиться, когда наделают библиотек под многие API. Хотябы столько, сколько под Script#. Сам попробую написать библиотеку для Gadgets и шаблон для Visual Studio ;)
- Не совсем понятно, зачем реализовали Windows Forms приложения на Volta. Думал, что будет просто разделение кода на Client b Server side при помощи Split. Но вроде, все же, на клиенте браузер поднимают :( Имхо проще на Winforms все же писать, чем на Javascipt, даже таком ;)
PS: недавно обновилась и библиотека Script#. Кто пользуется ей - обновляйтесь. Нового не много, но баги фикшены. Также обновился проект Ext#. Теперь он работает для версии ExtJS 2.0!
To be continued ...