Nos formations

5
Yes
detail
detail
None
1
1000000
/catalogue-des-formations/
Detail

Catégories:

Dev Logiciel
Dev Logiciel
Développement Front End - Angular : développer une application Web (3 jours)
1290 € H.T

Accessible aux personnes en situation de handicap

Objectifs

Tandis que la première version d’Angular s’était imposée pour développer des applications web facilement en JavaScript, ses successeurs Angular 2, 4, 5 et 6 dont les versions stables sont maintenant disponibles (et déjà utilisées en production sur certains produits Google), va encore plus loin : meilleures performances, utilisation de la nouvelle version de JavaScript (ES6/ES2015), meilleurs outils de développement, server-side rendering… Toutefois, la syntaxe a beaucoup changé. Que vous utilisiez déjà ou non Angular, passez à la vitesse supérieure pour vos développements JavaScript avec Angular.

Concrètement, à l’issue de ce cours, les participants auront acquis les connaissances et compétences nécessaires pour :

  • Construire une application Angular (version 2 et plus)
  • Programmer avec le langage Typescript
  • Anticiper les problématiques liées au déploiement dans le SI

Programme détaillé

Structure d’une application Angular

  • Le langage TypeScript
  • Première application avec Angular Cli
  • Évolutions et disparitions depuis Angular JS

Les composants

  • Principes généraux d’Angular
  • Templates, nouvelles syntaxes
  • Styles du composant
  • Nouvelles directives du framework
  • Cycle de vie des composants

Injection de dépendances

  • Principes du mécanisme d’injection
  • Annotations et décorateurs
  • Configuration de l’injecteur dans Angular

Syntaxe du template Angular

  • Interpolation
  • Réutilisation de composants
  • Les bindings
  • Les directives structurelles
  • Gestion des événements
  • Les Pipes

Les formulaires Angular

  • Formulaires Template-driven
  • Formulaires Model-driven
  • La directive ngModel
  • Validation personalisée
  • Autres apports du module @angular/forms

Accès au réseau

  • Les Observables dans Angular
  • Les Promises
  • Gestion de la sécurité
  • Dévelopement et déploiement avec ou sans CORS

Le routage Angular

  • Déclarer ses routes
  • Configuration du routeur
  • Application Universelle côté serveur

Tests

  • Le moteur de tests Karma
  • Le framework Jasmine
  • Tests de composants
  • Tests End to End

Études de cas

Réalisation d’une application de gestion de tâches (Todo List) améliorée, collaborative et temps réel à la Trello.

  • Création, suppression, mise à jour et modification d’une tâche (CRUD)
  • Partage des tâches en équipe, collaboration sur les tâches
  • Gestion de droits de lecture et écriture

 

Réalisation d’une application de réseau social simplifié à la Twitter.

  • Affichage temps réel et mise à jour du flux d’informations
  • Publication, réactions aux messages
  • Ajout / Suppression / modification d’entrée dans l’agenda
  • Détection de collision d’événements
  • Personnalisation du style de l’agenda
Introduction à la programmation avec Java (2 jours)
990 € H.T

Accessible aux personnes en situation de handicap

Ce stage vous permettra de comprendre les fondements de la programmation et de l’algorithmique. Vous acquerrez des bases en programmation qui vous permettront d’aborder n’importe quel langage dans les meilleures conditions. Tous les aspects essentiels seront vus : les modèles de programmation, les éléments de lexique et de syntaxe, les outils, l’organisation du code, l’accès aux bases de données et les tests.

Objectifs pédagogiques

  • Structurer des programmes selon un algorithme
  • Maîtriser les éléments de lexique et de syntaxe d’un langage pour écrire un programme
  • Compiler et exécuter un programme
  • Déboguer et tester un programme
  • Accéder à une base de données
  • Comprendre les grands principes de la Programmation Orientée Objet

Travaux pratiques

Ce stage contient plus de 60 % de travaux pratiques effectués selon les besoins en Visual Basic (cours réf INP), en Java (cours réf INJ), en C# (cours réf OGR) ou en Python (cours réf THO).
PROGRAMME DE FORMATION

Les fondements de la programmation

  • Qu’est-ce qu’un programme ? Qu’est-ce qu’un langage ? Les différents paradigmes. Quel langage pour quelle application ?
  • Les compilateurs. Les exécutables.
  • Les responsabilités d’un programmeur.
  • Qu’est-ce qu’un algorithme ?
  • Les besoins auxquels répond un algorithme.
  • Le concept de pseudo-langage.

