Microsoft visual studio lightswitch 2018 - програмні продукти
Чи пробували ви коли-небудь створювати додаток з введення інформації? Наприклад, для секретаря, щось на зразок обліку карток прийшла кореспонденції? А так щоб був словник кореспондентів? Пару-трійку екранів звітів, по необробленим листів і кореспондентам? І ще непогано було б пов'язати це додаток з вашої БД маркетингового відділу. При уявній простоті ця задача тягне за собою величезну кількість варіантів реалізації, технологічних рішень і прийомів. А хотіли б вирішувати такі завдання, зосереджуючись лише на визначенні даних і невеликих доробках?
Що ж таке LightSwitch і чому він дозволяє швидко створювати додатки
Давайте повернемось до нашого прикладу який був приведений в самому початку. На основі визначення даних побудуємо додаток:
завантажуємо і запускаємо LightSwitch

створюємо проект і визначаємо дані за допомогою бізнес-типів для яких відразу ж можемо визначити деякі правила валідації.

визначаємо зв'язку між таблицями

(Не обов'язково) підключаємо зовнішні, вже існуючі джерела даних

на основі визначень даних генеруємо екрани користувача

запускаємо готове додаток

Час, який потрібен на отримання працюючого прототипу на основі структури даних, буквально вимірюється хвилинами. Окремо хотілося б відзначити, що продукт і його документація повністю локалізовані.
Багатьом цікаво, що ж "під капотом" у LightSwitch, на основі яких технологій і архітектурних рішень він побудований. Середовище виконання LightSwitch побудована за класичною триланкової архітектурі. Презентаційний шар вирішує завдання взаємодії з кінцевим користувачем, і основні функції які він виконує - візуалізація, редагування і введення даних. Логічний шар обробляє запити від клієнта по редагуванню, вибірці даних і іншими операціями. Головна мета цього шару - захистити дані від прямого зміни. Це дає можливість бути впевненим в цілісності і безпеки даних. І нарешті, шар даних призначений для зберігання структурованої інформації.

Дизайн таких триланкових додатків може бути досить складним завданням. Кожен шар може бути створений з величезною кількістю технологічних рішень і прийомів. Кожен шар так само може вимагати різних підходів щодо розгортання та управління під час експлуатації. І нарешті, кожен шар повинен вміти "розмовляти" один з одним з урахуванням забезпечення безпеки.

З'єднуємо все разом
Ретельно "підігнані" один під одного компоненти LightSwitch дозволяють зосередитися саме на реалізації бізнес складової рішення, не замислюючись про багатьох нюансах. При цьому є можливість навіть не вдаватися до Visual Studio, здійснюючи настроювання програми та форм даних під час налагодження!

На основі взаємозв'язків даних, а так само параметризації запитів, можна створювати повноцінні рішення, вдаючись до програмування тільки в рідкісних випадках. Але і в таких випадках LightSwitch дозволяє зробити дуже багато, так як програміст забезпечений великою кількістю синхронних (перехоплюючих) і асинхронних (повідомляючих) обробників подій:

Крім очевидних речей, пов'язаних із зовнішнім виглядом додатки, також реалізовані горизонтальні компоненти, такі як управління доступом. Після попереднього налаштування у властивостях проекту LightSwitch досить додати в екрани форм перевірку наявності дозволів у користувачів, після чого в режимі адміністрування в екрані управління користувачів роздати їм необхідні права:

Питання розгортання точно так же вирішуються за допомогою лаконічного і простого помічника, який допоможе розгорнути додаток локально, на IIS сервері або навіть в Azure:


LightSwitch це дуже цікавий інструмент призначений для вузького але все ж популярного спектра завдань - швидкого створення бізнес додатків. Це засіб бере на себе всі рутинні операції по розробці бізнес-додатків, надаючи користувачам можливість зосередитися на унікальній бізнес-логікою, відповідної їх вимогам. Незважаючи на гадану простоту, LightSwitch дозволяє вирішити безліч завдань за допомогою стандартних засобів настроювання, а при необхідності розширювати функції за допомогою програмування і додаткових компонент.