Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

LightSwitch, rapide comme ... allumer une lumière.

[new:30/03/2011]LightSwitch ? Vous ne connaissez pas encore ? Un peu normal, la beta 2 vient juste de sortir. Il s’agit d’un nouveau type de projet pour Visual Studio permettant de créer des applications de type LOB (Line of Business) en un claquement de doigt, ou plutôt un cliquetis de souris. Aussi bien pour le Web, le Cloud, en mode Silverlight ou WPF desktop !

LightSwitch et le LOB

Line of Business ... LOB. Un terme qui revient beaucoup en ce moment alors qu’en soi il s’agit d’une vieillerie, vieille comme l’informatique de gestion. On pourrait traduire LOB par “ligne d’applications pour l’entreprise”. Bref, de l’informatique de gestion.

Vieux terme mais idées nouvelles...

En effet, LightSwitch est une sorte de gros “expert” qui permet de créer une application (simple au départ) de gestion sans rien programmer.

L’esprit LightSwitch

En gros, vous créez un nouveau projet dans VS, et vous choisissez LightSwitch comme vous choisiriez Silverlight ou WPF. Le choix offre un mode C# ou VB.NET comme ça tout le monde est content.

La première question que pose la création de projet c’est de savoir si vous utilisez une base de données existante ou si vous désirez créer une nouvelle table (dans une nouvelle base). Des dialogues s’enchainent pour vous aider à créer la table, dire comment vous souhaitez valider les champs, etc.

Et puis F5 et c’est tout...

SNAGHTML2aa81f9

On peut créer des enregistrements, les effacer, les modifier et faire des recherches. Toutes les bases d’une application de gestion sont là. Même la “coquille”.

Le modèle LightSwitch

Une application de gestion ce sont des données et des écrans. LightSwitch est une sorte de Wizard spécialisé pour produire automatiquement les bases d’une application suivant ce modèle. Des tables, des données, des écrans en face pour les manipuler. Le tout à l’intérieur d’une coquille standardisée, avec des onglets et un système de navigation.

Bien entendu tout cela est modifiable. Plus fort, les écrans sont personnalisables au runtime (en mode debug au moins).

Les personnalisations

Le premier niveau s’effectue par simple accès à des écrans de paramétrage comme je viens de le dire, mais, bien entendu, il est possible d’aller plus loin. De modifier le xaml produit, d’ajouter des extensions. D’ailleurs des composants très spécialisés sont fournis ou seront fournis avec LightSwitch pour couvrir les besoins les plus courants. Sinon il suffit d’écrire des extensions, de templater etc.

Multi source, Multi cible

Un des aspects fondamentaux de LightSwitch c’est d’être à la fois multi source et multi cible. Je m’explique.

Par multi source j’entends que par simple paramétrage une application LightSwitch peut utiliser aussi bien une base de données existante qu’en créée une nouvelle tout autant que d’utiliser des données dans le Cloud. Le système a même été optimisé pour Azure.

Par multi cible je veux dire que par simple paramétrage vous pouvez choisir de produire une application Silverlight pour le Web, une application desktop 2 tiers ou une application desktop 3 tiers ! On peut changer d’option à tout moment, il suffit de recompiler... Incroyable non ? !

image

Plus d’information et téléchargement

Je vous conseille d’aller directement à la source, dans le blog de l’équipe. Notamment les billets suivants :

Introduction au concept : Introducing Microsoft® Visual Studio® LightSwitch™

Survol de l’architecture : LightSwitch Architectural Overviews

Les infos de la beta 1 : LightSwitch Beta1 Now Available, Building Your First App

Les dernière infos sur la beta 2 : Announcing Microsoft® Visual Studio® LightSwitch™ Beta 2

Conclusion

Comme tout “générateur d’application” ne vous attendez pas à ce que LightSwitch vous produise en un clic des applications de gestion ultra customisées avec un look xaml d’enfer bourré d’animation trop top et d’effets spéciaux à couper le souffle. Ce n’est pas son but.

En revanche, si vous avez besoin de produire rapidement les bases d’une application de gestion avec tous les écrans dit de “maintenance” de toutes les tables de référence, la gestion des utilisateurs, la mise en place d’une coquille cohérente et fonctionnelle, le tout qui puisse en un clic marcher aussi bien sur le Web qu’en desktop en local ou dans les nuages, alors LightSwitch vous fera gagner un temps fou.

Et comme tout cela n’est pas qu’une boite noire, mais bien une architecture évolutive et extensible, comme tout cela reste du .NET, du C# (ou du VB.NET), du Xaml, vous restez maitre du devenir du projet. Pas de surprise sur telle ou telle impossibilité. Bien entendu certaines choses dépendent du mode choisi. Par exemple, de base, les recherches, les tables ou sélections sont exportables vers Excel, une option qui disparait dans le mode Silverlight car ce dernier, de base, ne permet pas d’accéder par COM aux autres applications. LightSwitch ne va pas jusqu’à proposer au sein de chaque mode un “sous mode” comme pourrait l’être de l’OOB avec privilèges élevés sous Silverlight (ce qui permettrait de revenir sur la fonction d’exportation Excel par exemple). N’exagérons rien non plus...

LightSwitch est une possibilité de plus pour créer rapidement des applications fonctionnelles du type de celles consommées tous les jours en entreprise. S’ajoute la possibilité d’avoir des données locales, distantes sur le réseau ou dans les nuages. C’est donc une architecture à ne pas négliger et à tester dans tous les cas !

Et Stay Tuned par Toutatis !

blog comments powered by Disqus