Travaux pratiques
Présentation de différents langages (Java, C#, Visual Basic, C, C++). Ecriture d’un premier algorithme en pseudo-langage.

Genèse d’un premier programme

  • Ecriture d’un programme simple : syntaxe et instructions.
  • Compilation et exécution du programme.
  • Qu’est-ce qu’une librairie ? Son rôle, son usage.

Travaux pratiques
Découverte de l’environnement de développement et d’exécution. Ecriture, compilation et exécution d’un premier programme.

Règles de programmation

  • Convention de nommage.
  • Convention syntaxique.
  • Utilisation des commentaires. Pourquoi commenter les développements ?
  • Améliorer la lisibilité des programmes : indentation du code, découpage du code…

Les variables

  • Qu’est-ce qu’une variable ?
  • Pourquoi typer une variable ?
  • Les types primitifs : entiers, chaînes de caractères, nombres réels, autres.
  • Déclaration, définition et initialisation d’une variable.
  • Les constantes.
  • Saisie, affichage, affectation, conversion de type.
  • Organiser ses données sous forme de tableaux.
  • Les types évolués : enregistrement, matrice, arbre.

Travaux pratiques
Ecriture de plusieurs programmes simples manipulant les variables.

Opérateurs et expressions

  • Les différents opérateurs (multiplicatif, additif, comparaison, égalité, logique, affectation).
  • Combinaison d’opérateurs.
  • Expression booléenne.

Travaux pratiques
Manipulation des opérateurs et des expressions booléennes.

Les structures de contrôle

  • Les sélections alternatives (si, si-alors-sinon, sélection cas).
  • Les blocs d’instructions (notion de Début… Fin).
  • Les boucles itératives (tant que-répéter, répéter-jusqu’à, pour-de- à).
  • Imbrication des instructions.
  • Les commentaires.

Travaux pratiques
Utilisation des structures de contrôle pour implémenter un algorithme.

Les procédures et les fonctions

  • Définitions : procédure, fonction.
  • Pourquoi sont-elles incontournables en programmation (réutilisabilité, lisibilité…) ?
  • Le passage de paramètres.
  • Le code retour d’une fonction.
  • Sensibilisation aux limites du passage de la valeur d’une variable.
  • Notion de passage par adresse.
  • Appel de fonctions.

Introduction à la programmation Objet

  • Les concepts associés à la programmation Objet : classe, attribut, méthode, argument.
  • La modélisation Objet à partir des exigences fonctionnelles.
  • Introduction aux bonnes pratiques d’organisation de conception et d’organisation d’un programme.

Travaux pratiques
Illustration des concepts Objets.

L’accès aux bases de données

  • Organisation et stockage des données.
  • Les traitements de base (connexion, requêtes, récupération des données).
  • Application cliente et serveur de données.
  • Affichage et manipulation des données dans l’application cliente.

Travaux pratiques
Création d’un formulaire de recherche d’informations dans une base de données.

Maintenance, débogage et test des programmes

  • Savoir lire et interpréter les différents messages d’erreurs.
  • Utiliser un débogueur : exécuter un programme pas à pas, points d’arrêts, inspecter les variables pendant l’exécution.
  • Prévoir les tests unitaires.

Travaux pratiques
Utilisation d’un débogueur pour contrôler l’exécution des programmes.

Mise à niveau pour les développeurs C# et Java (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Windows 8 a relancé l’intérêt du langage C++ auprès de développeurs pratiquant le C# et Java. Sur la base de vos connaissances objets, ce cours vous assurera une transition douce vers le C++ 11. Vous apprendrez comment C++ et sa librairie standard permettent d’écrire du code efficace et robuste pour vos applications.

 

Objectifs pédagogiques

PROGRAMME DE FORMATION

  1. Rappel des concepts de base du développement C++
  2. Présentation des concepts C++ avancés
  3. Librairie standard : la BCL de C++
  4. Syntaxe C++ avancée
  5. C++ et l’interopérabilité

 

PROGRAMME DE FORMATION

1. Rappel des concepts de base du développement C++

  • Les différents fichiers sources (.h, .cpp…).
  • Linkage et compilation de code écrit en C++.
  • Ecriture de classes et structures : la syntaxe de base.
  • Réutilisation de composants déjà compilés : .lib, .dll, .h etc.

Travaux pratiques
Création d’une solution multi-projets en C++, avec linkage statique et dynamique.

2. Présentation des concepts C++ avancés

  • Instanciation « statique » versus instanciation « dynamique » d’objets.
  • Les différents types de constructeurs (par défaut, par copie…).
  • Gestion de la mémoire sans garbage collector (manuellement ou en utilisant les smart pointers de la librairie standard).
  • Héritage multiple : cas pratiques et pièges à éviter.
  • Les Templates.
  • Orientation objet et comparaison avec C#.

Travaux pratiques
Atelier de manipulation des smart pointers de la librairie standard.

3. Librairie standard : la BCL de C++

  • Représentations mémoires possibles d’une chaîne de caractère et manipulation avec std::string et std::wstring.
  • Introduction à la stl (standard template library).
  • Containers et itérateurs, les collections C++.

Travaux pratiques
Atelier de manipulation de chaînes de caractères et de collections en C++.

4. Syntaxe C++ avancée

  • Inférence de types et mot-clef automatique.
  • Orientation fonctionnelle du langage : Lambdas, Functors… et utilisation avec la stl.
  • Asynchronisme et parallélisation avec C++ 11.
  • Utilisation d’objets COM Microsoft, avec et sans smart pointers.

Travaux pratiques
Exercice d’introduction à la parallel platform library, et manipulation d’expressions Lambda. Cas pratique de consommation d’objets COM, illustration avec Direct 2D.

5. C++ et l’interopérabilité

  • Publication d’objets COM Windows réutilisables.
  • Interopérabilité avec .Net sur le Desktop : C++ CLI.
  • Interopérabilité avec .Net et JavaScript dans les applications Metro : C++ / CX.

Travaux pratiques
Création d’une application métro hybride C# / Xaml + C++ / Direct 2D.

Programmation C++, perfectionnement (3 jours)
1490 € H.T.

Accessible aux personnes en situation de handicap

En constante évolution, le langage C++ offre des mécanismes qui permettent une conception robuste et très riche. Les récentes normes C++ intègrent une part importante des bibliothèques du projet Boost et améliorent notablement la Standard Template Library (STL). Cette formation vous permettra d’approfondir la conception en C++ par l’apprentissage des dernières évolutions du langage et l’utilisation effective de la STL.

Objectifs pédagogiques

  • Découvrir les nouveautés apportées par la version C++11
  • Maîtriser la gestion de la mémoire, des pointeurs et des références
  • Implémenter la généricité en C++
  • Découvrir la bibliothèque standard STL
  • Utiliser la librairie Boost et C++11

Travaux pratiques

Le cours se déroulera sur des stations de travail sous Windows/Visual C++. De nombreux exercices permettront de mettre en oeuvre les thèmes abordés plus spécifiquement sous l’angle de la conception.
PROGRAMME DE FORMATION

Rappels

  • Classes d’allocation mémoire.
  • Construction, initialisation, embarquement d’objets.
  • Les fuites mémoire.
  • Constance, le mot-clé mutable, Lazy Computation.
  • Amitié (friendship) C++ et contrôle d’accès.
  • Destruction virtuelle.
  • Stratégie de gestion des exceptions.
  • Les espaces de nommage (namespace).

Les nouveautés langage de C++11

  • nullptr et autres littéraux.
  • Les directives =delete, =default.
  • Délégation de constructeurs.
  • Les énumérations “type safe”.
  • Le mot-clé auto et boucle sur un intervalle.
  • Référence rvalue et impact sur la forme normale des classes C++.
  • Les lambda expressions.

Travaux pratiques
Réécriture d’un code C++ existant en C++11, comparaison des deux implémentations.

Gestion des opérateurs

  • Opérateurs binaires et unaires.
  • L’opérateur d’indirection, cas d’usage.
  • L’opérateur de référencement.
  • Les opérateurs d’incrémentation/décrémentation préfixés et post-fixés.
  • Les autres opérateurs : comparaison, affectation…
  • La surcharge de l’opérateur [], des opérateurs d’insertion (<<) et d’extraction (>>).
  • Les foncteurs et la surcharge de l’opérateur (), avantage par rapport aux fonctions.

Travaux pratiques
Création de foncteurs et de proxies (libération mémoire, comptage de références) avec les opérateurs étudiés.

Conversion et RTTI

  • Opérateurs de conversion. Constructions implicites, le mot-clé explicit.
  • Les opérateurs de casting const_cast, static_cast, reinterpret_cast.
  • Conversion dynamique et Runtime Type Information.
  • L’opérateur typeid, les exceptions liées.
  • La classe type_info.
  • Contrôle du “downcasting” à l’aide de l’opérateur dynamic_cast.

Travaux pratiques
Mise en œuvre des idiomes “is-a” et “is-kind-of” avec dynamic_cast.

La généricité

  • Introduction aux patrons de classe. Généricité et préprocesseur.
  • Fonction générique. Classe générique. Composition générique. Généralisation générique.
  • Spécialisation partielle et totale.
  • Introduction à la méta-programmation.
  • La généricité, principe fédérateur des librairies STL et Boost.

Travaux pratiques
Démarrage de l’étude de cas qui sera complétée avec la STL et Boost. Mise en œuvre de la composition et de la généralisation génériques. Création de plug-ins génériques.

La STL (Standard Template Library)

  • Composants de la STL : types complémentaires, conteneurs, algorithmes, itérateurs, objets fonctions, les adaptateurs.
  • Les chaînes de caractères STL, la classe template basic_string et ses spécialisations.
  • Les conteneurs séquentiels et associatifs : définition, rôle et critères de choix.
  • Les allocateurs et la gestion de la mémoire des conteneurs.
  • Les méthodes d’insertion, de suppression, d’itération et d’accès aux principaux conteneurs : Vector, List, Set, Stack…
  • Le concept d’itérateur. Parcours d’un conteneur.
  • Les différents groupes d’algorithmes STL : non mutants, mutants, de tri et de fusion, numériques.
  • Manipulation de conteneurs (manipulation, recherche de valeurs…).
  • Paramétrer les algorithmes génériques par des objets “fonction”.
  • Les “adapteurs” et la modification du comportement d’un composant.
  • La STL et les traitements sur les flux (fichiers, mémoire…).
  • Principe du RAII : les pointeurs automatiques et la classe auto_ptr.
  • Les exceptions standard de la STL.

Travaux pratiques
Implémentation des relations avec les collections de la STL. Utilisation d’algorithmes standard quelconques.

Les nouveautés C++11 de la librairie standard

  • Evolution historique : Boost –> TR1 –> C++11.
  • Les nouveaux conteneurs : array, forward_list, unordered_set, unordered_map.
  • La classe tuple.
  • Les pointeurs intelligents (smart pointer) : shared_ptr, weak_ptr, unique_ptr.
  • Les nouveaux foncteurs et binders.
  • Introduction à la gestion des threads.
  • Les expressions régulières.

Travaux pratiques
Mise en œuvre de la robustesse avec les smart pointers. Utilisation d’expressions régulières.

Boost

  • La Pointer Container Library (destruction des données pointées d’un conteneur).
  • Les structures de données boost::any et boost::variant.
  • Programmation événementielle (connexions et signaux).
  • Gestion des processus, mécanismes de communication interprocessus et mémoire partagée.

Travaux pratiques
Amélioration de l’implémentation de l’étude de cas par l’utilisation la Pointer Container Library.

Utilisation avancée de l’héritage

  • Héritage versus embarquement. Héritage privé. Héritage protégé.
  • Exportation de membres cachés avec la Clause Using.
  • Héritage multiple et gestion des collisions de membres.
  • Héritage en diamant. Héritage virtuel et dynamic_cast.
  • Principes de conception : substitution de Liskov, principe d’ouverture/fermeture, inversion des dépendances.
  • Règles d’implémentation des interfaces en C++.

Travaux pratiques
Combinaison de l’héritage multiple, privé et de l’exportation pour concevoir des classes robustes et hautement évolutives.

C++ expert, les avancées du langage (3 jours)
1490 € H.T.

Accessible aux personnes en situation de handicap

Cette formation vous permettra d’assimiler les nouveautés introduites par le standard C++ 2011. Vous découvrirez les expressions lambda, exploiterez les possibilités de la programmation fonctionnelle, maîtriserez la gestion de la mémoire et exploiterez les autres nouveautés de la bibliothèque standard C++.

Objectifs pédagogiques

  • Appréhender les nouveautés et les améliorations du langage C++11
  • Utiliser les lambda expressions
  • Exploiterez les possibilités de la programmation fonctionnelle
  • Maîtriser les allocations-destructions d’objets
  • Développer une application multithreadée

Travaux pratiques

Des exercices pratiques de programmation permettront d’appréhender les différents concepts abordés.
PROGRAMME DE FORMATION

L’avènement de C++11

  • Les différentes normes C++98, C++03 et C++0x, C++11.
  • Les nouveautés de C++11 et les objectifs de cette norme. Le devenir de Boost, STL.
  • La question de la compatibilité des codes anciens.
  • La disponibilité des outils de développement (compilateurs, débogueurs, IDE …).

Travaux pratiques
Vérification de l’outillage à l’aide d’un code C++11 fourni.

Les améliorations du langage

  • Les énumérations fortement typées.
  • Les tableaux à taille fixe.
  • Le mot-clé auto pour simplifier le typage.
  • La boucle basée sur un intervalle.
  • Autres améliorations : templates à arguments variables, pointeur nul, littéraux…

Travaux pratiques
Mise en œuvre des améliorations.

Les modifications au niveau des classes

  • La délégation de constructeurs, les contraintes liées à l’héritage.
  • La nouvelle sémantique du déplacement et le constructeur par déplacement (move constructor).
  • Adaptation de la forme normale des classes aux nouveautés (move constructor).
  • Les directives =delete, =default.
  • Les initialiseurs de conteneurs.
  • LeS données membres.

Travaux pratiques
Création de classes C++11.

L’utilisation des threads

  • Déclaration et exécution d’un thread. Attente de fin d’exécution avec join().
  • La gestion des données locales à un thread, l’usage de volatile.
  • Récupérer un résultat avec future<> et async().
  • Obtenir des informations sur les capacités d’exécution de la plateforme avec hardware_concurrency().

Travaux pratiques
Multithreader un code séquentiel et mesurer le gain en termes de temps d’exécution.

Autres nouveautés de la bibliothèque standard

  • La gestion du temps avec le namespace chrono.
  • Le nouveau conteneur tuple.

Travaux pratiques
Mise en œuvre des nouveautés.

La programmation fonctionnelle avec les lambda expressions

  • Déclaration, typage, implémentation et utilisation.
  • L’intérêt d’auto avec les lambda-expressions.
  • La gestion des fermetures (closures), avec capture par valeur ou par référence des variables liées au contexte.

Travaux pratiques
Exercices de programmation fonctionnelle.

La gestion mémoire et les conteneurs

  • Les smart pointers : shared_ptr, weak_ptr, unique_ptr, auto_ptr. Usage conjoint avec la STL.

Travaux pratiques
Mise en œuvre de la gestion mémoire C++11.

Java orienté objet (3 jours)
1490 € H.T.

Accessible aux personnes en situation de handicap

La technologie Java

  • Historique rapide du monde Java
  • Le JDK, le JRE et la JVM
  • Les plates-formes Java SE et Java EE, les serveurs d’applications
  • L’environnement de développement
    • Le minimum nécessaire
    • Les IDE
    • Le packaging des applications

Constructions de base

  • Organisation du code source, classes et packages
  • Survol : types de base, opérateurs et ruptures de séquence

Programmation orientée objet

  • Classes et encapsulation
  • Surcharge
  • Héritage et polymorphisme
  • Interfaces
  • Exceptions

Aspects avancés

  • Annotations et énumérations
  • Types génériques et collections
  • Classes internes, imbriquées et anonymes
  • Expression “lambda”

Quelques API essentielles

  • Les classes Object, String, Integer…
  • Entrées / sorties de base
  • Tour d’horizon de JDBC

Certification (en option)

  • Nos tests de validation des compétences font partie intégrante du processus d’apprentissage car ils permettent de développer différents niveaux d’abstractions.
  • Solliciter l’apprenant à l’aide de nos QCM, c’est lui permettre d’étayer sa réflexion en mobilisant sa mémoire pour choisir la bonne réponse. Nous sommes bien dans une technique d’ancrage mémoriel.
  • L’examen sera passé à la fin de la formation.

Les + de la formation

L’examen de certification (proposé en option) est en français.

ReactJS, maîtriser le framework JavaScript (3 jours)
1490 € H.T.

Objectifs pédagogiques

  • Développer avec ReactJS
  • Concevoir une SPA avec ReactJS et redux
  • Comprendre le subset JavaScript JSX
  • Optimiser les performances des RIA

Travaux pratiques

Vous réaliserez une application complète basée sur le framework ReactJS.

Méthodes pédagogiques

Développement guidé. 50% de théorie illustrée par 50% de pratique.

PROGRAMME DE FORMATION

Rappels des composants des RIA

  • Les fondamentaux. HTML, CSS, JavaScript. Le DOM.
  • Design patterns applicatifs classiques. Limitations des applications JavaScript.
  • Ecosystème des frameworks JavaScript.
  • Principes de Data-Binding.
  • ReactJS, positionnement et philosophie.
  • JSX, présentation.
  • Environnement de développement. IDE et plug-ins.

Travaux pratiques
Mise en place de l’environnement de développement. Initiation à JSX. Définition de la structure de l\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\’application.

Développer avec ReactJS

  • Approche : Virtual Dom, un choix de performance.
  • Utiliser JavaScript ou JSX.
  • Comprendre JSX en détail. Pièges à éviter.
  • Méthodes principales de l’API.
  • Création de composant de vues. Cycle de vie.
  • Initialisation de propriétés.
  • ”Render Function” : gestion des états de composant.

Travaux pratiques
Définition et réalisation de composants selon les spécifications déterminées.

Interactivité des composants

  • Gestion des événements.
  • Composer par ensembles.
  • ”Component Data Flow” : propriétaire, enfants et création dynamique.
  • Composants réutilisables : contrôle et transfert de propriétés.
  • Contrôle des composants de formulaire.
  • Manipulation du DOM.

Travaux pratiques
Création d’un ensemble structuré de composant UI.

Application monopage avec ReactJS ou Redux

  • Redux : présentation. Propagation de données.
  • Rôle du ”Dispacther” dans Redux pour les actions.
  • Les ”Stores”, gestionnaire d’états logique dans Redux.
  • Définition du Functionnal Programming.
  • Approche avec Redux. Le ”Reducer”.
  • Extension pour ReactJS : ”hot-loader”. (optionnel)

Travaux pratiques
Intégration d\\\\\\\\’une SPA.

Introduction à React Native

  • Positionnement, différences avec Cordova.
  • De React aux composant iOS natifs, un projet à suivre.

Démonstration
Application utilisant React Native.

Node.js - Développement d'applications Web (3 jours)
1190 € H.T.

Accessible aux personnes en situation de handicap

Objectifs de cette formation Node.js

  • Développement d’applications Web
  • Découvrir et comprendre les principes et le fonctionnement de Node.js
  • Se familiariser avec les composants de la plate-forme
  • Savoir mettre en oeuvre node.js pour tirer profit de la puissance du JavaScript côté serveur
  • Connaitre les meilleures pratiques de développement avec Node.js

(JOUR1) INTRODUCTION

  • Historique rapide
  • Panorama rapide

PRINCIPES GÉNÉRAUX

  • Fonctionnement interne
  • Exemples d’applications
  • Avantages et inconvénients
  • Installation et découverte
  • Application “hello world”

LES MODULES

  • Se servir des modules de base
  • NPM

SERVEUR WEB

  • Ma première application web
  • Gérer les requêtes et les réponses HTTP
  • Routage des URLs
  • Opérations bloquantes et non-bloquantes

(JOUR 2) EXPRESS

  • Paramétrage
  • Gestion des requêtes HTTP
  • Sessions
  • Templating

BONNES PRATIQUES DE DÉVELOPPEMENT

  • Organisation (modules, routes, etc.)
  • Code

AUTRES COMPOSANTS

  • Socket.IO
  • Connect
  • Async

(JOUR 3) TESTS

  • Assert / expect.js
  • Mocha / Zombie
  • PhantomJS / CasperJS

PERFORMANCES

  • Ssingle-thread et event-loop
  • Communication inter-processus
  • Redis
  • Le module “cluster”
Formation React Native, développer des applications mobiles natives
1690 € H.T.

Réconciliant les développeurs d’applications natives et hybrides, React Native est devenu un framework de référence pour la création d\\’applications mobiles multiplateformes. Cette formation vous permettra d’acquérir les compétences nécessaires pour concevoir des applications compatibles avec iOS, Android et Windows.

Objectifs pédagogiques

  • Mettre en place un environnement de développement React Native
  • Concevoir l\\’architecture logicielle d’une application mobile multiplateforme
  • Construire une interface utilisateur fluide et performante
  • Utiliser les principaux composants et les API natives proposées par React Native
PROGRAMME DE FORMATION

Introduction

  • Le développement natif, l’hétérogénéité et la fragmentation.
  • Les principaux outils cross-platform.
  • Positionnement de React Native par rapport aux solutions existantes.

React Native

  • Rappels sur ES6/S201x. Notion de transpileur.
  • React et le superset de JavaScript JSX.
  • React Native : principes clés, fonctionnement général.
  • Installation et configuration de React Native.
  • Outils de développement et de debug.

Travaux pratiques
Installation et configuration de React Native. Maîtriser le debugger.

Architecture d’application

  • Configurer un composant : state & props.
  • React Native et MVC.
  • Le pattern Flux, une alternative au MVC.
  • L’arrivée de Redux : le store, le reducer, les actions.

Travaux pratiques
Initialisation d’un projet React Native. Configuration d’un composant.

Construire son interface

  • Les composants de base (View, Text et Image) et leurs cycles de vie.
  • Les événements Touch, la ListView et la ScrollView.
  • Organiser le layout de l’application. Mise en page avec Flexbox.
  • Styler les composants.
  • Les différentes solutions de navigation entre les pages.
  • Composants avancés.
  • Utiliser des composants de la communauté.
  • Ajouter des animations et des transitions.

Travaux pratiques
Développer une première application.

Les formulaires et la gestion des données

  • Les principaux composants de formulaires.
  • La validation de la saisie et la gestion des erreurs.
  • Redux-form et alternatives.
  • Récupération des données : xmlhttprequest et fetch.
  • Le stockage local.
  • La gestion offline.

Travaux pratiques
Développer un formulaire, valider les données et assurer la persistance des données.

Interagir avec le terminal

  • Les principales API natives de React Native.
  • Utiliser les plugins Cordova/PhoneGap.
  • Développer un module natif.

Travaux pratiques
Implémentation des principales API natives.

Usages avancés

  • Best Practices et erreurs fréquentes.
  • Tests unitaires et fonctionnels.
  • Publier l’application.
  • Mises à jour Over The Air.
  • Frameworks et outils complémentaires.

Travaux pratiques
Tester et déployer des applications React Native.

Outils devops
1890

Accessible aux personnes en situation de handicap

Objectifs pédagogiques

  • Découvrir l’origine et les principes du mouvement DevOps
  • Appréhender les enjeux et les pratiques du DevOps
  • Évaluer et s’approprier les principaux outils Open Source pour DevOps ainsi que leurs limites
  • Savoir identifier les outils nécessaires et leurs usages au sein de l’usine logicielle
  • Identifier les étapes de mise en œuvre de la démarche, incluant l’anticipation des risques.

Méthodes pédagogiques

L’évaluation des acquis se fait tout au long de la session au travers d’études de cas et d’échanges ciblés.
PROGRAMME DE FORMATION

DevOps, enjeux, origine et fondamentaux

  • Mutations engendrées par la (r)évolution digitale et les nouveaux challenges associés.
  • Solutions : méthodes Agiles et DevOps.
  • Différences avec les DSI traditionnelles.
  • Généalogie de DevOps : Méthodes Agiles et Lean Manufacturing.
  • Fondements du mouvement DevOps.

DevOps, de l’expression des besoins jusqu’à la production

  • Fonctionnement et procédés clés de la DSI DevOps.
  • Constituer des équipes pluridisciplinaires. L’apprentissage continu.
  • Construire la chaîne de productions logicielles et pratiques associées.
  • Sûreté de fonctionnement, feedbacks et amélioration continue.
  • Adapter la gouvernance : passer à une structure innovante.
  • Engagement de tous, le vrai défi pour les managers.
  • Faire évoluer les postures.
  • Management de la transformation DevOps : accompagner l’évolution.

Réflexion collective
Évolution culturelle de l’entreprise : freins et solutions.

Outils, positionnement, caractéristiques, risques et limites

  • Gestion des exigences, Agile/DevOps (Trello, Wekan, Flowdock, Taiga…). Collaboration (Slack, Hipchat, Rocket.Chat…).
  • Cloud (OpenStack, OpenShift Origin, Cloud Foundry…). Microservices et containers (Docker, Rkt, Kubernetes, Mesos…).
  • Gestion de configuration (GLPI, Fusion Inventory, SpaceWalk…). Gestion de version (Git, Github, Gitlab, Bitbucket…).
  • Intégration continue (Maven, Graddle, Jenkins, GitLab-CI, TeamCity, TravisCI, CircleCI, JUnit, PhPUnit, Mokito…).
  • Gestion des dépôts et d\\\\’environnements (DockerHub/Registry, Artifactory, Infrastructure As Code/Configuration As Code).
  • Automatisation des livraisons (Salstack, Vagrant, Terraform, CFEngine, Capistrano, Rundeck, Ansible, Chef, Puppet…).
  • Automatisation des tests (Fitness, SOAPUI, LynIS, Snort, ZAP, Jasmine, Appium, Selenium, Cucumber, Gatling, JMeter…).
  • Orchestration de release. Surveillance continue : monitoring/alerting et dashboard (ELK, Zabbix, Nagios…).

Etude de cas
Analyse des contextes technologiques et industriels variés.

Synthèse

  • Importance de la veille technologique.
  • Points à retenir.
  • Conclusion.
React Initiation et option Approfondissement (4 jours)
1990

Accessible aux personnes en situation de handicap

PROGRAMME JOUR 1 :

  • Prérequis de JavaScript : Rappel
  • Introduction à EcmaScript 2015 (ES6) : Aperçu des fonctionnalités d’ES6 utilisable et TP pratique.
  • Introduction à React : Concepts de base, Composants à l’état, Performance, Rendu
  • Les choix de React : Le ‘V’
  • React combiné avec des frameworks JS : Possibilité
  • Installation React : Les Modes d’installation avec Babel, Webpack et create-react-app
  • Syntaxe JSX
  • Cas pratique : TP

PROGRAMME JOUR 2 :

  • Architecture de React : React et Flux
  • Vues (V) : fonctionnement, implémentation
  • Implémentation des vues : affichages, saisies, actions, binding et filtres
  • Composant React : propriétés, état, évènements, style
  • Cycle de vie d’un composant : comprendre les cycles, les méthodes ( Mounting, Updating, Unmounting…).
  • Navigation React : React-router, organiser les routes, liens vers les routes et composants
  • Introduction au framework Redux : stats , actions, store, disptacher
  • Fetch d’une API
  • Cas pratique : TP

PROGRAMME JOUR 3 : 

  • Mise en pratique : Création d’un mini-projet  : shopping cart ( système de panier )

PROGRAMME JOUR 4 (Option Approfondissement):

  • Inroduction à REDUX
  • Les tests unitaires React : Jest, Enzyme, Mocha, Jsdom
  • Debugging(Déboguer Redux) : Redux DevTools
  • Extension pour ReactJS : ”hot-loader”
  • Normes de Sécurité OWTF
  • Middelware personnalisé avec React/Redux
Développer ses applications mobiles Android (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Objectifs

Un Développeur d’Applications Mobiles est capable de développer et d’implémenter des solutions mobiles.

Ce professionnel est en mesure d’utiliser la solution Worklight Foundation pour développer des applications clients d’une part, et par ailleurs, côté serveur, développer des composants d’intégration et de sécurité, puis tester et déployer des applications Worklight Foundation.

Il maîtrise les capacités d’IBM Worklight Foundation et sait les utiliser pour développer des applications pour mobile en utilisant une approche de codage hybride. Il détient une vue d’ensemble d’IBM Worklight Foundation et de Worklight Studio. En outre, il manipule les API (Application Programming Interfaces) essentielles et les outils qui permettent le développement, l’intégration complète, la sécurité et la gestion d’applications multi-plateforme.

 

Contenus

1) Présentation

Modèle Android et son architecture

2) Mise en place

