Просмотров: 6777

Visual Studio LightSwitch 2011: Введение. Часть 1


В продолжение нашей недавней темы о визуальных языках программирования (VPL), сегодня я решил сделать обзор необычного для России продукта: несмотря на ровно год его существования он до сих пор не получил широкого признания и распространения на полях и весях нашей необъятной родины.

Достаточно попытаться поискать через интернет-поиск русскоязычные материалы на эту тему, как будет сразу обнаружено, что их доступно буквально лишь несколько на весь Рунет, да и те по большей части лишь от родоначальника этого продукта — компании Microsoft, в которых хор громких и уже хрипловатых от эмоционального надрыва маркетологов, исполняет заунывно-хвалебные песни в честь своего нового продукта, что несколько заглушает и задвигает на второй план собственно саму суть и устройство этой новой технологии разработки.

Итак, сегодня у меня речь пойдет о Visual Studio LightSwitch 2011, первая версия которой увидела свет в начальных числах июля 2011 года, а до этого официального события была доступна всем интересующимся в виде множества промежуточно-тестовых бета-версий.

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

Безусловно, это необычный программный продукт от Microsoft, стоящий особняком от всех других программных продуктов этой компании. Это «стояние в стороне» носит как технический, так и идеологический уровень, о чем далее я расскажу подробнее. Но перед началом моего изложения давайте определимся с форматом нашего рассказа. Поскольку количество информации о любой подобной новой технологии просто огромно, я бы хотел построить своё изложение в виде списочного перечисления лишь отдельных, но важных для меня фактов, через выборочную призму которых, надеюсь, кратко и емко расскажу о сей заморской технологии, дабы дать возможность быстро пробежавшись по ним сверху низ, просто и ясно уяснить для себя — что это, для чего это, и главное — как оно работает.

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

LightSwitch — среда для... Для кого?

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

Сама Microsoft даёт такое чеканное определение для своего новейшего продукта:

«Microsoft Visual Studio LightSwitch — это простой и самодостаточный инструмент, позволяющий быстро и легко создавать как настольные, так и облачные бизнес-приложения».

От себя я бы чуть расширил область создаваемых приложений, а именно, это:

  • настольные (десктопные) приложения;
  • браузерные веб-приложения (которые доступны посредством браузера, что теоретически придаёт таким приложениям относительную кросс-платформенность — позже я уточню, к чему вставлено важное слово «относительную»);
  • серверные веб-приложения;
  • и, наконец, уже названная и последняя категория — облачные приложения.

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

Представьте себе нынешнюю линейку продуктов для программной разработки от Microsoft, я изобразил её на диаграмме ниже:

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

Здесь мы видим четыре известных продукта для автоматизации и обработке данных, которые нарастают в направлении слева на право по уровню своей сложности и комплексности. Обратите внимание, раньше между уровнем Access и Visual Studio был огромный зазор: Access при современных объемах данных и интернет-ориентированности бизнеса — это фактически стремительно устаревающая технология создания небольших локальных приложений, по большей части исключительно в рамках экосистемы MS Office. С другой стороны, как ни крути, при всех своих неограниченных возможностях, Visual Studio требует довольно-таки приличных знаний от специалиста, решившего этим инструментом всерьёз воспользоваться.

И как справедливо говорят в народе — свято место пусто долго не бывает, и поэтому именно на этом рынке «полупрофессионалов» Microsoft и собирается урвать свой жирный кусок пирога в лице LightSwitch, прежде всего у своего прямого конкурента — FileMaker.

Отныне любому юзеру достаточно лишь шапочного знакомства с современными технологиями и устройством информационных систем, и вы уже в состоянии быстро и легко построить своё собственное, очень даже комплексное или сетевое приложение из готовых кирпичиков, с помощью многочисленных и услужливых визардов, по уже готовым и хорошо подобранным шаблонам и лекалам. LightSwitch — это супер-RAD, продукт 21 века, когда дефицит времени — величина перманентная, а знаний у большинства из армии простых смертных пользователей компьютеров на ковыряние деталей и выяснение каких-то особенностей отдельных программистских технологий — просто нет.

Понятно для кого предназначен LightSwitch, равно как и его аналог FileMaker — например, для бизнесмена, у которого нет ни времени, ни сил учиться (параллельно своей основной работе) на программиста, но при этом рутина, что называется, заедает. В современном информационном офисе практически у любого сотрудника пруд пруди различных обязанностей и потребностей, которые часто в идеале требуют своего узкоспециализированного софта. Не заказывать же каждый раз новый продукт у стороннего специалиста?

