ORSYS, La Grande Arche, Paroi Nord, 92044 Paris La Défense cedex. Tél : +33 (0)1 49 07 73 73. Fax : +33(0)1 49 07 73 78 page 1
Stage pratique de 2 jour(s)
Réf : FON
Participants
Développeurs et architectes
logiciels.
Pré-requis
Bonnes connaissances du
Framework .Net (ASP.Net,
WPF, TPL, RX) et de Visual
Studio.
Eligible DIF
F# et programmation fonctionnelle, prise en main
OBJECTIFS
La programmation fonctionnelle connaît un renouveau grâce à ses caractéristiques et points forts qui
répondent à plusieurs problématiques actuelles de conception logicielle. Ce stage vous en présentera les
paradigmes et vous permettra de les implémenter avec le nouveau langage F# de la plateforme .NET.
1) Introduction à la programmation fonctionnelle
avec F#
2) Prise en main du langage F#
3) Panorama des techniques de programmation
avancées
4) Construire des applications avec F#
Méthodes pédagogiques
Cours théorique accompagné d'exemples et de démonstrations. Ateliers de mise en oeuvre s'appuyant sur
des cas réels et des problématiques rencontrées en entreprise.
Travaux pratiques
Développement d'applications en F# sur cas concrets.
1) Introduction à la programmation fonctionnelle avec F#
- Les principes de la programmation fonctionnelle. Les paradigmes sous-jacents.
- La programmation fonctionnelle en .NET. L'environnement. Les possibilités offertes par la plateforme .NET.
- Vue générale du langage F# et de son écosystème.
- Pourquoi utiliser le langage F# ? Pour quoi faire ? Un petit historique.
- Les points forts du langage F#. Avantages et inconvénients.
- Impacts sur la façon de concevoir.
Travaux pratiques
Démonstrations et tests d'applications.
2) Prise en main du langage F#
- Prise en main de l'environnement et des outils.
- Les bases du langage. Comment écrire un programme simple.
- Les types.
- Travailler avec les collections.
- Active Patterns, Quotations...
- Programmation impérative. Les principes de base avec F#.
- Interopérabilité avec .NET. L'intégration à l'écosystème .NET.
- Mode Interactif et Scripting.
Exercice
Prise en main de l'environnement. Construction d'un programme de base (fonctions, collections).
3) Panorama des techniques de programmation avancées
- Programmation asynchrone avec les workflows asynchrones.
- Créer des interfaces utilisateurs : pour le Web, WPF et les applications Windows, les graphiques et
l'interactivité.
- Algorithmique et Intelligence collective.
- Programmation scientifique et unités de mesure.
- Evénements F# et Rx (.NET Reactive Extensions).
- Programmation parallèle avec la TPL (.Net Task Parallel Library).
- Conception multi-agent avec le modèle Acteur.
- Language Oriented Programming et DSL (Domain Specific Languages).
Exercice
Algorithmes et unités de mesure. Démonstration d'un automate cellulaire.
4) Construire des applications avec F#
- Les domaines d'application du langage F#.
- Gérer des projets en F# et les structurer.
- Construire une application e-Commerce ASP.NET MVC 3.
- Construire un moteur de recommandations pour un site e-Commerce.
- Construire un client Twitter WPF.
- Construire une application d'analyse des données d'un jeu de hasard.
Travaux pratiques
Développement d'applications basées sur des cas concrets.