Environnement de développement
Structure d’un projet Android : découpage, bibliothèques
Les activités : présentation
Cycle de vie d’une application
Packaging, signature et déploiement
Présentation de la publication sur Google Play
Exercice : installation de l’environnement

3) L’environnement de développement

La communication avec le matériel ou l’émulateur par ADB avec ADT
Fenêtres de de débug ; mémoire, threads, logcat
Ajouter des informations de débug
Exercice : début de l’application

4) Activités

Activités et autres contextes
Déclaration d’Intents et résolution
Configuration de l’application
Communication entre activités : paramètres, résultat
Les activités dans leur tâche, ordrage et réordrage
Quitter une application Android
Ressources textuelles, internationalisation
Panorama de différents composants Android : boutons, texte, etc.
Exercice : construction de plusieurs interfaces utilisateurs et gestion des évènements

 

Les points forts de la formation

– Formateur en ligne certifié

– Personnalisation

– Outil pédagogique

– Suivi

formation Webform

Accessible aux personnes en situation de handicap

Objectifs pédagogiques

  • Comprendre l’architecture des applications et des pages ASP.NET
  • Ecrire et utiliser des contrôles serveurs
  • Intégrer des appels asynchrones avec Ajax
  • Travailler les éléments visuels
  • Accéder et lier les composants Web aux données
  • Déployer une application ASP.NET.

