Télécharger la présentation
Publié parChantal Salomon Modifié depuis plus de 10 années
1
Meta-programmation Matthieu MEZIL - Infinite Square
MVP C# - INETA speaker
2
Développement d’une application de gestion orientée données
Où est la valeur pour le client ? Persistance Règles métiers UI La « plomberie » n’a pas de valeur pour le client
3
Développement d’une application de gestion orientée données
Pourtant la « plomberie » représente une partie très importante du temps de développement du projet est la partie la plus technique englobe à elle seule la quasi-totalité du risque
4
Quels sont les risques ? Sous-estimation du temps de développement
Sous-estimation de la complexité technique échec du projet impact sur le temps de développement Impact sur les performances du code
5
Qu’est-ce que la méta-programmation peut apporter ?
Avec la méta-programmation il est possible de générer la « plomberie » Augmentation considérable de la productivité Réduction drastique du risque Augmentation de la maintenabilité et diminution du risque « effet de bord »
6
Pourquoi la méta-programmation est-elle si peu développée aujourd’hui ?
L’idée de la méta-programmation n’est pas nouvelle Par le passé : rarement un franc succès Rarement très performant Difficile à customiser Prenant rarement en compte les règles métiers Imposant le plus souvent un formalisme restreint
7
Qu’est-ce qui a changé ? Microsoft permet aujourd’hui une méta-programmation mâture Les développeurs peuvent personnaliser très facilement le code généré Visual Studio permettant permet de régénérer l’ensemble de la « plomberie » sans avoir à se soucier de l’impact de notre modification Une technologie (Roslyn) nous permet d’analyser le code source. Ecriture de règles métier en C# (i.e. sans aucune contrainte)
8
Qu’est-ce qu’il est possible de faire maintenant ?
Construire un meta-framework génère l’ensemble de la « plomberie » en se basant sur les dernières technologies de Microsoft Tout en assurant un code généré optimal Tout en permettant la customisation Tout en restant flexible L’intégration pour les développeurs est simple
9
WAQS Application Scaffolding feedbacks clients
« WAQS est une innovation, aucune autre société ne peut concevoir un système avec autant de règles et si peu de code à écrire. » (Responsable R&D) « WAQS est une révolution pour les développeurs et apporte un gain de productivité exceptionnel » (Architecte) « On passe plus de temps sur le métier et moins sur la technique » (Chef de Projet) « WAQS génère du code plus performant que celui qu’on aurait écrit manuellement alors pourquoi s’en passer ? » (Développeur senior)
10
Meta-programmation Matthieu MEZIL - Infinite Square
MVP C# - INETA speaker
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.