Идеология LightSwitch/FileMaker утверждает, что при минимуме знаний и умений, при помощи подобных специализированных IDE вы сами самостоятельно способны создать довольно-таки комплексные и приличные программы, при этом потратив на них минимум своих времени и усилий. Конечно, любой «тру программист» может назвать этот популярный на Западе (и пока не так распространенный у нас) тренд развития ПО как «программирование для секретарш» и брезгливо скривить рот... но подождите давать свои поспешные оценки, хочу авансом уверить, что Microsoft предприняла по-настоящему серьёзную попытку сделать мощный и гибкий, и при этом — относительно простой инструмент.

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

Технические аспекты устройства

Выше я уже выделил список из 4 направлений для внедрения и области развертывания (как сказали бы программисты — «диплоя») этого приложения, давайте сейчас спроецируем всё это на конкретные технологии, внеся необходимые технические подробности, дабы придать смысловую резкость для специалистов.

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

Самое важное и первое: все версии приложений здесь строятся на базе инкапсуляции технологии Silverlight (пользовательский интерфейс), все остальное (равно как и целое тоже) базируется на платформе .NET. Теоретически это позволяет легко и просто переносить такие приложения в разные среды, повторю этот список ещё раз: десктопные приложения, браузерные, серверные и облачные. Потенциально, отчасти, это даёт некую теоретическую кроссплатформенность (на официальном рекламном ролике LightSwitch даже видно, как такое браузерное приложение работает на MacOS X).

Принципиальный момент для меня в том, что подобное приложение полностью базируется на уже стандартных «взрослых технологиях», при этом не важно насколько вы это осознаёте и реально используете. Важно, что при желании вы можете использовать ADO.NET и подключаться в штатном режиме к разным базам данных, например к MS SQL Server или MS SQL Azure, интегрироваться с форматами данных от MS Office, использовать сторонние провайдеры для доступа к другим типам хранилищ... короче говоря, все, что доступно вам при настоящем и серьёзном программировании под Visual Studio .NET.

Вашу серверную составляющую вы можете развернуть на базе ASP .NET или запустить в облаке MS Windows Azure — это совершенно не важно. Прекрасная сквозная интеграция с MS Office позволяет вам обмениваться всеми необходимыми данными с офисными приложениями в двухстороннем направлении.

Например, в качестве источника данных могут выступать списки Share Point или служба WCF. При этом многочисленные и хорошо подобранные типовые шаблоны и мастера позволяют почти полностью абстрагироваться от технической сложности и сосредоточиться на самой логике приложения, полностью в интуитивно-понятном визуальном режиме самостоятельно настраивать и соединять все эти уже привычные специалистам технологии в единую отлаженную систему.

Итак, под капотом как мы видим, никакого «самосбора» — все базируется на уже стандартных и распространенных новейших технологиях на базе .NET. Это весьма и весьма серьёзное отличие от FileMaker, который для достижения всей необходимой, во многом подобной гаммы функциональности намертво привязывает вас к своим многочисленным «велосипедам». В качестве примера — в FileMaker свой собственный закрытый формат БД (кто-нибудь знает, хотя бы как называется этот движок?), и хотя тут есть возможность теоретического подключения к сторонним СУБД, например к MySQL, всё-таки это смотрится как нестандартное и отчасти мудрёное решение. LightSwitch в этом плане полностью открыт мировым стандартам, кроме того базируется на хорошо известных и весьма мощных технологиях — общих для всех инструментов и платформ Microsoft. И даже более того...

Конструктор типовых приложений с возможностью его расширения

И даже более того — он не фиксирует вас намертво лишь на своем уровне разработки приложения, вы всегда можете дописать (доработать, модифицировать) какую-то его часть на привычной вам Visual Studio, если это того стоит!

Несмотря на все мои симпатии к FileMaker — ничего подобного там просто нет. Microsoft воспользовалась своим излюбленным коньком, извлекая конкурентные преимущества из тихой интеграции со своими другими, уже признанными и топовыми разработками, которые вытягивают за собой буквально за уши её новый и малоизвестный продукт (например, как IE в своё время был стремительно раскручен по всему миру просто после его интеграции с очередным Windows).

Снова взгляните на диаграмму приведенную выше: получается, что у LightSwitch обеспечена прекрасная перекрёстная интеграция как в левую — «офисную часть», так и в правую — для возможности разработчиков подрихтовать какие-то особенно требовательные или сложные части своего LightSwitch-приложения через мощную Visual Studio.