Présentation de la technologie ASP.NET

  • Le Framework .NET et ses grands namespaces
  • Les langages supportés
  • L’architecture des pages ASP.NET
  • Le code Behind
  • Principe des contrôles serveur
  • Evénements applicatifs et Gloabal.asax
  • Le maintien des états (viewstate, session, application, cache)
  • Trace et débogage
  • La navigation : transferts et redirection
  • La détection du type de navigateur internet

Les contrôles essentiels ASP.NET

  • Les contrôles de base ASP.NET
  • Les validateurs
  • Les contrôles basés sur des templates

Pages maîtres, thèmes et personnalisation

  • Pages maîtres, création et utilisation
  • La hiérarchie de pages maîtres
  • Les thèmes et skins
  • La distinction avec CSS
  • Les fonctionnalités de personnalisation ASP.NET

Accès et liaison aux données relationnelles

  • Les bases données relationnelles
  • Connexion et fournisseur de données
  • Le mode connecté avec la classe “DataReader”
  • Chaînes de connexion : création et stockage
  • Liaison de données avec des collections d’objets métiers
  • Accès générique aux données
  • Le mode déconnecté avec des “DataSet”, les DataSet typés

Création de contrôles personnalisés

  • Les contrôles utilisateurs (.ascx)
  • Contrôles dérivés de WebControl
  • Support du mode design

