`

СПЕЦІАЛЬНІ
ПАРТНЕРИ
ПРОЕКТУ

Чи використовує ваша компанія ChatGPT в роботі?

BEST CIO

Определение наиболее профессиональных ИТ-управленцев, лидеров и экспертов в своих отраслях

Человек года

Кто внес наибольший вклад в развитие украинского ИТ-рынка.

Продукт года

Награды «Продукт года» еженедельника «Компьютерное обозрение» за наиболее выдающиеся ИТ-товары

 

Новый взгляд Microsoft на инструментальные средства для начинающих

Статья опубликована в №36 (746) от 12 октября

+22
голоса

Microsoft позиционирует себя как поставщика платформ и уделяет много внимания средствам разработки для них. Флагманский пакет инструментальных средств под брендом Visual Studio является мощным решением для профессионалов, но слабо подходит для начинающих, несмотря на наличие упрощенных редакций. Совсем недавно компания анонсировала и выпустила первые публичные бета-версии двух различных по направлению, но идейно близких решений – Visual Studio LightSwitch и WebMatrix, которые объединяет изначальное проектирование для тех, кто только приступает к программированию.

Новый взгляд Microsoft на инструментальные средства для начинающих
При проектировании интерфейса в VS LightSwitch можно обойтись несколькими щелчками мыши

Вначале следует немного описать сложившуюся на рынке практику деления инструментальных средств на профессиональные и предназначенные для новичков, которую иначе как порочной и не назовешь. Многие компании, работающие в этом сегменте (и Microsoft до недавнего времени в их числе), предлагают свои продукты в различных редакциях, ориентируя дорогие и полнофункциональные на профессионалов, а дешевые и упрощенные – на начинающих. Однако от того, что среда разработки будет ограничена в функциональности, ее изучение и использование проще не становятся, скорее наоборот – отдельные задачи, легко решаемые с помощью встроенных средств полной редакции, оказываются чрезмерно трудоемкими в упрощенной. Соответственно, такая сегментация проводится обычно не по опыту потенциальной аудитории, а по ее покупательной способности. Разумеется, есть проекты, направленные на изучение программирования (ko.com.ua/34453), но переход от них к практической деятельности также не является простым.

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

Visual Studio LightSwitch

Многие бизнес-приложения весьма схожи. Обычно они строятся вокруг реляционных данных и предусматривают типичные операции с ними: ввод, изменение, просмотр, поиск, выполнение вычислений и визуализации. При их разработке основной объем работы заключается в проектировании данных, построении экранных форм и отчетов. Программного кода, выполняющего собственно вычисления и реализующего какие-либо алгоритмы, совсем немного, а в отдельных случаях и вовсе нет. Именно эти предпосылки и были взяты за основу в Microsoft при создании средства для разработки бизнес-приложений под названием Visual Studio (VS) LightSwitch.

Технически VS LightSwitch представляет собой надстройку над Visual Studio, которая интегрируется в IDE, если она уже установлена, либо автоматически инсталлирует Visual Studio Shell в противном случае. На текущий момент в ней поддерживаются два .NET-языка: Visual Basic и C#. В качестве целевой платформы для создаваемых приложений выступает Silverlight (именно этим фактом объясняется название проекта, переводимое на русский язык как «выключатель освещения»).

Проще некуда

Для того чтобы начать работу с VS LightSwitch, следует создать соответствующий проект. Сразу после этого разработчику доступны два варианта выбора – построить новую таблицу или подключиться к существующей. Какая-либо альтернатива, например обойтись без использования БД вообще, попросту не предусмотрена. При создании новой таблицы предлагается интерфейс, традиционный для приложений, работающих в графическом режиме с реляционными данными: возможность создания столбцов, определения их типов и ограничений. По умолчанию в качестве СУБД применяется локальная копия SQL Server Express, которую планируется распространять вместе со средой разработки. В простейшем сценарии предполагается, что пользователь будет создавать программы для своих потребностей на собственном ПК и вопросы распространения ПО и переноса данных его беспокоить не должны. Тем не менее, хотя и несколько забегая вперед, следует отметить, что по части публикации приложения предоставляются самые широкие возможности – начиная с подготовки традиционного дистрибутива для Windows Installer и заканчивая загрузкой приложения прямо на IIS или в облако Windows Azure. Помимо традиционных источников типа реляционных СУБД, можно использовать данные SharePoint-серверов или служб WCF.

Новый взгляд Microsoft на инструментальные средства для начинающих
Приложения, созданные в VS LightSwitch, могут иметь вполне профессиональные вид и функциональность

После проектирования таблиц данных разработчик переходит к построению интерфейса. Для представления отдельных окон приложения в VS LightSwitch вводится концепция экрана – набора элементов управления, которые видны в конкретный момент времени. Эта сущность вполне соответствует принятому для тех же целей в Windows Forms термину «форма», однако, вероятно, более близка целевой аудитории. При создании нового экрана на выбор предлагается несколько стандартных шаблонов, рассчитанных на типичные сценарии работы (ввод данных, поиск, различные способы детализации и т. д.). В отличие от других подходов к созданию графического интерфейса, предусматривающих расположение и настройку элементов управления самим разработчиком, в VS LightSwitch во многих случаях можно обойтись без этого шага. Тем не менее тонкая настройка доступна, причем не только в IDE, но и непосредственно в окне исполняемого приложения – достаточно нажать кнопку с изображением шестеренки, чтобы перейти в режим настройки. При этом предоставляется довольно большая свобода в определении подходящих элементов управления и их параметров. Также можно изменять существующие и добавлять новые элементы управления в ленте, размещенной в верхней части экрана.

Интересно, что даже для создания вполне функциональных приложений можно обойтись вообще без написания программного кода, зато владение хотя бы базовыми понятиями реляционной модели данных весьма желательно, поскольку значительную часть времени будет занимать конструирование таблиц и задание связей между ними. Тем не менее возможность создавать код имеется, понадобиться она может как минимум для вычисляемых столбцов и проверки вводимых данных. Процесс написания кода не отличается от такового для обычных Silverlight-приложений, объектная модель при проектировании интерфейса генерируется автоматически, равно как и стандартные методы обработки основных событий. Разработчик обладает достаточно большой свободой в определении поведения приложения, в VS LightSwitch доступны практически те же возможности, что и в Windows Forms.

Кросс-платформенность по запросу

Использование Silverlight в качестве целевой платформы вполне оправданно тем, что создаваемые решения могут быть легко преобразованы из десктопных в ориентированные на Веб, и наоборот – достаточно в свойствах проекта указать необходимый вариант (в текущей реализации это настольный клиент на основе двухзвенной или трехзвенной архитектуры либо трехзвенный клиент для браузера). В перспективе наверняка появятся и мобильные опции, поскольку Silverlight – основная среда исполнения приложений для Windows Phone 7, доступна для Mac OS X, а для Linux имеется MoonLight. Еще одно из преимуществ Silverlight заключается в ее гибких графических возможностях, состоящих не только в простом изменении внешнего вида благодаря темам (такая возможность, разумеется, предоставляется), но и в гораздо более глубоком преобразовании приложения с помощью заменяемых оболочек (Shells). Оболочка по умолчанию ориентирована на выполнение приложений под управлением обычного ПК, но ее замена на оптимизированную под управление пальцами позволяет приспособиться к другому способу взаимодействия и ввода данных. О чем-то подобном для приложений, созданных с использованием, например, тех же Windows Forms, можно только мечтать.

Не только для начинающих

Достаточно неожиданным является тот факт, что после знакомства с VS LightSwitch интерес к этой среде стали проявлять и профессиональные разработчики, поскольку возможность радикально повысить производительность труда, пусть и для решения отдельных типичных задач, дорогого стоит. По той же причине и сама Microsoft старается позиционировать новоявленную среду разработки более высоко, чем начальное решение, и ориентирует ее именно на создание бизнес-приложений. Во всяком случае вокруг VS LightSwitch активно формируется экосистема разработчиков шаблонов, всевозможных дополнений и графических тем. Не исключено, что в следующих релизах «классической» Visual Studio мы увидим LightSwitch в качестве стандартного компонента, а область его применения будет значительно расширена.

WebMatrix

Новый взгляд Microsoft на инструментальные средства для начинающих
Галерея проектов в WebMatrix интегрирована с Web Platform Installer и предлагает выбор из обширного числа веб-приложений

Среду разработки для веб-приложений с названием Web Matrix (из двух раздельных слов) компания Microsoft анонсировала около семи лет назад. Но в то время проект «не выстрелил», и только сейчас, со слегка измененным названием WebMatrix (без пробела) и полностью новым содержанием, он стал доступен широкой публике. Составляют WebMatrix отдельные компоненты: веб-сервер IIS Express, СУБД SQL Server Compact Edition 4, новый синтаксис Razor для разметки веб-страниц, галерея шаблонов и проектов, IDE со встроенным редактором страниц и таблиц данных, средства публикации сайта и его анализа, а также оболочка, объединяющая все воедино.

Галерея веб-приложений

Вопреки бытующему мнению для платформы ASP.NET существует большое число открытых проектов, решающих те же задачи, что и проекты для более распространенной LAMP: от персональных движков блогов до CMS корпоративного уровня и систем электронной коммерции. Чтобы популяризовать свою технологию, а также поддержать разработчиков открытых решений, Microsoft включила в WebMatrix галерею веб-приложений, в которой представлены многие проекты из различных категорий. Причем выполняет она отнюдь не ознакомительную функцию: любое из доступных в ней веб-приложений можно загрузить и развернуть в автоматическом режиме, не покидая интерфейса WebMatrix (при этом, возможно, потребуется ввести ряд параметров). Показательно, что в галерее присутствуют решения не только на ASP.NET, но и на PHP, например WordPress или Joomla! – Microsoft давно позиционирует IIS под управлением Windows Server 2008 в качестве платформы и для PHP-решений. На момент написания статьи существовало три десятка проектов, ближе к релизу их число будет расти, так что разработчикам предоставят широкий выбор.

Синтаксис Razor

Особо следует отметить дебютирующий в WebMatrix новый синтаксис для разметки ASP.NET-страниц, получивший название Razor. Его главное отличие – лаконичность при написании кода и простота восприятия при чтении. Razor чрезвычайно выгодно отличается в этом плане от классической разметки ASP.NET, страдающей излишней громоздкостью. Мало того, создатели нового синтаксиса утверждают, что он на голову выше основного конкурента – PHP, и в том, что это действительно так, легко убедиться: достаточно сказать, что вместо включения управляющих элементов в HTML-страницу посредством пары угловых скобок и специального идентификатора Razor предусматривает использование служебного символа @, который ставится перед элементами. В остальном разметка максимально повторяет HTML, ее восприятие совершенно не нарушается из-за нагромождения управляющих элементов. Добавим, что за этим несложным, на первый взгляд, нововведением скрывается весьма нетривиальная реализация. Чтобы максимально упростить разметку и не перегружать ее лишними включениями служебного символа @, разработчики Razor были вынуждены скрупулезно проанализировать синтаксис управляющих языков программирования (VB.NET и C#) и совместить его с HTML таким образом, что одни и те же элементы могли играть разную роль в зависимости от контекста. В связи с этим, в частности, пришлось отказаться от универсального для ASP.NET формата ASPX – Razor использует новые CHTML и VBHTML для разметки файлов с управляющими языками C# и VB.NET соответственно.

Разумеется, Razor не является прерогативой исключительно WebMatrix, так создавался новый синтаксис в рамках очередной версии ASP.NET MVC 3 и в будущем он станет доступным для всех ASP.NET-разработчиков. Но его дебют в составе ориентированного на начинающих пакета инструментальных средств весьма удачен, поскольку облегчение восприятия разметки страниц может быть серьезным аргументом в пользу продукта с точки зрения целевой аудитории.

IDE

Новый взгляд Microsoft на инструментальные средства для начинающих
IDE WebMatrix предоставляет необходимый минимум функциональности, а если ее оказывается недостаточно – на виду кнопка вызова Visual Studio

WebMatrix обладает собственной IDE, в чем-то напоминающей Visual Studio, но по исполнению максимально соответствующей последней версии Microsoft Office. Работа со средой начинается со стартового экрана, в котором предлагается на выбор открыть существующий сайт либо создать новый, используя в качестве отправной точки веб-приложение из галереи, шаблон или сайт на диске. О галерее мы уже говорили, шаблоны также имеются для различных типов проектов, однако они изначально создавались для WebMatrix, а потому уже применяют язык разметки Razor и максимально пригодны для быстрой адаптации. Несмотря на то что IDE поддерживает те же типы файлов, что и Visual Studio, по своим возможностям, особенно если речь идет о визуальном проектировании и средствах отладки, она заметно уступает последней. Но назвать это существенным недостатком нельзя, поскольку разработчики предусмотрели запуск Visual Studio отдельной кнопкой на главной панели инструментов, а также предлагают установить бесплатную редакцию Visual Web Developer 2010 Express прямо во время развертывания WebMatrix.

Помимо программирования веб-страниц, IDE WebMatrix поддерживает и создание баз данных, для чего по умолчанию используется легковесная SQL Server CE. Интересно, что ранее Microsoft не позиционировала эту СУБД для веб-приложений, предыдущие ее версии с исходными настройками даже отказывались функционировать в проектах ASP.NET. Однако в составе WebMatrix подобные ограничения были сняты, появилась поддержка многопотоковости, необходимая для обработки параллельных запросов, и в целом возможностей этой компактной СУБД будет более чем достаточно для сайтов с невысокой нагрузкой. Для тех же, кому функциональности SQL Server CE кажется мало, существует возможность миграции на полновесный SQL Server прямо из интерфейса редактора проекта – достаточно вызвать соответствующую команду на панели инструментов и задать параметры подключения к серверу (а если SQL Server отсутствует, то здесь же есть возможность его загрузить и установить – для многих задач вполне хватит бесплатной редакции Express).

Опубликовать проект также можно не покидая интерфейса редактора – непосредственно на веб-сервер с поддержкой протокола Web Deploy или загрузив FTP-сервер (с возможностью SSL-шифрования). Для тех же разработчиков, кто еще не обзавелся хостингом, есть ссылка, ведущая на страницу со списком провайдеров, рекомендованных Microsoft.

Один из несомненных плюсов WebMatrix – встроенная поддержка сбора статистики и анализа работы сайта. В существующей реализации для этого предлагается два варианта – по запросам к сайту или по его соответствию требованиям поисковой оптимизации. В каждом случае предоставляется информация с описанием возможной проблемы и даются рекомендации по ее устранению. Несмотря на то что в этом плане WebMatrix заметно уступает профессиональным специализированным инструментам, функциональности вполне достаточно для выполнения программы-минимума оптимизации сайта без привлечения сторонних средств, освоение которых может потребовать немало усилий от начинающего разработчика.

Хорош для старта

Сложно предугадать, насколько популярным окажется WebMatrix, но следует признать, что его создатели постарались на славу: в одном пакете собран необходимый минимум всех инструментов, которые подойдут для разработки несложных, но вполне функциональных веб-приложений. Среди главных особенностей WebMatrix следует назвать синтаксис разметки страниц Razor, значительно упрощающий восприятие кода, встроенную галерею поддерживаемых веб-приложений, позволяющую создать решение с минимальным количеством доработок, средства сбора статистики и анализа работы сайта, помогающие избежать явных ляпов малоопытному веб-разработчику. Тогда как VS LightSwitch может быть интересен и профессионалам, WebMatrix вряд ли приглянется опытным специалистам, но, бесспорно, сослужит хорошую службу для начинающих, тем более что будет распространяться Microsoft совершенно бесплатно.

Сайт автора: koldovsky.com

Ready, set, buy! Посібник для початківців - як придбати Copilot для Microsoft 365

+22
голоса

Напечатать Отправить другу

Читайте также

 

Ukraine

 

  •  Home  •  Ринок  •  IТ-директор  •  CloudComputing  •  Hard  •  Soft  •  Мережі  •  Безпека  •  Наука  •  IoT