Впрочем, давайте об этом последнем аспекте более последовательно и по порядку...

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

Microsoft Visual Studio LightSwitch (VSLS) — как видно из его полного официального названия, — это продукт являющийся частью Visual Studio. Я уже упоминал выше, что, несмотря на это, он стоит особняком, и вероятно с логической точки зрения это действительно имеет определенный смысл. Если составляющие Visual Studio — это чисто классический программистский инструментарий для разработки, то LightSwitch, формально, будучи частью Visual Studio с 2011 года, поставляется всё-таки отдельно.

Исходя из этого, есть два варианта работы с LightSwitch: это standalone-вариант использования этого продукта, когда эта RAD (а именно к этому классу наравне со своими братьями по Студии относится LightSwitch) устанавливается как отдельный продукт и запускается как полностью самодостаточная среда разработки. И второй вариант — это плагин для Visual Studio, своего рода надстройка над традиционной Студией, которая позволяет свести воедино в одной среде разработки все инструменты и возможности, как от LightSwitch, так и от C#/Vb.NET, этим позволяя выборочно и попеременно выполнять часть работ по строительству одного приложения в рамках возможностей LightSwitch, произвольно совмещая с возможностью использования, например, C# в отдельных и наиболее узких, специфичных местах программы.

Помните старые времена и программы написанные на так называемом «симблере», когда приложение на С/С++ разбавлялось в критичных местах многочисленными ассемблерными вставками? Здесь действует аналогичный принцип — полностью визуально-шаблонное конструирование всей стандартной функциональности может разбавляться вставками-обработчиками написанными на чистом C#, для придания большей гибкости итоговому приложению.

Ниже на скриншоте видно, как в исходной точке создания LightSwitch-приложения в варианте MS Visual Studio AddIn я выбираю язык привязки этого приложения (в LightSwitch доступны лишь два основных .NET-языка: C# или Vb.NET) .

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

В качестве заключения для этого пункта — маленькая цитата от активного пользователя этой системы, в которой профессиональный программист А. А. Станиславский (надо полагать никак не связанный «с тем самым Станиславским»), ныне занимающий должность главного программиста управления разработки Главного управления Банка России, так кратко резюмирует общий подход LightSwitch:

«Основные интересные свойства Microsoft Visual Studio LightSwitch — стремительное сокращение времени создания пользовательского интерфейса, интеграция с внешними системами с помощью веб-сервисов, автоматическое создание подсистем безопасности. Эти и некоторые другие свойства продукта позволяют разработчику сразу сосредоточиться на специальной логике приложения и буквально в считанные часы создавать полноценные бизнес-решения».

Как мы видим, даже люди из Главного управления Банка России активно пользуются всеми преимуществами гибкого подхода LightSwitch, несмотря на то, повторюсь, что этот продукт, в общем-то, центрирован на «непрограммистах, желающих быстро и легко создавать приложения при минимуме необходимых знаний».

LightSwitch Microsoft Visual Studio LightSwitch 2011 2013 визуальное программирование конструктор .NET для новичка для детей RAD разработка программирование VPL среда разработки дшпреыцшеср

Как вариант, LightSwitch можно использовать как средство прототипирования приложений, чтобы продемонстрировать его будущим пользователям, а затем постепенно наращивать мясо его функциональности уже в Visual Studio Professional, используя первоначальное LightSwitch—приложение в качестве заготовки для старта проекта. От себя также добавлю, что здесь также допускается использование всего многообразия существующих стандартных .NET-компонент, для ещё большего расширения функциональности и возможностей этого продукта.

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

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru pikabu.ru blogger.com liveinternet.ru livejournal.ru google.com bobrdobr.ru yandex.ru del.icio.us

Подписка на обновления блога → через RSS, на e-mail, через Twitter
Теги: , , , , , ,
Эта запись опубликована: Среда, 20 июня 2012 в рубрике ПрограммированиеОбзоры.

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

Не регистрировать/аноним

Используйте нормальные имена. Ваш комментарий будет опубликован после проверки.

Зарегистрировать/комментатор

Для регистрации укажите свой действующий email и пароль. Связка email-пароль позволяет вам комментировать и редактировать данные в вашем персональном аккаунте, такие как адрес сайта, ник и т.п. (Письмо с активацией придет в ящик, указанный при регистрации)

(обязательно)


⇑ Наверх
⇓ Вниз