Création et utilisation des services Web

  • Principes des services Web
  • Architecture XML / SOAP / JSON et métadonnées WSDL
  • Passage des paramètres, retours et types complexes avec SOAP
  • Appel d’un service Web à partir d’une requête HTTP et d’un proxy

Optimisation

  • Utilisation et paramétrage du cache des pages et des contrôles
  • Utilisation par code de l’objet Cache

Déploiement

  • Déploiement avec IIS
  • Les outils standards de déploiement ASP.NET
  • Déploiement avec ou sans pré compilation

Ajax pour ASP.NET

  • Ajax : le principe
  • Implémentation d’Ajax en ASP.NET
  • Mise en oeuvre de base avec le script manager et l’UpdatePanel
  • Tour d’horizon de l’Ajax Control Toolkit
Swift, les bases du langage, environnement apple (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Nouveau langage de programmation créé par Apple, Swift se présente comme une alternative à Objective-C, moderne et plus performante. Vous apprendrez dans cette formation à développer des applications Swift en environnement MacOS. Vous découvrirez les concepts de base de Swift et ses aspects novateurs.

Objectifs pédagogiques

  • Appréhender les concepts de base du langage Swift
  • Créer un projet Swift
  • Utiliser la Swift Standard Library

Travaux pratiques

Exercices pratiques sous MacOS X et XCode 8.
PROGRAMME DE FORMATION

Swift

  • Pourquoi un nouveau langage ?
  • Ses apports et nouveautés.
  • Les playgrounds : terrains de jeu.
  • Intégration aux outils existants.
  • Swift système ouvert.

XCode l’environnement de développement

  • Présentation de l’outil et ses addons.
  • L’utilisation de XCode.
  • Interface Builder et les divers outils disponibles.
  • Le débogueur.
  • Les outils de mesure : instruments.
  • Les portail du développeur Apple.

Travaux pratiques
Mise en place de l’environnement de développement et premier exercice avec XCode et Swift. Utilisation du débogueur.

Les bases du langage Swift

  • Les fonctionnements du compilateur et l’architecture.
  • Les bases : variables, constantes et tuples, les chaînes de caractères.
  • L’optional et sa gestion, l’unwrapped.
  • Les opérateurs et la surcharge.
  • Les structures de contrôle.
  • Les closures et les fonctions.
  • Classes, structures, énumérations, propriétés.
  • L’héritage et les protocoles.

Travaux pratiques
Réalisation de plusieurs applications sur le langage et ses basiques.

La bibliothèque Swift

  • Que contient la Swift Standard Library ?
  • Gestion des tableaux, dictionnaires et Set.
  • Les protocoles Equatable et Comparable : utilisation.
  • Autres classes et structures disponibles.

Travaux pratiques
Mise en oeuvre des protocoles Comparable et Equatable.

Concepts avancés en Swift

  • Les Subscripts : concept et implémentation.
  • La gestion des erreurs et exceptions : try, catch, throw, throws, try, defer.
  • La gestion de l’asynchronisme avec Grand Central Dispatch.
  • La classe Thread, endormir un thread, annuler un thread, notification.
  • Les références strong, weak et unowned.
  • Le Lazy Loading.
  • Créer des extensions en Swift.
  • La généricité et les génériques.

Travaux pratiques
Mise en oeuvre de la généricité et des extensions.

Interaction Swift et Objective-C

  • Comparaison des syntaxes entre Objective-C et Swift.
  • Comparaison des types de données.
  • Mixing and matching.
  • Héritage entre Swift et Objective-C.
  • Points particuliers et limitations.

Travaux pratiques
Mise en oeuvre du mix and matching avec XCode.

Formation C & C++, programmer ses applications en Multicore (3 jours)
1490 € H.T.

Accessible aux personnes en situation de handicap

Vous découvrirez les architectures Multicore et leur programmation, les techniques de mise en œuvre d’une approche multithread ou multiprocessus et les langages dédiés à la programmation parallèle. Vous étudierez également les contraintes en matière de synchronisation d’accès aux données et les précautions à prendre.

Objectifs pédagogiques

  • Maîtriser les enjeux de la programmation Multicore
  • Concevoir et développer des applications à base de threads et de processus
  • Maîtriser les modèles de programmation parallèle et les librairies disponibles
  • Déboguer et profiler des applications Multicore

Travaux pratiques

Les travaux pratiques seront réalisés en C/C++ sous Visual Studio en environnement Windows.
PROGRAMME DE FORMATION

Introduction

  • Enjeux de la programmation Multicore.
  • Tableau des technologies utilisables : processus, thread et parallélisme.
  • Description du fonctionnement d’un processeur.
  • Architecture en “Hyperthreading”.
  • Architectures des processeurs INTEL et AMD.
  • Architectures NVidia et API.
  • Architecture en mémoire partagée vs mémoire distribuée.

Modélisation des applications

  • Importance des aspects modélisation.
  • Patterns de mise en parallèle des traitements.
  • Utilisation des mécanismes asynchrones.
  • Développer une nouvelle application : précautions et modélisation. Eviter les “singletons”.
  • Modifier une application existante en Multicore.
  • Choix d’architecture : un compromis synchronisation et performance. Choix multiprocessus/multithreads.

Threads

  • Apport des threads dans une application industrielle.
  • Ordonnancement des threads.
  • Gestion des stacks et “call stack” dans les threads.
  • Débogueurs multithreads.
  • Gestion des objets de synchronisation : sections critiques, Mutex et Sémaphores.
  • Développer “thread safe”.
  • API de threads TBB, Clik++, C++11, boost threads, pthreads.

Travaux pratiques
Threads et synchronisation en C/C++.

Processus

  • Espaces d’adressage des processus, organisation.
  • Critères de choix d’une approche multiprocessus.
  • Techniques de communication interprocessus (IPC).
  • Outils de debugging multiprocessus.
  • Avantage et inconvénients des techniques multiprocessus.

Travaux pratiques
Gestion de traitements asynchrones avec l’API C/C++.

La programmation parallèle

  • Apport et objectifs de la programmation parallèle.
  • La librairie “OpenMP” C++ (programmation mémoire partagée).
  • La librairie “OpenMPI” (programmation mémoire distribuée).
  • Utiliser les GPU des cartes graphiques pour le calcul.
  • Kits de NVidia (CUDA) et ATI.
  • La librairie “OpenAcc” pour la programmation GPU.
  • La librairie “OpenCL” pour la programmation parallèle CPU et GPU.

Travaux pratiques
Paralléliser des algorithmes avec “OpenMP” en C++. Utilisation de l’API OpenCL.

Synthèse et conclusion

  • Conclusion des techniques étudiées.
  • Avenir du C++ avec le multicore.
Les bases du développement IOS (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Objectifs pédagogiques

  • Appréhender les concepts de base du langage Swift
  • Créer un projet Swift
  • Utiliser la Swift Standard Library

Travaux pratiques

Exercices pratiques sous MacOS X et XCode 8.
PROGRAMME DE FORMATION

Swift

  • Pourquoi un nouveau langage ?
  • Ses apports et nouveautés.
  • Les playgrounds : terrains de jeu.
  • Intégration aux outils existants.
  • Swift système ouvert.

XCode l’environnement de développement

  • Présentation de l’outil et ses addons.
  • L’utilisation de XCode.
  • Interface Builder et les divers outils disponibles.
  • Le débogueur.
  • Les outils de mesure : instruments.
  • Les portail du développeur Apple.

Travaux pratiques
Mise en place de l’environnement de développement et premier exercice avec XCode et Swift. Utilisation du débogueur.

Les bases du langage Swift

  • Les fonctionnements du compilateur et l’architecture.
  • Les bases : variables, constantes et tuples, les chaînes de caractères.
  • L’optional et sa gestion, l’unwrapped.
  • Les opérateurs et la surcharge.
  • Les structures de contrôle.
  • Les closures et les fonctions.
  • Classes, structures, énumérations, propriétés.
  • L’héritage et les protocoles.

Travaux pratiques
Réalisation de plusieurs applications sur le langage et ses basiques.

La bibliothèque Swift

  • Que contient la Swift Standard Library ?
  • Gestion des tableaux, dictionnaires et Set.
  • Les protocoles Equatable et Comparable : utilisation.
  • Autres classes et structures disponibles.

Travaux pratiques
Mise en oeuvre des protocoles Comparable et Equatable.

Concepts avancés en Swift

  • Les Subscripts : concept et implémentation.
  • La gestion des erreurs et exceptions : try, catch, throw, throws, try, defer.
  • La gestion de l’asynchronisme avec Grand Central Dispatch.
  • La classe Thread, endormir un thread, annuler un thread, notification.
  • Les références strong, weak et unowned.
  • Le Lazy Loading.
  • Créer des extensions en Swift.
  • La généricité et les génériques.

Travaux pratiques
Mise en oeuvre de la généricité et des extensions.

Interaction Swift et Objective-C

  • Comparaison des syntaxes entre Objective-C et Swift.
  • Comparaison des types de données.
  • Mixing and matching.
  • Héritage entre Swift et Objective-C.
  • Points particuliers et limitations.

Travaux pratiques
Mise en oeuvre du mix and matching avec XCode.

Angular, développement avancé (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Angular, devenu la référence des infrastructures JavaScript côté client, propose une refonte du cœur du framework en s’appuyant sur les nouveaux standards du Web. Cette formation vous permettra de maîtriser en profondeur les bonnes pratiques de développement avec le framework Angular 5 et ses versions suivantes.

Objectifs pédagogiques

  • Savoir utiliser les décorateurs Angular
  • Architecturer les applications Web complexes
  • Intégrer les outils de documentation et les tests unitaires
  • Développer et intégrer des librairies de composants

Méthodes pédagogiques

Chaque nouveau concept théorique sera appliqué immédiatement et de façon pratique.
PROGRAMME DE FORMATION

Angular, mise en œuvre des bonnes pratiques

  • Injection de dépendances.
  • Types applicatifs partagés.
  • PWA : les Services Workers.
  • Requêtes HTTP avancées.
  • Lazy Loading.

Travaux pratiques
Analyser et optimiser une application.

Fonctionnement interne d’Angular

  • ZoneJS : le concept.
  • Optimisation des cycles de rendu, exécution hors ZoneJS.
  • Choisir RXJS.
  • Utilisation des observables.
  • Création, combinaison, opérateurs clés.
  • Compilation Ahead Of Time.
  • Webpack Bundle Analyzer.

Travaux pratiques
Créer une application utilisant RxJS.

Création de composants distribuables

  • Les Web Components.
  • Méthodologie : Interactive Component Sheet.
  • Les décorateurs.
  • Le Change Detection Mode.
  • Composants neutres versus à état. Communication entre composants, optimisation ES6.
  • Projection de contenu, pilotage de composants enfants.
  • Préparer les composants pour la distribution.
  • Documentation : génération dynamique.

Travaux pratiques
Développer et packager des composants distribuables.

Composants riches et librairies externes

  • Découverte de l’écosystème Angular pour la gestion des données, AngularFire, NgRx.
  • Les bibliothèques UI : Angular Material, Prime NG…
  • Les animations.

Travaux pratiques
Réutilisation de composants, intégration de librairies externes.

Formulaire dynamique : le FormBuilder

  • Création de formulaire dynamique : ReactiveFormsModule.
  • FormControl et FormGroup, AbstractContrl, FormArray.
  • Validation et gestion d’erreur personnalisée.
  • Création de modèles de données.
  • Utilisation du FormBuilder.
  • Création dynamique de template.
  • Abstraction de composant métier de formulaire.

Travaux pratiques
Mise en œuvre de la génération et les cycles de validation avancée de formulaire.

Tests unitaires. Bonnes pratiques et outils.

  • Karma et Jasmine.
  • Tests d’intégration avec Protractor.
  • Le Code-Coverage.
  • Behaviour Driven Development, Test Driven Development.
  • Cas de test : Pipe, Component, Service, etc.

Travaux pratiques
TDD : développer une application à partir de tests unitaires.

PHP - Drupal (2 jours)
990 € H.T.

Accessible aux personnes en situation de handicap

Introduction

  • Présentation de Drupal (node, taxonomie…).
  • Présentation, installation des outils de développement.
  • Installation de Drupal 8.
  • Les outils du développeur : Firebug, module “devel”.
  • Les concepts Objet (classes, interfaces, injection de dépendance, PSR-4…).

Travaux pratiques
Installation de Drupal 8

Introduction

  • L’architecture du Web : HTTP, CGI, interactivité : script client ou script serveur.
  • Qu’est-ce que PHP ?
  • Historique de PHP.
  • Les différences entre PHP 4, PHP 5 et PHP 7.
  • Notions d’architecture multicouche. Introduction aux principes MVC.
  • Présentation de l’exemple utilisé durant la formation : le site de vente en ligne.

Travaux pratiques
Revue des balises principales HTML et des commandes de style. Introduction à la feuille de style de l’application exemple.

Automatisation d’une page Web

  • Les principes du client-serveur.
  • Premiers éléments du langage.
  • Intégration de PHP dans une page HTML.
  • Variables et fonctions.
  • Librairies.
  • Fonctions de base, variables serveur et variable PHP.
  • Variables serveur et variable PHP.
  • Contrôles de flux et boucles.

Travaux pratiques
Réalisation de fonctions personnalisées. Réalisation d’une librairie de fonctions.

Les formulaires simples

  • Passage et transmission de variables.
  • Lecture/écriture de fichier.
  • Vérification de Login/mot de passe.
  • Redirection.

Les variables complexes : tableaux

  • Constructeur Array.
  • Fonctions associées aux tableaux.
  • Fonctions d’extraction.
  • Fonctions de navigation dans un tableau.

Travaux pratiques
Réalisation d’une fonction de création de liste déroulante.

Gestion des sessions utilisateurs

  • Variables persistantes : cookies et session.
  • Avantages et inconvénients des cookies et sessions.
  • Limitations et précautions.
  • Les variables de session.
  • Fonctions liées aux variables de session.
  • Les cookies.
  • Sérialisation des variables complexes.
  • Utilisation.

Travaux pratiques
Réalisation d’un panier d’achat simple, version cookie et session. Gestion des quantités commandées.

Utilisation d’une base de données MySQL

  • Présentation de MySQL.
  • Concepts fondamentaux : bases, tables, champs, enregistrements.
  • Bases MySQL.
  • Tables MySQL.
  • Champs MySQL.
  • Enregistrements MySQL.
  • Fonctions PHP MySQL.
  • Introduction au langage SQL (sélection, modification, suppression).
  • Traitement des résultats des requêtes.

Travaux pratiques
Création d’une base MySQL. Remplissage de la base à partir d’une base texte. Création de fiches produit à la volée par extraction des données de la base.

 

Programmation Objet en C++ (5 jours)
2490 € H.T.

Accessible aux personnes en situation de handicap

Ce stage intensif a deux objectifs : initier les participants aux méthodes et réflexes de la programmation par objets ; leur apporter une maîtrise opérationnelle complète du langage C++. Il est le fruit d’une longue expérience en matière de développement en C++ et est construit selon une pédagogie rigoureuse reposant sur des travaux pratiques nombreux et progressifs.

Objectifs pédagogiques

  • Maîtriser la syntaxe du langage C++
  • Mettre en œuvre les concepts de la Conception Orientée Objet
  • Utiliser les outils de développement associés au langage C++
  • Maîtriser les ajouts majeurs de la norme C++ 11

Travaux pratiques

Mise à disposition de stations de travail disposant des langages Visual C++ (sous Windows) et gcc (sous Unix). Les TP ont été conçus pour illustrer tous les éléments du langage et pour systématiquement mettre en oeuvre les concepts de la conception orientée objet.

Méthodes pédagogiques

Tous les exercices comportent une phase d’analyse/conception suivie d’une phase de programmation.
PROGRAMME DE FORMATION

La syntaxe du C++ (différences entre C et C++)

  • Données : définition, initialisation, types de données.
  • Expressions : notion de référence, mécanismes de cast.
  • Opérateurs (: :, new, delete).
  • Fonctions (passage de paramètres et valeur de retour par référence, valeurs par défaut, inlining, surcharge).
  • Utilisation du code C dans un programme C++.
  • Les références (arguments et valeurs de retour).
  • Les types constants.
  • Les espaces de nommage.
  • Le typage “automatique” avec le mot-clé auto (C++ 11).

Travaux pratiques
Prise en main de l’environnement de développement et programmation d’un programme simple.

Approche Orientée Objet

  • Les principes généraux des techniques Objet.
  • C++ et la programmation Objet.
  • Une introduction aux méthodologies orientées Objet.
  • Une introduction aux modèles et à la notation UML (modèle statique, dynamique, modèle de coopération, scénario).

Travaux pratiques
Application des concepts à une étude de cas qui sera l’un des fils directeurs des exercices suivants.

Les classes et les objets C++

  • Les aspects syntaxiques : les champs, les méthodes, les constructeurs.
  • Le contrôle d’accès.
  • L’autoréférence.
  • Les champs et méthodes statiques.
  • Les fonctions.
  • Les méthodes et les classes Friend.
  • La création dynamique des tableaux d’objets.
  • Les aspects méthodologiques : la conception des classes.
  • Les constructeurs de copie et de déplacement (C++11).
  • La délégation de constructeurs (C++ 11).
  • Introduction aux problématiques de gestion mémoire (pile, tas, ramasse-miettes…).

Travaux pratiques
La programmation de l’étude de cas. La conception et la construction d’une hiérarchie de classes et d’interfaces.

Dérivation et héritage

  • Principe de la dérivation.
  • Les aspects syntaxiques : la définition des classes dérivées, les constructeurs.
  • Le contrôle d’accès.
  • La mise en œuvre du polymorphisme : les fonctions virtuelles.
  • La réutilisation de code : les classes abstraites.
  • Les interfaces.
  • La dérivation multiple.
  • Les aspects sémantiques et méthodologiques : la factorisation du code.

Travaux pratiques
La mise en place du polymorphisme dans l’étude de cas.

Les exceptions

  • Les aspects syntaxiques : les blocs de try, la génération des exceptions.
  • Les aspects méthodologiques : la construction d’une hiérarchie d’exception, l’utilisation des exceptions.

Travaux pratiques
L’introduction des exceptions dans l’étude de cas.

La surcharge des opérateurs

  • Principe de la surcharge.
  • Surcharge des opérateurs binaires.
  • Surcharge particulière : l’opérateur indice, fonction, conversion.
  • Surcharge des opérateurs de gestion mémoire.
  • Surcharge des opérateurs ‘<<‘ et ‘>>’.

Travaux pratiques
La surcharge de quelques opérateurs simples.

Les modèles

  • Modèle de classe. Principes et mécanismes généraux. Surcharge des modèles et redéfinition de méthodes.
  • Modèle de fonction. Principes et mécanismes généraux. Surcharge des modèles.
  • Modèles et surcharge des opérateurs.
  • Les modèles et les mécanismes de dérivation.
  • Les améliorations proposées par C++ 11.

Travaux pratiques
Exercices sur les modèles.

Les I/O et aperçu sur la STL

  • Les I/O.
  • Le principe des streams et la hiérarchie des classes d’entrée/sortie.
  • Description de quelques classes d’entrées/sorties.
  • Aperçu sur la STL.
  • Objectifs et principes.
  • Descriptions de quelques modèles et classes.
  • Les conteneurs, les itérateurs, la boucle basée sur un intervalle (C++ 11).

Conclusion

  • Cycle de vie du logiciel : test, intégration, méthode de mise en production.
  • Interaction avec les autres environnements.
  • Analyse critique du C++.
  • Evolution du C++.
Hibernate avancé (2 jours)
990 € H.T

Accessible aux personnes en situation de handicap

Objectifs

  • Mapping Objet-Relationnel et “impedance mismatch”

Problématiques liées au chargement des données

  • Le Lazy Loading ou chargement par nécessité
  • Notion et utilisation de Proxy
  • Les stratégies de Fetch

Utilisation des caches d’Hibernate

  • Le cache de session
  • Le cache de second niveau
  • Le cache mapping
  • Les stratégies de cache
  • Avantages et inconvénients des différentes implémentations
  • Le cache de requête

Partage des données

  • Problématiques liées à la concurrence d’accès
  • Verrouillage optimiste / pessimiste
  • Clustering
  • JBossTreecache

Optimisation des associations

  • Cas des associations bi-directionnelles
  • Gestion de l’attribut inverse
  • Associations polymorphes

Problématiques liées à l’héritage

  • Une table par hiérarchie
  • Une table par sous-classe
  • Une table par classe concrète

Monitoring des performances

  • Suivi d’une SessionFactory
  • Métriques
Ergonomie UX interfaces web (3 jours)
1690 € H.T.

Accessible aux personnes en situation de handicap

Objectif de la formation

Apprendre les secrets d’un site Web ergonomique et d’une navigation intuitive, pour une User Experience optimale

  •   Maîtriser les fondements méthodologiques de l’Ergonomie Web
  •   S’entraîner à la pratique en manipulant divers outils tels que la grille d’analyse des interfaces Web

Ce cours traite des spécificités du Web 2.0 et des applications Web mobiles en termes d’utilisabilité
Public visé : toute personne intervenant dans la conception et la maintenance de produits Web : chefs de projets, maîtres d’œuvre/d’ouvrage, designers, graphistes, développeurs « front-end », etc.

Livrables : Support de cours, Grille d’analyse des interfaces Web,
Guide de Tests Utilisateurs, canevas UX (Fiche Persona, Empathy Map, Experience Map)

COMPRENDRE LES ENJEUX DE L’ERGONOMIE WEB

  •   De l’ergonomie à l’UX Design : améliorer l’expérience utilisateur
  •   Rôle de l’ergonome dans la conception/refonte des produits
  •   Présentation de la norme ISO 9241-210
  •   Exemples de « fails » ergonomique

INTÉGRER L’ERGONOMIE AU DÉVELOPPEMENT PRODUIT

  •   Panorama des principales méthodes d’ergonomie
  •   Ergonomie dans un cycle en « V » et ergonomie AGILE
  •   Collaboration avec les parties prenantes : MOA, MOE, MUE
  •   Retour sur investissement (ROI) et indicateurs de performance (KPI)
  •   Etudes de cas

MAÎTRISER LES USAGES DU WEB

  •   Contextes et modes d’utilisation : les visages du Web d’aujourd’hui
  •   Aspects fonctionnels : pages Web, menus, hypertexte, multimédia…
  •   Aspects stratégiques : marketing digital, réseaux sociaux, SEO…
  •   Revue de tendances UX/CX : material design, responsive design, design inclusif, design émotionnel, gamification…

ELABORER UNE VISION PROJET CENTRÉE SUR L’USAGER

Principes du Design Centré Utilisateur (UCD) : approches « Top-Down » et « Bottom-Up »
Facteurs humains participant à la perception et l’utilisation des interfaces Web

  •   Règles fondamentales de conception et Standards Web
  •   Importance du contexte : pratiques, concurrence, opportunités
  •   La démarche « Design Thinking » et ses outils : ateliers de co- conception, notion de « Customer Journey » (parcours client)

MODÉLISER SES UTILISATEURS ET SCÉNARIOS D’USAGE

  •   Approche « quali » et « quanti » en ergonomie
  •   Techniques de recueil d’information : entretiens, questionnaires, observation de l’activité
  •   Techniques de modélisation : personas, arbres de tâches
  •   Appropriation par les équipes de conception/développement
  •   Travaux pratiques

MAQUETTER LES ÉCRANS D’UNE IHM WEB

  •   Choisir la maquette adaptée à son projet : Lo-Fi, Med-Fi, Hi-Fi
  •   Choisir un outil de maquettage/prototypage : Balsamiq, Axure, Photoshop, HTML…
  •   Concevoir des applis multi-supports : smartphone, tablette, desktop
  •   Documenter ses maquettes : guide de styles, spécifications IHM/GUI
  •   Travaux pratiques

AUDITER UN SITE INTERNET OU UNE APPLICATION MOBILE

  •   Best Practices et Checklists : intérêts et limites
  •   Mesure de l’accessibilité Web : principes, obligations légales (RGAA)
  •   Evaluation experte : point forts, points faibles, méthodologie
  •   Grille d’analyse heuristique du Web : présentation détaillée
  •   Travaux pratiques

RÉALISER UNE SESSION DE TESTS UTILISATEURS

  •   Guerilla, Lab, Remote Usability Testing… comment et quoi tester ?
  •   Apports de la méthode expérimentale
  •   Organisation, déroulement et analyse des résultats de tests
  •   Recueil de données indirectes : A/B Testing, Logs, Web Analytics…
  •   Travaux pratiques
DevOps - Foundation, certification DevOps Institute (3 jours)
1490 € H.T.

Accessible aux personnes en situation de handicap

ORIGINES DE DEVOPS

  • Contexte
  • Réalité des entreprises
  • Le mouvement DevOps

DEVOPS – PRÉSENTATION GÉNÉRALE

  • Définition
  • Ce qui est DevOps…
  • Ce que n’est pas DevOps…
  • DevOps et la performance IT
  • Les indicateurs de mesure de la performance IT
  • DevOps et l’automatisation

DEVOPS ET LES AUTRES RÉFÉRENTIELS

  • DevOps et l’Agilité
  • DevOps et le Lean
  • DevOps et lTIL

LA CULTURE DEVOPS

  • Compétences
  • Structures organisationnelles
  • Rôles
  • Collaboration et communication

LES PRATIQUES DEVOPS

  • Intégration continue
  • Livraison continue
  • Déploiement continu
  • VSM (Carte de flux de valeur)
  • Kanban
  • Théorie des contraintes
  • Retours d’expérience
  • La roue de Deming (PDCA)
  • “Improvement Kata”
  • Préparation à l’échec
  • Amélioration des processus ITSM

DEVOPS ET LES OUTILS

  • Les pratiques d’automatisation
  • Préoccupations et catégories

MISE EN PLACE DE LA CULTURE DEVOPS

  • Par où commencer…
  • Les risques, les facteurs de succès

PRÉPARATION ET PASSAGE DE L’EXAMEN DE CERTIFICATION “DEVOPS FOUNDATION” DU DEVOPS INSTITUTE

  • Révisions
  • Passage de l’examen en fin de session
  • Précisions : examen en anglais sous forme d’un QCM (40 questions)
Google Apps Script – Programmer des macros en JavaScript pour Google Sheets (3 jours)
1490 € H.T.

Objectifs


  • Maîtriser la syntaxe du langage JavaScript ;
  • Comprendre les concepts de l’objet avec JavaScript ;
  • Ecrire un script intégré à une feuille de calcul Google Sheet ;
  • Lire, modifier et mettre en forme les données d’un tableau ;
  • Ajouter des menus et boites de dialogue aux documents pour contrôler l’exécution des scripts ;
  • Interagir avec plusieurs documents.

Pré-requis


Etre un utilisateur régulier des Google Apps.

Public


Personnes travaillant avec les documents partagés Google souhaitant automatiser des traitements à l’aide de macro JavaScript.

Introduction

  • Langage de programmation
  • G Suite et les Google Apps
  • Types de scripts
  • Création d’un projet

Syntaxe JavaScript

  • Variables et fonctions
  • Types de données
    • Nombres, Texte et Booléen
  • Opérateurs et expressions

Algorithmes

  • Structures de contrôle
  • Tableaux
  • Fonctions
    • Déclaration et appel
  • Objets
    • Déclaration
    • Objets String, Date et Array

Objets pour Google Sheets

  • SpreadsheetApp
  • Sheet
  • Range
  • Lire et écrire dans les cellules
  • Parcourir une plage de valeurs
  • Extraire et modifier une plage valeurs
  • Mettre en forme les cellules

Personnalisation avancée

  • Créer un menu personnalisé
  • Déclarer une fonction personnalisée
  • Gérer les événements
    • onOpen, onEdit
  • Utiliser des boites de dialogue
    • Alert, Prompt

Interagir avec les autres services G Suite / Google Apps

  • Créer un script isolé
  • Ouvrir et modifier plusieurs documents simultanément
  • Automatiser l’envoi d’e-mail
Dev Logiciel
Développement Front End - Angular : développer une application Web (3 jours)
Accessible aux personnes en situation de handicap Objectifs ... Read More
1290 € H.T
Introduction à la programmation avec Java (2 jours)
Accessible aux personnes en situation de handicap Ce stage ... Read More
990 € H.T
Mise à niveau pour les développeurs C# et Java (2 jours)
Accessible aux personnes en situation de handicap Windows 8 a relancé l’intérêt du l... Read More
990 € H.T.
Programmation C++, perfectionnement (3 jours)
Accessible aux personnes en situation de handicap En consta... Read More
1490 € H.T.
C++ expert, les avancées du langage (3 jours)
Accessible aux personnes en situation de handicap Cette for... Read More
1490 € H.T.
Java orienté objet (3 jours)
Accessible aux personnes en situation de handicap La technologie Java His... Read More
1490 € H.T.
ReactJS, maîtriser le framework JavaScript (3 jours)
Objectifs pédagogiques Développer avec ReactJS Concevoir une SPA avec ReactJS et redux Comprendre le subset JavaScript JSX Optimiser les performances des RIA ... Read More
1490 € H.T.
Node.js - Développement d'applications Web (3 jours)
Accessible aux personnes en situation de handicap Objectifs de cette formation N... Read More
1190 € H.T.
Formation React Native, développer des applications mobiles natives
Réconciliant les développeurs d’applications natives et hybrides, React Native est devenu un framework de référence pour la création d\\’applications mobiles multiplateformes. Cette formation vous p... Read More
1690 € H.T.
Outils devops
Accessible aux personnes en situation de handicap Objectifs pédagogiques ... Read More
React Initiation et option Approfondissement (4 jours)
Accessible aux personnes en situation de handicap PROGRAMME JOUR 1 :... Read More
Développer ses applications mobiles Android (2 jours)
Accessible aux personnes en situation de handicap Objectifs Un ... Read More
990 € H.T.
formation Webform
Accessible aux personnes en situation de handicap Objectifs pédagogiques... Read More
Swift, les bases du langage, environnement apple (2 jours)
Accessible aux personnes en situation de handicap Nouveau l... Read More
990 € H.T.
Formation C & C++, programmer ses applications en Multicore (3 jours)
Accessible aux personnes en situation de handicap Vous déc... Read More
1490 € H.T.
Les bases du développement IOS (2 jours)
Accessible aux personnes en situation de handicap Objectifs pédagogiques ... Read More
990 € H.T.
Angular, développement avancé (2 jours)
Accessible aux personnes en situation de handicap Angular, ... Read More
990 € H.T.
PHP - Drupal (2 jours)
Accessible aux personnes en situation de handicap Introduction ... Read More
990 € H.T.
Programmation Objet en C++ (5 jours)
Accessible aux personnes en situation de handicap Ce stage ... Read More
2490 € H.T.
Hibernate avancé (2 jours)
Accessible aux personnes en situation de handicap Objectifs Mapping Objet-... Read More
990 € H.T
DevOps - Foundation, certification DevOps Institute (3 jours)
Accessible aux personnes en situation de handica... Read More
1490 € H.T.
Google Apps Script – Programmer des macros en JavaScript pour Google Sheets (3 jours)
Objectifs Maîtriser la syntaxe du langage JavaScript ; Comprendre les concepts de l’objet avec JavaScript ; Ecrire un script intégré à un... Read More
1490 € H.T.