в

Kazan Dev Alliance

Казанское Сообщество Разработчиков Программного Обеспечения

Персональный блог Александра Шера

Professional blog for .Net programmers. Main topics: Microsoft ASP.NET AJAX, WPF/E, OOP, Refactoring

Знакомство со Script#

Это первая (и, надеюсь, не последняя) заметка об очень понравившемся мне продукте, который лично мне помог в разы сократить время на написание яваскриптового кода.

Итак, Script# - это компилятор C#, который на выходе вместо IL выдает яваскриптовый код. Создает его Nikhil Kothari, один из архитекторов в ASP.NET Team. Кроме непосредственно самого компилятора, в проект входит несколько сборок, а также шаблоны проектов для VS. На данный момент последней является версия 0.3.

Перечислю основные приемущества:

·         Строгая типизация и сопутствующий ей интеллисенс.

·         Строгая сингатура методов и делегатов.

·         Ошибки, связанные с неверными типами или сигнатурой, стали ошибками исполнения

·         Возможность использовать перечисления вместо строковых констант

·         Расширяемость. Script# позволяет создавать прокси для любых классов и глобальных функций, написанных на JavaScript

·         Script# содержит прокси для всех клиентских классов MS AJAX

·         Все возможности C# в плане рефакторинга

·         Удобен для создания типов, используемых в PageMethods

и недостатки:

·         Требует создания отдельного проекта

·         Неподдерживаются некоторые возможности C# 2.0 (например, generics, partial classes)

·         Не для всех свойств DOM-элементов есть готовые прокси (особенно для тех, которые отсутствуют в IE)

·         В проектах, совместимых с ASP.NET AJAX, не поддерживается foreach и события нужно объявлять явно (используя ключевые слова add/remove)

·         Нет кастум-тула, который можно было бы использовать для кодогенерации прокси к PageMethods

При всех этих минусах, лично для меня плюсы перевешывают. Кроме того, многие проблемы излечимы. Об известных мне способах «излечения» расскажу в следующий раз.

 

Комментарии

 

Jvr™ сказал:

Спасибо! Интересно!

Ссылочку бы тоже не мешало сразу закинуть!

Смотрим — http://www.nikhilk.net/ScriptSharpIntro.aspx.

July 5, 2007 4:10 PM

Оставить комментарий

(required)  
(optional)
(required)  

© 2007 Kazan Developers Community and Post`s Authors