Développement logiciel, Langages C / C++ / VB... - Orsys
Développement logiciel, Langages C / C++ / VB... - Orsys
Développement logiciel, Langages C / C++ / VB... - Orsys
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Développement <strong>logiciel</strong>, <strong>Langages</strong> C / <strong>C++</strong> / <strong>VB</strong>...<br />
De nombreuses applications ont été développées en C, <strong>C++</strong>, Visual Basic, SQL ou même<br />
Cobol et continuent à évoluer. A cela vient s'ajouter l'utilisation de nombreux autres langages<br />
plus spécialisés tels que Python ou Ruby. Conçus sur la base d'expériences concrètes, les<br />
cours <strong>Orsys</strong> vous permettront de comprendre le contexte d'utilisation de ces langages et d'en<br />
acquérir une parfaite maîtrise en vue de développer de nouvelles applications, de les intégrer<br />
au système d'information et d'en assurer la maintenance.<br />
Stages Pratiques<br />
Introduction à la programmation avec Visual Basic.... ( p3 )<br />
Introduction à la programmation avec Java.... ( p5 )<br />
Introduction à la programmation avec C#.... ( p7 )<br />
Développer en Visual Basic.... ( p9 )<br />
Visual Basic, perfectionnement.... ( p11 )<br />
Programmation en C.... ( p12 )<br />
Programmation objet en <strong>C++</strong>.... ( p14 )<br />
Programmation <strong>C++</strong>, perfectionnement.... ( p16 )<br />
<strong>C++</strong>, mise à niveau pour les développeurs C# et Java.... ( p18 )<br />
<strong>C++</strong>, développement d'applications graphiques en QT.... ( p19 )<br />
Programmer vos applications en Multicore.... ( p21 )<br />
<strong>C++</strong>, programmer avec CUDA, OpenMP et les PPL Visual Studio.... ( p23 )<br />
Linux industriel, temps réel et embarqué.... ( p25 )<br />
Développeur système sous Linux/Unix.... ( p27 )<br />
Objective C, programmation.... ( p28 )<br />
Python, programmation objet.... ( p29 )<br />
Développer avec les frameworks Python.... ( p31 )<br />
Django, développement Web avec Python.... ( p32 )<br />
Langage Perl.... ( p34 )<br />
Langage Perl, programmation avancée.... ( p36 )<br />
Windev, développement d'applications.... ( p37 )<br />
Webdev, développement Web.... ( p38 )<br />
Webdev, développement Web, perfectionnement.... ( p40 )<br />
PowerBuilder, les fondamentaux.... ( p41 )<br />
PowerBuilder, perfectionnement.... ( p43 )<br />
PowerBuilder, développer des applications .NET.... ( p45 )<br />
Groovy, programmation.... ( p47 )<br />
Groovy et Grails, développement Web.... ( p49 )<br />
Ruby On Rails 3, développement Web.... ( p50 )<br />
Amazon Web Services, architecture et mise en œuvre.... ( p51 )<br />
Scala, programmation.... ( p53 )<br />
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 / 86
Programmation Cobol.... ( p54 )<br />
Corba, architecture, mise en œuvre.... ( p55 )<br />
Mettre en œuvre le contrôle de versions avec le système GIT.... ( p57 )<br />
SQL Server, Programmation SQL.... ( p59 )<br />
SQL Server, programmation SQL avancée.... ( p61 )<br />
SQL Server 2012/2008, développement .... ( p62 )<br />
SQL Server 2012, mise en œuvre.... ( p63 )<br />
Transact-SQL, optimisation pour SQL Server 2012/2008.... ( p65 )<br />
SQL Server 2008, mise en œuvre.... ( p66 )<br />
SQL server 2008, mise en œuvre avancée.... ( p68 )<br />
SQL Server 2005, mise en œuvre.... ( p69 )<br />
SQL Server, optimisation.... ( p71 )<br />
Oracle SQL.... ( p73 )<br />
Oracle SQL, perfectionnement.... ( p74 )<br />
Oracle SQL pour le décisionnel.... ( p76 )<br />
Développer en PL/SQL.... ( p77 )<br />
Développer en PL/SQL, perfectionnement.... ( p78 )<br />
Oracle, optimisation d'applications.... ( p80 )<br />
SQL pour MySQL et PostgreSQL.... ( p81 )<br />
MySQL, prise en main.... ( p83 )<br />
PostgreSQL, prise en main.... ( p85 )<br />
MariaDB, prise en main.... ( p86 )<br />
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 2 / 86
Stage pratique de 3 jour(s)<br />
Réf : INP<br />
Participants<br />
Toute personne devant<br />
apprendre à programmer.<br />
Pré-requis<br />
Aucune connaissance<br />
particulière.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
3 fév. 2014, 3 mar. 2014<br />
7 avr. 2014, 5 mai 2014<br />
2 juin 2014, 7 juil. 2014<br />
18 aoû. 2014, 1 sep. 2014<br />
6 oct. 2014, 3 nov. 2014<br />
1 déc. 2014<br />
Introduction à la programmation avec Visual Basic<br />
OBJECTIFS<br />
Ce stage vous permettra de comprendre les fondements de la programmation et de l'algorithmique. Vous<br />
acquérez des bases en programmation qui vous permettront d'aborder n'importe quel langage dans les<br />
meilleures conditions. Tous les aspects essentiels seront vus : les modèles de programmation, les éléments<br />
de lexique et de syntaxe, les outils, l'organisation du code, l'accès aux bases de données et les tests.<br />
1) Les fondements de la programmation<br />
2) Genèse d'un premier programme<br />
3) Règles de programmation<br />
4) Les variables<br />
5) Opérateurs et expressions<br />
Travaux pratiques<br />
6) Les structures de contrôle<br />
7) Les procédures et les fonctions<br />
8) Introduction à la programmation objet<br />
9) L'accès aux bases de données<br />
10) Maintenance, débogage et test des<br />
programmes<br />
Ce stage contient plus de 60 % de travaux pratiques effectués selon vos besoins en Visual Basic (Cours<br />
INP), en Java (cours INJ ) ou en C# (cours OGR).<br />
1) Les fondements de la programmation<br />
- Qu'est-ce qu'un programme ? Qu'est-ce qu'un langage ? Les différents paradigmes. Quel langage pour<br />
quelle application ?<br />
- Les compilateurs. Les exécutables.<br />
- Les responsabilités d'un programmeur.<br />
- Qu'est-ce qu'un algorithme ?<br />
- Les besoins auxquels répond un algorithme.<br />
- Le concept de pseudo-langage.<br />
Travaux pratiques<br />
Présentation de différents langages (Java, C#, Visual Basic, C, <strong>C++</strong>). Ecriture d'un premier algorithme en<br />
pseudo-langage.<br />
2) Genèse d'un premier programme<br />
- Ecriture d'un programme simple : syntaxe et instructions.<br />
- Compilation et exécution du programme.<br />
- Qu'est-ce qu'une librairie ? Son rôle, son usage.<br />
Travaux pratiques<br />
Découverte de l'environnement de développement et d'exécution. Ecriture, compilation et exécution d'un<br />
premier programme.<br />
3) Règles de programmation<br />
- Convention de nommage.<br />
- Convention syntaxique.<br />
- Utilisation des commentaires. Pourquoi commenter les développements ?<br />
- Améliorer la lisibilité des programmes : indentation du code, découpage du code...<br />
4) Les variables<br />
- Qu'est-ce qu'une variable ?<br />
- Pourquoi typer une variable ?<br />
- Les types primitifs : entiers, chaînes de caractères, nombres réels, autres.<br />
- Déclaration, définition et initialisation d'une variable.<br />
- Les constantes.<br />
- Saisie, affichage, affectation, conversion de type.<br />
- Organiser ses données sous forme de tableaux.<br />
- Les types évolués : enregistrement, matrice, arbre.<br />
Travaux pratiques<br />
Ecriture de plusieurs programmes simples manipulant les variables.<br />
5) Opérateurs et expressions<br />
- Les différents opérateurs (multiplicatif, additif, comparaison, égalité, logique, affectation).<br />
- Combinaison d'opérateurs.<br />
- Expression booléenne.<br />
Travaux pratiques<br />
Manipulation des opérateurs et des expressions booléennes.<br />
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 3 / 86
6) Les structures de contrôle<br />
- Les sélections alternatives (si, si-alors-sinon, sélection cas).<br />
- Les blocs d'insctructions (notion de début... fin).<br />
- Les boucles itératives (tant que-répéter, répéter-jusqu'à, pour-de-à).<br />
- Imbrication des instructions.<br />
- Les commentaires.<br />
Travaux pratiques<br />
Utilisation des structures de contrôle pour implémenter un algorithme.<br />
7) Les procédures et les fonctions<br />
- Définitions : procédure, fonction.<br />
- Pourquoi sont-elles incontournables en programmation (réutilisabilité, lisibilité...) ?<br />
- Le passage de paramètres.<br />
- Le code retour d'une fonction.<br />
- Sensibilisation aux limites du passage de la valeur d'une variable.<br />
- Notion de passage par adresse.<br />
- Appel de fonctions.<br />
Travaux pratiques<br />
Debugging de programmes exemples.<br />
8) Introduction à la programmation objet<br />
- Les concepts associés à la programmation objet : classe, attribut, méthode, argument.<br />
- La modélisation objet à partir des exigences fonctionnelles.<br />
- Introduction aux bonnes pratiques d'organisation de conception et d'organisation d'un programme.<br />
Travaux pratiques<br />
Illustration des concepts objets.<br />
9) L'accès aux bases de données<br />
- Organisation et stockage des données.<br />
- Les traitements de base (connexion, requêtes, récupération des données).<br />
- Application cliente et serveur de données.<br />
- Affichage et manipulation des données dans l'application cliente.<br />
Travaux pratiques<br />
Création d'un formulaire de recherche d'informations dans une base de données.<br />
10) Maintenance, débogage et test des programmes<br />
- Savoir lire et interpréter les différents messages d'erreurs.<br />
- Utiliser un débogueur : exécuter un programme pas à pas, points d'arrêts, inspecter les variables pendant<br />
l'exécution.<br />
- Prévoir les tests unitaires.<br />
Travaux pratiques<br />
Utilisation d'un débogueur pour contrôler l'exécution des programmes.<br />
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 4 / 86
Stage pratique de 3 jour(s)<br />
Réf : INJ<br />
Participants<br />
Toute personne devant<br />
apprendre à programmer.<br />
Pré-requis<br />
Aucune connaissance<br />
particulière.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
7 avr. 2014, 30 juin 2014<br />
13 oct. 2014, 15 déc. 2014<br />
Introduction à la programmation avec Java<br />
OBJECTIFS<br />
Ce stage vous permettra de comprendre les fondements de la programmation et de l'algorithmique. Vous<br />
acquérez des bases en programmation qui vous permettront d'aborder n'importe quel langage dans les<br />
meilleures conditions. Tous les aspects essentiels seront vus : les modèles de programmation, les éléments<br />
de lexique et de syntaxe, les outils, l'organisation du code, l'accès aux bases de données et les tests.<br />
1) Les fondements de la programmation<br />
2) Genèse d'un premier programme<br />
3) Règles de programmation<br />
4) Les variables<br />
5) Opérateurs et expressions<br />
Travaux pratiques<br />
6) Les structures de contrôle<br />
7) Les procédures et les fonctions<br />
8) Introduction à la programmation objet<br />
9) L'accès aux bases de données<br />
10) Maintenance, débogage et test des<br />
programmes<br />
Ce stage contient plus de 60 % de travaux pratiques effectués selon vos besoins en Visual Basic (cours INP),<br />
en Java (cours INJ) ou en C# (cours OGR).<br />
1) Les fondements de la programmation<br />
- Qu'est-ce qu'un programme ? Qu'est-ce qu'un langage ? Les différents paradigmes. Quel langage pour<br />
quelle application ?<br />
- Les compilateurs. Les exécutables.<br />
- Les responsabilités d'un programmeur.<br />
- Qu'est-ce qu'un algorithme ?<br />
- Les besoins auxquels répond un algorithme.<br />
- Le concept de pseudo-langage.<br />
Travaux pratiques<br />
Présentation de différents langages (Java, C#, Visual Basic, C, <strong>C++</strong>). Ecriture d'un premier algorithme en<br />
pseudo-langage.<br />
2) Genèse d'un premier programme<br />
- Ecriture d'un programme simple : syntaxe et instructions.<br />
- Compilation et exécution du programme.<br />
- Qu'est-ce qu'une librairie ? Son rôle, son usage.<br />
Travaux pratiques<br />
Découverte de l'environnement de développement et d'exécution. Ecriture, compilation et exécution d'un<br />
premier programme.<br />
3) Règles de programmation<br />
- Convention de nommage.<br />
- Convention syntaxique.<br />
- Utilisation des commentaires. Pourquoi commenter les développements ?<br />
- Améliorer la lisibilité des programmes : indentation du code, découpage du code...<br />
4) Les variables<br />
- Qu'est-ce qu'une variable ?<br />
- Pourquoi typer une variable ?<br />
- Les types primitifs : entiers, chaînes de caractères, nombres réels, autres.<br />
- Déclaration, définition et initialisation d'une variable.<br />
- Les constantes.<br />
- Saisie, affichage, affectation, conversion de type.<br />
- Organiser ses données sous forme de tableaux.<br />
- Les types évolués : enregistrement, matrice, arbre.<br />
Travaux pratiques<br />
Ecriture de plusieurs programmes simples manipulant les variables.<br />
5) Opérateurs et expressions<br />
- Les différents opérateurs (multiplicatif, additif, comparaison, égalité, logique, affectation).<br />
- Combinaison d'opérateurs.<br />
- Expression booléenne.<br />
Travaux pratiques<br />
Manipulation des opérateurs et des expressions booléennes.<br />
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 5 / 86
6) Les structures de contrôle<br />
- Les sélections alternatives (si, si-alors-sinon, sélection cas).<br />
- Les blocs d'instructions (notion de Début... Fin).<br />
- Les boucles itératives (tant que-répéter, répéter-jusqu'à, pour-de- à).<br />
- Imbrication des instructions.<br />
- Les commentaires.<br />
Travaux pratiques<br />
Utilisation des structures de contrôle pour implémenter un algorithme.<br />
7) Les procédures et les fonctions<br />
- Définitions : procédure, fonction.<br />
- Pourquoi sont-elles incontournables en programmation (réutilisabilité, lisibilité...) ?<br />
- Le passage de paramètres.<br />
- Le code retour d'une fonction.<br />
- Sensibilisation aux limites du passage de la valeur d'une variable.<br />
- Notion de passage par adresse.<br />
- Appel de fonctions.<br />
8) Introduction à la programmation objet<br />
- Les concepts associés à la programmation objet : classe, attribut, méthode, argument.<br />
- La modélisation objet à partir des exigences fonctionnelles.<br />
- introduction aux bonnes pratiques d'organisation de conception et d'organisation d'un programme.<br />
Travaux pratiques<br />
Illustration des concepts objets.<br />
9) L'accès aux bases de données<br />
- Organisation et stockage des données.<br />
- Les traitements de base (connexion, requêtes, récupération des données).<br />
- Application cliente et serveur de données.<br />
- Affichage et manipulation des données dans l'application cliente.<br />
Travaux pratiques<br />
Création d'un formulaire de recherche d'informations dans une base de données.<br />
10) Maintenance, débogage et test des programmes<br />
- Savoir lire et interpréter les différents messages d'erreurs.<br />
- Utiliser un débogueur : exécuter un programme pas à pas, points d'arrêts, inspecter les variables pendant<br />
l'exécution.<br />
- Prévoir les tests unitaires.<br />
Travaux pratiques<br />
Utilisation d'un débogueur pour contrôler l'exécution des programmes.<br />
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 6 / 86
Stage pratique de 3 jour(s)<br />
Réf : OGR<br />
Participants<br />
Toute personne devant<br />
apprendre à programmer.<br />
Pré-requis<br />
Aucune connaissance<br />
particulière.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
19 mai 2014, 8 sep. 2014<br />
12 nov. 2014<br />
Introduction à la programmation avec C#<br />
OBJECTIFS<br />
Ce stage vous permettra de comprendre les fondements de la programmation et de l'algorithmique. Vous<br />
acquérez des bases en programmation qui vous permettront d'aborder n'importe quel langage dans les<br />
meilleures conditions. Tous les aspects essentiels seront vus : les modèles de programmation, les éléments<br />
de lexique et de syntaxe, les outils, l'organisation du code, l'accès aux bases de données et les tests.<br />
1) Un programme<br />
2) Nécessité d'un algorithme<br />
3) Genèse d'un premier programme<br />
4) Règles de programmation<br />
5) Les variables<br />
6) Opérateurs et expressions<br />
Travaux pratiques<br />
7) Les structures de contrôle<br />
8) Les procédures et les fonctions<br />
9) Introduction à la programmation objet<br />
10) L'accès aux bases de données<br />
11) Maintenance, débogage et test des<br />
programmes<br />
Ce stage contient plus de 60 % de travaux pratiques effectués selon vos besoins en Visual Basic (cours INP),<br />
en Java (cours INJ) ou en C# (cours OGR).<br />
1) Un programme<br />
- Qu'est-ce qu'un programme ?<br />
- Qu'est-ce qu'un langage ? Les différents paradigmes.<br />
- Quel langage pour quelle application ?<br />
- Les compilateurs. Les exécutables.<br />
- Les responsabilités d'un programmeur.<br />
Travaux pratiques<br />
Présentation de différents langages (Java, C#, Visual Basic, C, <strong>C++</strong>).<br />
2) Nécessité d'un algorithme<br />
- Qu'est-ce qu'un algorithme ?<br />
- Les besoins auxquels répond un algorithme.<br />
- Le concept de pseudo-langage.<br />
Travaux pratiques<br />
Ecriture d'un premier algorithme en pseudo-langage.<br />
3) Genèse d'un premier programme<br />
- Ecriture d'un programme simple : syntaxe et instructions.<br />
- Compilation et exécution du programme.<br />
- Qu'est-ce qu'une librairie ? Son rôle, son usage.<br />
Travaux pratiques<br />
Découverte de l'environnement de développement et d'exécution. Ecriture, compilation et exécution d'un<br />
premier programme.<br />
4) Règles de programmation<br />
- Convention de nommage.<br />
- Convention syntaxique.<br />
- Utilisation des commentaires. Pourquoi commenter les développements ?<br />
- Améliorer la lisibilité des programmes : indentation du code, découpage du code...<br />
5) Les variables<br />
- Qu'est-ce qu'une variable ?<br />
- Pourquoi typer une variable ?<br />
- Les types primitifs : entiers, chaînes de caractères, nombres réels, autres.<br />
- Déclaration, définition et initialisation d'une variable.<br />
- Les constantes.<br />
- Saisie, affichage, affectation, conversion de type.<br />
- Organiser ses données sous forme de tableaux.<br />
- Les types évolués : enregistrement, matrice, arbre.<br />
Travaux pratiques<br />
Ecriture de plusieurs programmes simples manipulant les variables.<br />
6) Opérateurs et expressions<br />
- Les différents opérateurs (multiplicatif, additif, comparaison, égalité, logique, affectation).<br />
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 7 / 86
- Combinaison d'opérateurs.<br />
- Expression booléenne.<br />
Travaux pratiques<br />
Manipulation des opérateurs et des expressions booléennes.<br />
7) Les structures de contrôle<br />
- Les sélections alternatives (si, si-alors-sinon, sélection cas).<br />
- Les blocs d'instructions (notion de Début... Fin).<br />
- Les boucles itératives (tant que-répéter, répéter-jusqu'à, pour-de- à).<br />
- Imbrication des instructions.<br />
- Les commentaires.<br />
Travaux pratiques<br />
Utilisation des structures de contrôle pour implémenter un algorithme.<br />
8) Les procédures et les fonctions<br />
- Définitions : procédure, fonction.<br />
- Pourquoi sont-elles incontournables en programmation (réutilisabilité, lisibilité...) ?<br />
- Le passage de paramètres.<br />
- Le code retour d'une fonction.<br />
- Sensibilisation aux limites du passage de la valeur d'une variable.<br />
- Notion de passage par adresse.<br />
- Appel de fonctions.<br />
9) Introduction à la programmation objet<br />
- Les concepts associés à la programmation objet : classe, attribut, méthode, argument.<br />
- La modélisation objet à partir des exigences fonctionnelles : introduction aux bonnes pratiques<br />
d'organisation de conception et d'organisation d'un programme.<br />
Travaux pratiques<br />
Illustration des concepts objets.<br />
10) L'accès aux bases de données<br />
- Organisation et stockage des données.<br />
- Les traitements de base (connexion, requêtes, récupération des données).<br />
- Application cliente et serveur de données.<br />
- Affichage et manipulation des données dans l'application cliente.<br />
Travaux pratiques<br />
Création d'un formulaire de recherche d'informations dans une base de données.<br />
11) Maintenance, débogage et test des programmes<br />
- Savoir lire et interpréter les différents messages d'erreurs.<br />
- Utiliser un débogueur : exécution d'un programme pas à pas, points d'arrêts, inspecter les variables pendant<br />
l'exécution.<br />
- Prévoir les tests unitaires.<br />
Travaux pratiques<br />
Utilisation d'un débogueur pour contrôler l'exécution des programmes.<br />
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 8 / 86
Stage pratique de 5 jour(s)<br />
Réf : <strong>VB</strong>6<br />
Participants<br />
Concepteurs et développeurs<br />
d'applications en Visual Basic.<br />
Les participants souhaitant<br />
aborder le <strong>VB</strong>A pour le<br />
développement d'applications<br />
liées au Pack Office doivent<br />
se diriger vers un autre stage.<br />
Pré-requis<br />
Connaissances de base<br />
en programmation.<br />
Expérience souhaitable en<br />
développement <strong>logiciel</strong>.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
24 fév. 2014, 24 mar. 2014<br />
14 avr. 2014, 19 mai 2014<br />
16 juin 2014, 28 juil. 2014<br />
25 aoû. 2014, 22 sep. 2014<br />
20 oct. 2014, 24 nov. 2014<br />
15 déc. 2014<br />
Aix<br />
31 mar. 2014, 23 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Bordeaux<br />
29 sep. 2014, 17 nov. 2014<br />
Lille<br />
29 sep. 2014, 17 nov. 2014<br />
Lyon<br />
31 mar. 2014, 23 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Nantes<br />
10 mar. 2014, 23 juin 2014<br />
6 oct. 2014, 1 déc. 2014<br />
Rennes<br />
10 mar. 2014, 23 juin 2014<br />
6 oct. 2014, 1 déc. 2014<br />
Sophia-antipolis<br />
31 mar. 2014, 23 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Strasbourg<br />
29 sep. 2014, 17 nov. 2014<br />
Toulouse<br />
29 sep. 2014, 17 nov. 2014<br />
Développer en Visual Basic<br />
OBJECTIFS<br />
Ce stage vous permettra de maîtriser pleinement les fonctionnalités et les capacités de Visual Basic. Tous<br />
les aspects essentiels du langage seront abordés, y compris la programmation objet, l'interaction avec les<br />
bases de données et les Active X Data Objects. A l'issue de ce cours, vous serez à même de réaliser des<br />
applications professionnelles.<br />
1) Positionnement de Visual Basic (vb, vba,<br />
vbscript)<br />
2) Améliorer la conception des applications avec<br />
la programmation objet<br />
3) La plateforme de développement Visual Basic<br />
4) Visual Basic, le langage<br />
5) Fenêtres, menus et boîtes de dialogue<br />
1) Positionnement de Visual Basic (vb, vba, vbscript)<br />
- La construction d'interfaces utilisateur.<br />
- L'accès aux bases de données.<br />
- Utilisation et création de composants.<br />
- Le développement Internet/Intranet.<br />
6) Les composants graphiques (contrôles)<br />
7) La gestion des erreurs<br />
8) L'accès aux données<br />
9) Touche finale<br />
2) Améliorer la conception des applications avec la programmation objet<br />
- Classes et objets.<br />
- Les objets graphiques : formes, contrôles.<br />
- Propriétés, méthodes, événements.<br />
- La programmation événementielle.<br />
3) La plateforme de développement Visual Basic<br />
- Les principes récurrents.<br />
- Fenêtres, barre de menus, barre d'outils.<br />
- Aide en ligne et compléments.<br />
- L'éditeur de code.<br />
- Etapes de création d'une application.<br />
- Les différents types de fichiers.<br />
Travaux pratiques<br />
Prise en main de l'interface, enregistrement et compilation.<br />
4) Visual Basic, le langage<br />
- Les variables.<br />
- Types de données et conversions.<br />
- Portée et durée de vie des variables.<br />
- Tableaux et types de données utilisateurs.<br />
- Les constantes.<br />
- Les variables objets.<br />
- Les conventions de dénomination.<br />
- Procédures événementielles et générales.<br />
- Subroutines et fonctions.<br />
- Portée des procédures : les modules standard.<br />
- Le passage d'arguments.<br />
- Les fonctions de Visual Basic.<br />
- Les opérateurs. Les structures de contrôle.<br />
Travaux pratiques<br />
Création de procédures, passage d'arguments. Création d'une fonction de vérification des dates.<br />
5) Fenêtres, menus et boîtes de dialogue<br />
- Principe des MDI (Multiple Document Interface), formes et contrôles. Formes modales. Formes prédéfinies.<br />
- Chargement et affichage.<br />
- Principaux événements, méthodes et propriétés.<br />
- Menus, popup menus.<br />
- Les fonctions msgbox et inputbox.<br />
Travaux pratiques<br />
Création de formes et d'un menu de présentation. Gestion des événements de chargement et déchargement<br />
des formes.<br />
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 9 / 86
6) Les composants graphiques (contrôles)<br />
- Contrôles standard, contrôles Active X.<br />
- Saisie et affichage : label, text box, masked edit.<br />
- Les boutons : command, check box, option.<br />
- Les listes : list box, combo box.<br />
- Présentation : Tool Bar, Status Bar, Image List, Scroll Bar, Progress Bar.<br />
- Les boîtes de dialogue standard : common dialog.<br />
- La minuterie : timer.<br />
- Le Drag and Drop. Objet source et objet cible. Evénements souris. Propriétés de la source. Evénements sur<br />
la cible.<br />
Travaux pratiques<br />
Gestion d'un formulaire de saisie, contrôles de validité. Manipulation des listes. Lancement de procédures.<br />
Déplacement d'un contrôle sur une forme. Déplacement d'un élément d'une liste dans une autre liste.<br />
7) La gestion des erreurs<br />
- Traitement des erreurs logiques : le débogage<br />
- Les points d'arrêt. Les expressions espionnes.<br />
- Les fenêtres de débogage.<br />
- Mode pas à pas et procédures.<br />
- Traitement des erreurs d'exécution.<br />
- L'interception et les gestionnaires d'erreurs.<br />
- L'objet Err.<br />
Travaux pratiques<br />
Interception d'une erreur d'exécution. Prise en main du debugger.<br />
8) L'accès aux données<br />
- Manipulation des fichiers. Accès séquentiel, direct, binaire. Ouverture, fermeture. Instructions de lecture/<br />
écriture.<br />
- Architecture et objets des bases relationnelles.<br />
- Le langage SQL. Le Data Environment.<br />
- L'architecture client serveur.<br />
- Les fournisseurs d'accès : ODBC et OLE-DB.<br />
- Les objets d'accès aux données : ADO (Active X data access).<br />
- Les outils d'accès aux données. Data Environment. Data Control. Data Report. Data Form Designer.<br />
- Les contrôles dépendant des données. Data Grid, Hierarchical Flex Grid. Data List, Data Combo.<br />
Travaux pratiques<br />
Création et manipulation d'un fichier en accès séquentiel (enregistrements de taille variable). Utilisation des<br />
contrôles d'accès aux données.<br />
9) Touche finale<br />
- Les fichiers de ressources.<br />
- Enregistrement des paramètres d'une application.<br />
- Générer un exécutable et le distribuer.<br />
- Optimisation du programme.<br />
Travaux pratiques<br />
Création et utilisation d'un fichier de ressources. Utilisation de la base de registre pour conserver des<br />
paramètres dynamiques. Déploiement d'une application.<br />
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 10 / 86
Stage pratique de 4 jour(s)<br />
Réf : <strong>VB</strong>E<br />
Participants<br />
Développeurs Visual Basic 6.<br />
Pré-requis<br />
Bonnes connaissances<br />
en Visual Basic 6 et en<br />
bases de données. Ou<br />
connaissances équivalentes<br />
à celles apportées par<br />
le stage "Développer en<br />
Visual Basic" (réf. <strong>VB</strong>6).<br />
Expérience souhaitable en<br />
développement <strong>VB</strong>6.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
20 mai 2014, 8 juil. 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Visual Basic, perfectionnement<br />
OBJECTIFS<br />
Ce stage de perfectionnement insiste sur les accès aux bases de données (ADO), la création de composants<br />
COM et la création d'applications Web dynamiques.<br />
1) L'accès aux bases de données<br />
2) La création des composants Com<br />
3) Exemple : les contrôles Active X<br />
1) L'accès aux bases de données<br />
4) Client-serveur et multitiers : Com+<br />
5) Visual Basic et le développement Internet<br />
6) Se préparer à Visual Basic .NET<br />
- Les fournisseurs d'accès : ODBC et OLE-DB.<br />
- Les objets d'accès aux données : ADO.<br />
- Data Environnement, Data Control. Data Grid...<br />
- Les objets ADO<br />
- Modèle objet. Connexion à une source de données. Commandes. Récupération de données : le Recordset.<br />
- Mise à jour, recherche, tri.<br />
- Intégrité des données : transactions, verrous.<br />
- Exécution des procédures stockées.<br />
Travaux pratiques<br />
Utilisation des outils d'accès aux données. Création d'un formulaire de saisie. Récupération de données via<br />
une procédure stockée. Gestion d'une transaction d'écriture.<br />
2) La création des composants Com<br />
- Réutilisabilité, simplification, optimisation.<br />
- Les interfaces standard, choix du type de composant.<br />
- Création d'une application cliente.<br />
- Variables objet, instanciation et manipulation d'objets. Les modules de classe.<br />
- Définitions des propriétés, méthodes, événements.<br />
- Le déclenchement des erreurs.<br />
- COM et ADO : les composants liés aux données.<br />
- Les collections. La création d'interfaces.<br />
- Compilation et enregistrement des composants.<br />
Travaux pratiques<br />
Création et test de composants : un COM Dll de services bancaires, un de connexion à une base de données<br />
avec ADO.<br />
3) Exemple : les contrôles Active X<br />
- Création. Propriétés, méthodes, événements.<br />
- Création d'un contrôle dépendant des données.<br />
- Création d'un contrôle fournisseur de données.<br />
Travaux pratiques<br />
Création d'un contrôle Active X de saisie des dates. Création d'un contrôle Active X fournisseur de données<br />
avec ADO.<br />
4) Client-serveur et multitiers : Com+<br />
- Approche. Encapsulation des objets ADO. COM+ et MTS. Transaction multi-objets : le " double commit ".<br />
- Optimisation des ressources. COM+ et la sécurité.<br />
Travaux pratiques<br />
Gestion d'une transaction en " double commit ".<br />
5) Visual Basic et le développement Internet<br />
- Développements côté serveur et côté client.<br />
- Le contrôle WebBrowser. Documents Active X. Visual Basic et Vbscript. DHTML. COM et ASP, COM et<br />
ADO.<br />
Travaux pratiques<br />
Création d'un navigateur sur une forme Visual Basic. Création d'un projet Document Active X s'exécutant<br />
dans IE.<br />
6) Se préparer à Visual Basic .NET<br />
- La plateforme .NET, architecture. Le <strong>VB</strong> .NET.<br />
- Visual Studio.NET, ADO.NET.<br />
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 11 / 86
Stage pratique de 5 jour(s)<br />
Réf : LGC<br />
Participants<br />
Les ingénieurs et les<br />
informaticiens qui souhaitent<br />
acquérir une formation<br />
complète et opérationnelle sur<br />
le langage C.<br />
Pré-requis<br />
Connaissances de bases en<br />
programmation.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 fév. 2014, 10 mar. 2014<br />
7 avr. 2014, 12 mai 2014<br />
2 juin 2014, 7 juil. 2014<br />
18 aoû. 2014, 15 sep. 2014<br />
13 oct. 2014, 3 nov. 2014<br />
8 déc. 2014<br />
Aix<br />
24 fév. 2014, 7 avr. 2014<br />
30 juin 2014, 1 sep. 2014<br />
24 nov. 2014<br />
Bordeaux<br />
17 mar. 2014, 16 juin 2014<br />
8 sep. 2014, 15 déc. 2014<br />
Bruxelles<br />
17 mar. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Geneve<br />
17 mar. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Lille<br />
17 mar. 2014, 16 juin 2014<br />
8 sep. 2014, 15 déc. 2014<br />
Luxembourg<br />
17 mar. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Lyon<br />
24 fév. 2014, 7 avr. 2014<br />
30 juin 2014, 1 sep. 2014<br />
24 nov. 2014<br />
Nantes<br />
17 mar. 2014, 23 juin 2014<br />
1 sep. 2014, 15 déc. 2014<br />
Rennes<br />
17 mar. 2014, 23 juin 2014<br />
1 sep. 2014, 15 déc. 2014<br />
Sophia-antipolis<br />
24 fév. 2014, 7 avr. 2014<br />
30 juin 2014, 1 sep. 2014<br />
24 nov. 2014<br />
Strasbourg<br />
17 mar. 2014, 16 juin 2014<br />
8 sep. 2014, 15 déc. 2014<br />
Toulouse<br />
17 mar. 2014, 16 juin 2014<br />
8 sep. 2014, 15 déc. 2014<br />
Programmation en C<br />
OBJECTIFS<br />
Ce stage intensif vous permettra d'acquérir une connaissance réellement opérationnelle du langage. Il vous<br />
expliquera le fonctionnement des différents mécanismes et vous montrera leur mise en œuvre grâce à de<br />
nombreux exercices pratiques. A l'issue de ce stage, vous serez en mesure d'écrire des programmes C<br />
robustes et portables.<br />
1) Premiers pas en C<br />
2) Opérateurs et expressions<br />
3) Structures de contrôles<br />
4) Tableaux, pointeurs et chaînes de caractères<br />
5) Les structures<br />
Travaux pratiques<br />
6) Les fonctions<br />
7) Compilation séparée, classe d'allocation<br />
8) Le préprocesseur<br />
9) Les bibliothèques standards<br />
Des machines sous système Unix ou Windows (PC) seront mises à la disposition des participants de manière<br />
à mettre en pratique les notions présentées.<br />
1) Premiers pas en C<br />
- Présentation du langage C, ses atouts.<br />
- Le <strong>C++</strong> par rapport au C.<br />
- Les fichiers sources (.c, .h).<br />
- Structure générale d'un programme.<br />
- La syntaxe de base du langage.<br />
- Les types de données et constantes de base.<br />
- Variables globales et locales.<br />
- Stockage et passage de paramètres.<br />
- Entrées/sorties formatées.<br />
- Les commentaires.<br />
- Utilisation élémentaire de la chaîne de production.<br />
- Les environnements d'édition, de compilation et d'exécution.<br />
- Exécution d'un premier programme.<br />
2) Opérateurs et expressions<br />
- Opérateurs arithmétiques.<br />
- Mécanismes d'évaluation des expressions.<br />
- Post et pré-incrémentation de décrémentation.<br />
- Précédence et associativité des opérateurs.<br />
- Opérateurs d'affectation.<br />
- Mécanismes de fonctionnement des expressions logiques.<br />
- Expressions logiques dans les instructions while, if...<br />
- Opérateurs de comparaison : , ==, !=...<br />
- Opérateurs logiques : ET, OU, négation.<br />
- Les types numériques composés. Règle de conversion dans les expressions mixtes. Conversions implicites/<br />
explicites.<br />
- Initialisation des variables.<br />
- Arithmétique sur les adresses.<br />
- Formats d'entrée/sortie associés aux types numériques.<br />
- Opérateurs bit à bit : ET, OU, OU exclusif, complément à 1, négation. Opérateurs de décalage : >>,
- Equivalences pointeurs/tableaux.<br />
- Calculs sur les pointeurs.<br />
- Chaînes de caractères.<br />
- Exemples de manipulation de chaînes de caractères.<br />
Travaux pratiques<br />
Manipulation de tableaux, pointeurs et des chaînes de caractères.<br />
5) Les structures<br />
- Intérêts des structures.<br />
- Déclarer, initialiser et accéder aux champs d'une structure.<br />
- Utiliser des structures imbriquées.<br />
- Créer de nouveaux types en utilisant Typedef.<br />
- Les champs de bits.<br />
- Les unions.<br />
- Les énumérations.<br />
- Définir des pointeurs sur structures.<br />
Travaux pratiques<br />
Implémentation de nouvelles structures de données .<br />
6) Les fonctions<br />
- Définition d'une fonction.<br />
- Appel d'une fonction.<br />
- Passage de paramètres : par valeur ou par référence.<br />
- Code retour d'une fonction. Les types de retour.<br />
- La fonction " main ".<br />
Travaux pratiques<br />
Découper son code à l'aide de fonctions. Gérer les appels de fonctions.<br />
7) Compilation séparée, classe d'allocation<br />
- Mécanisme de fonctionnement de la chaîne de production.<br />
- Utilisation de bibliothèque de sources.<br />
- Notion de Makefile.<br />
- Configuration mémoire d'un Programme C (pile, tas...).<br />
- Classes d'allocation des variables (auto, register, static, extern).<br />
- Différents cas de figure de la compilation séparée.<br />
- Notion d'objet externe.<br />
- Cas des données globales et statiques.<br />
- Cas des données locales.<br />
- Règle de visibilité.<br />
- Compléments sur les fonctions et les initialisations.<br />
8) Le préprocesseur<br />
- Utilisation des macros prédéfinies (constantes symboliques). Définir ses propres macros avec #define.<br />
- Définir des macros comme des fonctions. Utilisation des marqueurs # et ##.<br />
- Annuler la définition de constante avec #undef.<br />
- La compilation conditionnelle : #if, #ifdef, #ifndef, #elif, #endif.<br />
- Inclure des ressources avec #include.<br />
Travaux pratiques<br />
Utilisation des directives du préprocesseur. Mise en place de la compilation conditionnelle.<br />
9) Les bibliothèques standards<br />
- Les fonctions de calcul mathématique (sqrt, sin...).<br />
- Les fonctions d'entrées/sorties (fprintf, fscanf...).<br />
- Les fonctions d'accès aux fichiers (fread, fwrite..).<br />
- Les fonctions de manipulation de chaînes de caractères (strlen, strcat...)<br />
- Les fonctions de gestion de la mémoire (malloc, free...).<br />
- Mise en place de structures chaînées (listes chaînées, arbres n-aire...).<br />
Travaux pratiques<br />
Utilisation des principales fonctions des bibliothèques standards.<br />
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 13 / 86
Stage pratique de 5 jour(s)<br />
Réf : <strong>C++</strong><br />
Participants<br />
Ce cours s'adresse aux<br />
ingénieurs qui souhaitent<br />
acquérir une formation à<br />
l'approche objet et aux<br />
spécificités du langage C+<br />
+. A l'issue de ce cours, ils<br />
sauront utiliser ce langage<br />
comme un véritable outil de<br />
programmation objet.<br />
Pré-requis<br />
Bonnes connaissances du<br />
langage C.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
3 fév. 2014, 3 mar. 2014<br />
7 avr. 2014, 12 mai 2014<br />
2 juin 2014, 7 juil. 2014<br />
18 aoû. 2014, 15 sep. 2014<br />
13 oct. 2014, 3 nov. 2014<br />
8 déc. 2014<br />
Aix<br />
7 avr. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Bordeaux<br />
14 avr. 2014, 16 juin 2014<br />
8 sep. 2014, 1 déc. 2014<br />
Bruxelles<br />
14 avr. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Geneve<br />
14 avr. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Lille<br />
14 avr. 2014, 16 juin 2014<br />
8 sep. 2014, 1 déc. 2014<br />
Luxembourg<br />
14 avr. 2014, 16 juin 2014<br />
22 sep. 2014, 15 déc. 2014<br />
Lyon<br />
7 avr. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Nantes<br />
24 fév. 2014, 19 mai 2014<br />
28 juil. 2014, 1 sep. 2014<br />
15 déc. 2014<br />
Rennes<br />
24 fév. 2014, 19 mai 2014<br />
28 juil. 2014, 1 sep. 2014<br />
15 déc. 2014<br />
Sophia-antipolis<br />
7 avr. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Strasbourg<br />
14 avr. 2014, 16 juin 2014<br />
8 sep. 2014, 1 déc. 2014<br />
Toulouse<br />
17 fév. 2014, 14 avr. 2014<br />
16 juin 2014, 8 sep. 2014<br />
1 déc. 2014<br />
Programmation objet en <strong>C++</strong><br />
OBJECTIFS<br />
Ce stage intensif a deux objectifs : initier les participants aux méthodes et réflexes de la programmation<br />
par objets ; leur apporter une maîtrise opérationnelle complète du langage <strong>C++</strong>. Il est le fruit d'une longue<br />
expérience en matière de développement en <strong>C++</strong> et est construit selon une pédagogie rigoureuse reposant<br />
sur des travaux pratiques nombreux et progressifs.<br />
1) La syntaxe du <strong>C++</strong> (différences entre C et <strong>C++</strong>)<br />
2) Approche orientée objet<br />
3) La programmation objet avec <strong>C++</strong><br />
4) Les exceptions<br />
Travaux pratiques<br />
5) La surcharge des opérateurs<br />
6) Les modèles<br />
7) Les I/O et aperçu sur la STL<br />
8) Conclusion<br />
Des stations de travail disposant des langages Visual <strong>C++</strong> (sous Windows) et gcc (sous Unix) seront à<br />
la disposition des participants pendant toute la durée du cours. Les exercices pratiques ont été conçus<br />
pour illustrer tous les éléments du langage et pour systématiquement mettre en oeuvre les concepts de la<br />
conception orientée objet : tous les exercices comportent une phase d'analyse/conception suivie d'une phase<br />
de programmation.<br />
1) La syntaxe du <strong>C++</strong> (différences entre C et <strong>C++</strong>)<br />
- Données : définition, initialisation, types de données.<br />
- Expressions : notion de référence, mécanismes de cast.<br />
- Opérateurs ( : :, new, delete).<br />
- Fonctions (passage de paramètres et valeur de retour par référence, valeurs par défaut, inlining, surcharge).<br />
- Utilisation du code C dans un programme <strong>C++</strong>.<br />
- Les références (arguments et valeurs de retour).<br />
- Les types constants.<br />
- Les espaces de nommage.<br />
Travaux pratiques<br />
Prise en main de l'environnement de développement et programmation d'un programme simple.<br />
2) Approche orientée objet<br />
- Les principes généraux des techniques objet.<br />
- <strong>C++</strong> et la programmation objet.<br />
- Une introduction aux méthodologies orientées " objets ".<br />
- Une introduction aux modèles et à la notation UML (modèle statique, dynamique, modèle de coopération,<br />
scénario).<br />
Travaux pratiques<br />
L'application des concepts à une étude de cas qui sera l'un des fils directeurs des exercices suivants.<br />
3) La programmation objet avec <strong>C++</strong><br />
Les classes et les objets<br />
- Les aspects syntaxiques : les champs, les méthodes, les constructeurs.<br />
- Le contrôle d'accès.<br />
- L'auto-référence.<br />
- Les champs et méthodes statiques.<br />
- Les fonctions.<br />
- Les méthodes et les classes friend.<br />
- La création dynamique des tableaux d'objets.<br />
- Les aspects méthodologiques : la conception des classes.<br />
- Les constructeurs de copie.<br />
Dérivation et héritage<br />
- Principe de la dérivation.<br />
- Les aspects syntaxiques : la définition des classes dérivées, les constructeurs.<br />
- Le contrôle d'accès.<br />
- La mise en oeuvre du polymorphisme : les fonctions virtuelles.<br />
- La réutilisation de code : les classes abstraites.<br />
- La dérivation multiple.<br />
- Les aspects sémantiques et méthodologiques : la factorisation du code.<br />
Travaux pratiques<br />
La programmation de l'étude de cas. La conception et la construction d'une hiérarchie de classes et<br />
d'interfaces. La mise en place du polymorphisme dans l'étude de cas.<br />
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 14 / 86
4) Les exceptions<br />
- Les aspects syntaxiques : les blocs de try, la génération des exceptions.<br />
- Les aspects méthodologiques : la construction d'une hiérarchie d'exception, l'utilisation des exceptions.<br />
Travaux pratiques<br />
L'introduction des exceptions dans l'étude de cas.<br />
5) La surcharge des opérateurs<br />
- Principe de la surcharge.<br />
- Surcharge des opérateurs binaires.<br />
- Surcharge particulière : l'opérateur indice, fonction, conversion.<br />
- Surcharge des opérateurs de gestion mémoire.<br />
- Surcharge des opérateurs ''.<br />
Travaux pratiques<br />
La surcharge de quelques opérateurs simples.<br />
6) Les modèles<br />
- Modèle de classe. Principes et mécanismes généraux. Surcharge des modèles et redéfinition de méthodes.<br />
- Modèle de fonction. Principes et mécanismes généraux. Surcharge des modèles.<br />
- Modèles et surcharge des opérateurs.<br />
- Les modèles et les mécanismes de dérivation.<br />
Travaux pratiques<br />
TP sur les modèles.<br />
7) Les I/O et aperçu sur la STL<br />
- Les I/O.<br />
- Le principe des streams et la hiérarchie des classes d'entrée/sortie.<br />
- Description de quelques classes d'entrées/sorties.<br />
- Aperçu sur la STL.<br />
- Objectifs et principes.<br />
- Descriptions de quelques modèles et classes.<br />
- Les conteneurs, les itérateurs.<br />
8) Conclusion<br />
- Cycle de vie du <strong>logiciel</strong> : test, intégration, méthode de mise en production.<br />
- Interaction avec les autres environnements.<br />
- Analyse critique du <strong>C++</strong>.<br />
- Evolution du <strong>C++</strong>.<br />
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 15 / 86
Stage pratique de 4 jour(s)<br />
Réf : POP<br />
Participants<br />
Concepteurs et développeurs<br />
d'applications en <strong>C++</strong>,<br />
chefs de projets, architectes<br />
<strong>logiciel</strong>s.<br />
Pré-requis<br />
Bonnes connaissances en<br />
développement <strong>C++</strong>, ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" Programmation Objet en C<br />
++ " (réf. <strong>C++</strong>). Expérience<br />
requise.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
25 fév. 2014, 1 avr. 2014<br />
24 juin 2014, 9 sep. 2014<br />
21 oct. 2014, 18 nov. 2014<br />
16 déc. 2014<br />
Programmation <strong>C++</strong>, perfectionnement<br />
OBJECTIFS<br />
En constante évolution, le langage <strong>C++</strong> offre des mécanismes tels que la généricité ou la métaprogrammation<br />
qui permettent une conception robuste et très riche. Les récentes normes Technical<br />
Report TR1 et TR2 déjà intégrées dans <strong>C++</strong> reprennent l'essentiel des bibliothèques du projet BOOST qui<br />
améliorent notablement la Standard Template Library (STL). Cette formation vous permettra d'approfondir la<br />
conception en <strong>C++</strong> par l'apprentissage de très nombreux mécanismes et l'utilisation effective de la STL.<br />
1) Rappels<br />
2) Gestion des opérateurs<br />
3) Conversion et RTTI<br />
4) La généricité<br />
Travaux pratiques<br />
5) La STL (Standard Template Library)<br />
6) BOOST<br />
7) Utilisation avancée de l'héritage<br />
Le cours se déroulera sur des stations de travail sous Windows/Visual <strong>C++</strong>. De nombreux exercices<br />
permettront de mettre en oeuvre les thèmes abordés plus spécifiquement sous l'angle de la conception.<br />
1) Rappels<br />
- Classes d'allocation mémoire.<br />
- Construction, initialisation, embarquement d'objets.<br />
- Les fuites mémoires.<br />
- Constance, le mot-clé mutable, Lazy Computation.<br />
- Amitié (friendship) <strong>C++</strong> et contrôle d'accès.<br />
- Destruction virtuelle.<br />
- Stratégie de gestion des exceptions.<br />
- Organisation logiques de l'application : les espaces de nommage (namespace).<br />
2) Gestion des opérateurs<br />
- Opérateurs binaires et unaires.<br />
- L'opérateur d'indirection, cas d'usage.<br />
- L'opérateur de référencement.<br />
- Les opérateurs d'incrémentation/décrémentation pré-fixés et post-fixés.<br />
- Les autres opérateurs : comparaison, affectation...<br />
- La surcharge de l'opérateur [], des opérateurs d'insertion (
- Les conteneurs séquentiels et associatifs : définition, rôle et critères de choix.<br />
- Les allocateurs et la gestion de la mémoire des conteneurs.<br />
- Les méthodes d'insertion, de suppression, d'itération et d'accès aux principaux conteneurs : Vector, List,<br />
Set, Stack...<br />
- Le concept d'itérateur. Parcours d'un conteneur.<br />
- Les différents groupes d'algorithmes STL : non mutants, mutants, de tri et de fusion, numériques.<br />
- Manipulation de conteneurs (manipulation, recherche de valeurs...).<br />
- Paramétrer les algorithmes génériques par des objets " fonction ".<br />
- Les " adapteurs " et la modification du comportement d'un composant.<br />
- La STL et les traitements sur les flux (fichiers, mémoire...).<br />
- Principe du RAII : les pointeurs automatiques et la classe auto_ptr.<br />
- Les exceptions standard de la STL.<br />
Travaux pratiques<br />
Implémentation des relations avec les collections de la STL. Utilisation d'algorithmes standard quelconques.<br />
6) BOOST<br />
- Présentation de Boost et de l'extension TR1 (Technical Report 1).<br />
- Les nouveaux conteneurs.<br />
- Les pointeurs intelligents (smart pointers) : shared_ptr, weak_ptr, unique_ptr.<br />
- La Pointer Container Library (destruction des données pointées d'un conteneur).<br />
- Foncteurs, binders et lambda-expressions.<br />
- Programmation événementielle (connexions et signaux). Introduction à la gestion des threads.<br />
- Gestion des processus, mécanismes de communication interprocessus et mémoire partagée.<br />
- Les structures de données (Tuple, Any, Variant).<br />
Travaux pratiques<br />
Mise en oeuvre de la robustesse avec les smart pointers de BOOST.<br />
7) Utilisation avancée de l'héritage<br />
- Héritage versus embarquement. Héritage privé. Héritage protégé.<br />
- Exportation de membres cachés avec la Clause Using.<br />
- Héritage multiple et gestion des collisions de membres.<br />
- Héritage en diamant. Héritage virtuel et dynamic_cast.<br />
- Principes fondamentaux de conception : substitution de Liskov, principe d'ouverture/fermeture, inversion<br />
des dépendances<br />
- Règles d'implémentation des interfaces en <strong>C++</strong>.<br />
Travaux pratiques<br />
Combinaison de l'héritage multiple, privé et de l'exportation pour concevoir des classes robustes et<br />
hautement évolutives.<br />
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 17 / 86
Stage pratique de 2 jour(s)<br />
Réf : TDE<br />
Participants<br />
Ce cours s'adresse aux<br />
développeurs Java et C#<br />
souhaitant acquérir des<br />
connaissances spécifiques au<br />
développement <strong>C++</strong>.<br />
Pré-requis<br />
Maîtrise de C# ou de Java<br />
ainsi que des concepts de<br />
programmation orientée objet.<br />
Eligible DIF<br />
<strong>C++</strong>, mise à niveau pour les développeurs C# et Java<br />
OBJECTIFS<br />
Windows 8 a relancé l'intérêt du langage <strong>C++</strong> auprès de développeurs pratiquant le C# et Java. Sur la base<br />
de vos connaissances objets, ce cours vous assurera une transition douce vers le <strong>C++</strong> 11. Vous apprendrez<br />
comment <strong>C++</strong> et sa librairie standard permettent d'écrire du code efficace et robuste pour vos applications.<br />
1) Rappel des concepts de base du<br />
développement <strong>C++</strong><br />
2) Présentation des concepts <strong>C++</strong> avancés<br />
3) Librairie standard : la BCL de <strong>C++</strong><br />
4) Syntaxe <strong>C++</strong> avancée<br />
5) <strong>C++</strong> et l'interopérabilité<br />
1) Rappel des concepts de base du développement <strong>C++</strong><br />
- Les différents fichiers sources (.h, .cpp...).<br />
- Linkage et compilation de code écrit en <strong>C++</strong>.<br />
- Ecriture de classes et structures : la syntaxe de base.<br />
- Réutilisation de composants déjà compilés : .lib, .dll, .h etc.<br />
Travaux pratiques<br />
Création d'une solution multi-projets en <strong>C++</strong>, avec linkage statique et dynamique.<br />
2) Présentation des concepts <strong>C++</strong> avancés<br />
- Instanciation "statique" versus instanciation "dynamique" d'objets.<br />
- Les différents types de constructeurs (par défaut, par copie...).<br />
- Gestion de la mémoire sans garbage collector (manuellement ou en utilisant les smart pointers de la librairie<br />
standard).<br />
- Héritage multiple : cas pratiques et pièges à éviter.<br />
- Les Templates.<br />
- Orientation objet et comparaison avec C#.<br />
Travaux pratiques<br />
Atelier de manipulation des smart pointers de la librairie standard.<br />
3) Librairie standard : la BCL de <strong>C++</strong><br />
- Représentations mémoires possibles d'une chaîne de caractère et manipulation avec std::string et<br />
std::wstring.<br />
- Introduction à la stl (standard template library).<br />
- Containers et itérateurs, les collections <strong>C++</strong>.<br />
Travaux pratiques<br />
Atelier de manipulation de chaînes de caractères et de collections en <strong>C++</strong>.<br />
4) Syntaxe <strong>C++</strong> avancée<br />
- Inférence de types et mot-clef automatique.<br />
- Orientation fonctionnelle du langage : Lambdas, Functors... et utilisation avec la stl.<br />
- Asynchronisme et parallélisation avec <strong>C++</strong> 11.<br />
- Utilisation d'objets COM Microsoft, avec et sans smart pointers.<br />
Travaux pratiques<br />
Exercice d'introduction à la parallel platform library, et manipulation d'expressions Lambda. Cas pratique de<br />
consommation d'objets COM, illustration avec Direct 2D.<br />
5) <strong>C++</strong> et l'interopérabilité<br />
- Publication d'objets COM Windows réutilisables.<br />
- Interopérabilité avec .Net sur le Desktop : <strong>C++</strong> CLI.<br />
- Interopérabilité avec .Net et JavaScript dans les applications Metro : <strong>C++</strong> / CX.<br />
Travaux pratiques<br />
Création d'une application métro hybride C# / Xaml + <strong>C++</strong> / Direct 2D.<br />
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 18 / 86
Stage pratique de 5 jour(s)<br />
Réf : CQT<br />
Participants<br />
Ce cours est destiné aux<br />
développeurs et chefs de<br />
projets amenés à mettre<br />
en place des applications<br />
graphiques utilisant le<br />
Framework QT.<br />
Pré-requis<br />
Bonnes connaissances du<br />
langage <strong>C++</strong>. Connaissances<br />
de base en XML. Expérience<br />
requise en développement C<br />
++.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
17 mar. 2014, 12 mai 2014<br />
8 sep. 2014, 24 nov. 2014<br />
<strong>C++</strong>, développement d'applications graphiques en QT<br />
OBJECTIFS<br />
QT est un Framework orienté Objet qui offre des composants d'interface graphique (widgets), d'accès aux<br />
données, de connexions réseaux, etc. Cette formation vous apprendra à identifier les éléments importants<br />
d'un projet QT et les différents composants graphiques proposés, et à les utiliser avec le XML.<br />
1) Présentation du langage QT<br />
2) Les différents types de projets<br />
3) Les éléments importants d'un projet<br />
4) Les différents composants graphiques<br />
1) Présentation du langage QT<br />
- Historique du langage.<br />
- Les différentes possibilités d'utilisation.<br />
- Les autres librairies graphiques existantes.<br />
2) Les différents types de projets<br />
- Présentation des différents types de projet avec QT.<br />
- Présentation de QT Creator.<br />
- La structure de base d'une application à base d'IHM.<br />
Exercice<br />
Création d'une première application QT.<br />
3) Les éléments importants d'un projet<br />
5) La gestion des événements<br />
6) Le système de Plug-in de QT<br />
7) Aller plus loin avec QT<br />
- Fichiers pro, de conception graphique (ui).<br />
- Les fichiers de gestion d'internationalisation (ts et qm).<br />
- Les types de bases du langage (qint, qfloat...).<br />
- La compilation avec qmake.<br />
- La classe QObject.<br />
- Présentation du modèle MVC.<br />
- Le modèle MVC dans QT.<br />
Exercice<br />
Etude d'un fichier projet pour la mise en place de l'application.<br />
4) Les différents composants graphiques<br />
- Les composants de base de l'IHM (QMainWindow, QFrame, QLabel...).<br />
- La gestion du positionnement des composants.<br />
- Les boîtes de dialogue (QDialog).<br />
- Les menus (QMenu).<br />
- Modèles prédéfinis et personnalisés.<br />
- Les outils de conception visuelle de QT (QT Designer...).<br />
Exercice<br />
Mise en place de la structure de l'application.<br />
5) La gestion des événements<br />
- Notions de signal et slot.<br />
- Déclaration de signaux et de slots.<br />
- Installer des filtres d'événement.<br />
- Accéder à l'application pendant un traitement lourd (timer et hasPendingEvents).<br />
Exercice<br />
Ajout de la gestion des événements à l'application<br />
6) Le système de Plug-in de QT<br />
- Comprendre ce que sont les Plug-ins avec QT.<br />
- Les différentes classes de plugin (QStylePlugin...).<br />
- Les éléments nécessaires à la mise en place d'un Plug-in pour QT.<br />
- Mise au point d'application gérant des Plug-ins.<br />
Exercice<br />
Mise au point d'un plugin simple.<br />
7) Aller plus loin avec QT<br />
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 19 / 86
- Utilisation de XML avec QT. Rappel sur XML, les parsers DOM et SAX. Parsing de documents XML en<br />
utilisant QT.<br />
- L'internationalisation. Rappel sur Unicode. L'objet QTranslator. L'application QT Linguist.<br />
- Applications multiplateformes. QT Mobility.<br />
Exercice<br />
Utilisation d'un fichier XML pour stocker les données de l'application. Internationalisation de l'application.<br />
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 20 / 86
Stage pratique de 3 jour(s)<br />
Réf : MUC<br />
Participants<br />
Développeurs, architectes<br />
<strong>logiciel</strong>s, chefs de projet.<br />
Pré-requis<br />
Programmer vos applications en Multicore<br />
OBJECTIFS<br />
Vous découvrirez les architectures Multicore et leur programmation, les techniques de mise en œuvre d'une<br />
approche multithread ou multiprocessus et les langages dédiés à la programmation parallèle. Vous étudierez<br />
également les contraintes en matière de synchronisation d'accès aux données et les précautions à prendre.<br />
Bonnes connaissances d'un<br />
des 3 langages Objet utilisés<br />
dans le cours (Java, C#,<br />
<strong>C++</strong>). Connaissances de<br />
base des concepts liés aux<br />
applications Multicore.<br />
1) Introduction<br />
2) Modélisation des applications<br />
3) Threads<br />
Travaux pratiques<br />
4) Processus<br />
5) La programmation parallèle<br />
6) Synthèse et conclusion<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
31 mar. 2014, 7 avr. 2014<br />
30 juin 2014, 6 oct. 2014<br />
3 nov. 2014, 15 déc. 2014<br />
Les exercices et les exemples s'appuieront sur Java, <strong>C++</strong> et C# via les IDE Visual Studio et NetBeans.<br />
BOUML sera utilisé pour la modélisation UML.<br />
1) Introduction<br />
- Enjeux de la programmation Multicore.<br />
- Tableau des technologies utilisables : processus, thread et parallélisme.<br />
- Description du fonctionnement d'un processeur.<br />
- Architecture en "Hyperthreading".<br />
- Architectures des processeurs INTEL et AMD.<br />
- Architectures NVidia et API.<br />
2) Modélisation des applications<br />
- Importance des aspects modélisation.<br />
- Parallélisation des traitements.<br />
- Utilisation des mécanismes asynchrones.<br />
- Développer une nouvelle application : précautions et modélisation. Eviter les "singletons".<br />
- Modifier une application existante en Multicore.<br />
- Choix d'architecture : un compromis synchronisation et performance. Choix multiprocessus/multithreads.<br />
3) Threads<br />
- Threads dans les systèmes et les langages (Java, .NET...).<br />
- Apport des threads dans une application industrielle.<br />
- Ordonnancement des threads. Le "round robin".<br />
- Gestion des stacks et "call stack" dans les threads.<br />
- Débogueurs multithreads : Visual Studio, NetBeans...<br />
- Gestion des objets de synchronisation : sections critiques, Mutex et Sémaphores.<br />
- Développer "Thread safe".<br />
- API de threads avec Windows, Java et .NET. API POSIX.<br />
Travaux pratiques<br />
Threads et synchronisation en DOT Net, Java et <strong>C++</strong>.<br />
4) Processus<br />
- Espaces d'adressage des processus, organisation.<br />
- Critères de choix d'une approche multiprocessus.<br />
- Techniques de communication interprocessus (IPC).<br />
- Outils de debugging multiprocessus.<br />
- Avantage et inconvénients des techniques multiprocessus.<br />
- Les "Domain" DOT Net.<br />
Travaux pratiques<br />
Gestion de traitements asynchrones avec l'API Windows.<br />
5) La programmation parallèle<br />
- Apport et objectifs de la programmation parallèle.<br />
- "Parallel FX" la bibliothèque DOT Net.<br />
- Architecture PFX et philosophie.<br />
- Composants TPL et PLINQ.<br />
- La librairie "OpenMp" <strong>C++</strong>.<br />
- Utiliser les GPU des cartes graphiques pour le calcul.<br />
- Kits de NVidia (CUDA) et ATI.<br />
Travaux pratiques<br />
Paralléliser des algorithmes avec PFX en C# et avec "OpenMP" en <strong>C++</strong>.<br />
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 21 / 86
6) Synthèse et conclusion<br />
- Conclusion des techniques étudiées.<br />
- Avenir du <strong>C++</strong> avec le multicore.<br />
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 22 / 86
Stage pratique de 4 jour(s)<br />
Réf : CUD<br />
Participants<br />
Concepteur et développeur<br />
d'applications en <strong>C++</strong>, chef de<br />
projets, architecte <strong>logiciel</strong>.<br />
Pré-requis<br />
Bonne connaissance du<br />
langage <strong>C++</strong>, expérience<br />
requise. Connaissances de<br />
base des threads de l'API<br />
Windows.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
11 mar. 2014, 10 juin 2014<br />
9 sep. 2014, 9 déc. 2014<br />
<strong>C++</strong>, programmer avec CUDA, OpenMP et les PPL Visual<br />
Studio<br />
OBJECTIFS<br />
Cette formation vous propose de découvrir, d'évaluer et de manipuler différentes librairies pour la<br />
programmation parallèle en <strong>C++</strong>. Vous acquerrez toutes les connaissances nécessaires à la mise en<br />
oeuvre de traitements parallèles. Vous maîtriserez également les Design Patterns spécifiques à ce type de<br />
développement.<br />
1) Introduction<br />
2) Les threads dans le <strong>C++</strong> 11 et la librairie Boost<br />
3) Les Patterns du parallélisme<br />
Travaux pratiques<br />
4) Le GPU Computing avec CUDA et le <strong>C++</strong> AMP<br />
5) Le standard OpenMP et la Parallel Patterns<br />
Library<br />
6) Conclusion<br />
Développement d'une application de test. Evaluation des différentes solutions proposées et patterns de<br />
développement pour le traitement parallèle.<br />
1) Introduction<br />
- Présentation des librairies étudiées.<br />
- Rappel de la gestion des threads sous Windows.<br />
- Les nouveautés de Visual Studio 2010 et 2012.<br />
- L'instrumentation du code.<br />
- Les problèmes liés à l'utilisation des threads.<br />
Travaux pratiques<br />
Elaboration d'une application de test des différentes Solutions étudiées. Instrumentation du code de<br />
l'application de test afin de constater les variations dans les exécutions.<br />
2) Les threads dans le <strong>C++</strong> 11 et la librairie Boost<br />
- Rappel sur les expressions Lambda et les smart pointers.<br />
- La gestion des Threads. La Synchronisation.<br />
- Comparaison entre l'implémentation du <strong>C++</strong> 11, la librairie Boost.Thread et l'API de Windows.<br />
- Le Parallel Aggregation Pattern.<br />
Travaux pratiques<br />
Mise en œuvre des threads dans l'application de test.<br />
3) Les Patterns du parallélisme<br />
- Adapter les Patterns orientés Objets.<br />
- Le Parallel Loop Pattern.<br />
- Le Parallel Task Pattern.<br />
- Le Parallel Aggregation Pattern.<br />
- Le Futures Pattern.<br />
- Le Pipelines Pattern.<br />
Travaux pratiques<br />
Réflexions sur la mise en œuvre des différents Patterns avec les librairies de parallélisme sur l'application de<br />
test.<br />
4) Le GPU Computing avec CUDA et le <strong>C++</strong> AMP<br />
- Présentation des librairies DirectCompute, OpenCL et NPP dans l'architecture de CUDA.<br />
- Installation du driver spécifique de NVIDIA,<br />
- Installation du SDK de CUDA.<br />
- Installation de NSight.<br />
- Présentation de CUDA C/<strong>C++</strong>.<br />
- Présentation du <strong>C++</strong> AMP.<br />
Travaux pratiques<br />
Mise en œuvre des fonctions d'une librairie de CUDA, évaluation et profilage des exécutions de l'application<br />
de test. Comparaison avec la syntaxe du <strong>C++</strong> AMP et évaluation.<br />
5) Le standard OpenMP et la Parallel Patterns Library<br />
- Les constructions d'OpenMP et l'utilisation des pragmas, comparaison avec les threads du <strong>C++</strong> 11.<br />
- OpenMP.<br />
- La Parallel Patterns Library.<br />
- Le Concurrency Runtime et les nouvelles fonctionnalités de <strong>C++</strong>.<br />
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 23 / 86
- Comparaison avec OpenMP.<br />
- Les fonctions de travail.<br />
Travaux pratiques<br />
Mise en œuvre des différents Patterns avec OpenMP et la PPL sur l'application de test.<br />
6) Conclusion<br />
- Les bonnes pratiques, l'architecture.<br />
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 24 / 86
Stage pratique de 4 jour(s)<br />
Réf : LXT<br />
Participants<br />
Développeurs Linux/Unix.<br />
Pré-requis<br />
Bonnes connaissances d'un<br />
système Linux/Unix et de la<br />
programmation en C.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
18 fév. 2014, 18 mar. 2014<br />
22 avr. 2014, 20 mai 2014<br />
17 juin 2014, 15 juil. 2014<br />
26 aoû. 2014, 23 sep. 2014<br />
21 oct. 2014, 25 nov. 2014<br />
15 déc. 2014<br />
Aix<br />
11 mar. 2014, 3 juin 2014<br />
14 oct. 2014, 2 déc. 2014<br />
Bordeaux<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 18 nov. 2014<br />
Bruxelles<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 9 déc. 2014<br />
Geneve<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 9 déc. 2014<br />
Lille<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 18 nov. 2014<br />
Luxembourg<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 9 déc. 2014<br />
Lyon<br />
11 mar. 2014, 3 juin 2014<br />
14 oct. 2014, 2 déc. 2014<br />
Nantes<br />
25 mar. 2014, 17 juin 2014<br />
1 juil. 2014, 7 oct. 2014<br />
9 déc. 2014<br />
Rennes<br />
25 mar. 2014, 17 juin 2014<br />
1 juil. 2014, 7 oct. 2014<br />
9 déc. 2014<br />
Sophia-antipolis<br />
11 mar. 2014, 3 juin 2014<br />
14 oct. 2014, 2 déc. 2014<br />
Strasbourg<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 18 nov. 2014<br />
Toulouse<br />
1 avr. 2014, 24 juin 2014<br />
30 sep. 2014, 18 nov. 2014<br />
Linux industriel, temps réel et embarqué<br />
OBJECTIFS<br />
Découvrir les outils de développement industriel disponibles librement sous Linux. Maîtriser les mécanismes<br />
d'ordonnancement, connaître leurs possibilités. Accéder au développement temps réel strict avec l'extension<br />
LinuxRT ou Xenomai. Déployer Linux sur des systèmes embarqués en équilibrant les performances et<br />
l'occupation mémoire.<br />
1) Architecture<br />
2) Développement industriel sous Linux<br />
3) Ordonnancement temps partagé et réel souple<br />
Travaux pratiques<br />
4) Temps réel strict - Extension Xenomai<br />
5) Environnements restreints, systèmes<br />
embarqués<br />
6) Personnalisation du boot du système<br />
Les nombreux exercices et études de cas progressifs sont réalisés sur un réseau de serveurs Linux. Tous les<br />
programmes réalisés en TP existent sous forme de squelettes que les participants complètent eux-mêmes.<br />
1) Architecture<br />
- Système informatique ordinaire et Système embarqué.<br />
- Contraintes d'un système embarqué.<br />
- Architecture générale d'un système embarqué.<br />
- Démarrage du système, étape de boot.<br />
- Architecture du noyau Linux. Emplacement des sources.<br />
- Démarrage du système, phases de boot (code dépendant, commun).<br />
Travaux pratiques<br />
Détection d'erreur à la compilation, à l'édition des liens, utilisation d'Eclipse/CDT, utilisation d'une chaîne<br />
de compilation croisée. Débogage. Détection des fuites mémoire et des débordements de buffers. Test de<br />
couverture sur l'exécution d'une application.<br />
2) Développement industriel sous Linux<br />
- Environnement Linux.<br />
- Mode de fonctionnement : utilisateur, superviseur.<br />
- Licences et implications pour le développement industriel.<br />
- Outils de développement libres (compilateur, debugger, outils d'analyse, de trace et de tests).<br />
- Les différents IDE (Integrated Development Environment) : Eclipse, ...<br />
- Méthodes de compilation avancées.<br />
- La chaîne de compilation croisée.<br />
- La gestion de mémoire.<br />
- La détection des fuites mémoire.<br />
- Le débordement de buffers.<br />
3) Ordonnancement temps partagé et réel souple<br />
- Précision des mesures horaires et des attentes.<br />
- Ordonnancement temps partagé. Les règles de la préemptibilité.<br />
- Le fonctionnement général de l'ordonnanceur, priorités et partage du CPU.<br />
- Quand le noyau devient-il préemptible ?<br />
- Gestion du temps et la précision des timers.<br />
- Temps réel souple Posix.1b : principes.<br />
- Configuration de l'ordonnancement des processus et des threads.<br />
- Problèmes algorithmiques liés au temps réel.<br />
- L'ordonnanceur Linux : noyaux 3.x<br />
Travaux pratiques<br />
Création et gestion de processus. Priorités et partage du CPU. Examen du fonctionnement de<br />
l'ordonnanceur. Basculement de processus en temps réel. Vérification de la précision des timers et des<br />
sommeils.<br />
4) Temps réel strict - Extension Xenomai<br />
- Principe du temps réel strict.<br />
- Vue d'ensemble de l'extension Xenomai.<br />
- Concepts de temps réel strict : principe des micro-noyaux Adeos, Xenomai, LinuxRT.<br />
- Installation et API de Xenomai.<br />
- Utilisation de l'extension LinuxRT.<br />
- Ordonnancement temps réel strict en mode utilisateur.<br />
- Interruptions (activation, désactivation, ...).<br />
- Protection contre les interruptions.<br />
- Gestion des communications.<br />
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 25 / 86
- Présentation de l'API de Xenomai, installation de Xenomai.<br />
- La gestion des tâches temps réel strict.<br />
Travaux pratiques<br />
Installation de Xenomai. Création de tâches temps réel strict. Gestion des communications. Ecriture d'un<br />
gestionnaire d'interruption, de processus ordonnancé en temps réel strict. Installation et utilisation de<br />
Xenomai.<br />
5) Environnements restreints, systèmes embarqués<br />
- Problématique des systèmes embarqués.<br />
- Système LinuxRT, Xenomai : API, développement.<br />
- Linux embarqué : choix d'une version du noyau.<br />
- Bibliothèques système (Newlib, DietLibc).<br />
- Applications et utilitaires à embarquer.<br />
- Interface utilisateur.<br />
- Interfaces graphiques optimisées (directfb, etc).<br />
- Présentation et configuration d'un chargeur de démarrage.<br />
- Générer un noyau réduit. Généralité sur le système de fichiers<br />
- Installation de la chaîne de compilation.<br />
Travaux pratiques<br />
Installation, compilation d'une application personnalisée LinuxRT, Xenomai et d'un noyau de taille réduite.<br />
Création d'un système de fichiers. Incorporation d'applications minimales. Ecriture d'application utilisant une<br />
interface par Leds ou afficheur LCD. Installation d'un serveur HTTP embarqué.<br />
6) Personnalisation du boot du système<br />
- Les différentes phases de boot (mise sous tension, Bios, chargeur (Grub, UBoot...) du noyau.<br />
- Le rôle du processus Init. Le niveau d'exécution.<br />
- Le contenu du processus init.<br />
- Le remplacement du processus Init par une version personnalisée.<br />
- Initialisation depuis l'espace utilisateur.<br />
Travaux pratiques<br />
Création et personnalisation d'un disque initrd. Remplacement du processus Init par une version<br />
personnalisée et remplacement par un script shell.<br />
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 26 / 86
Stage pratique de 4 jour(s)<br />
Réf : LIS<br />
Participants<br />
Développeurs Linux/Unix.<br />
Pré-requis<br />
Bonne connaissance d'un<br />
système Linux/ Unix et de la<br />
programmation en C.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
11 fév. 2014, 1 avr. 2014<br />
17 juin 2014, 30 sep. 2014<br />
9 déc. 2014<br />
Bruxelles<br />
18 mar. 2014, 19 mai 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Geneve<br />
18 mar. 2014, 19 mai 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Luxembourg<br />
18 mar. 2014, 19 mai 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Développeur système sous Linux/Unix<br />
OBJECTIFS<br />
Cette formation vous permettra de maîtriser toutes les facettes de la programmation applicative : gestion des<br />
processus et threads, gestion fine du système de fichiers et de la mémoire, et bien entendu l'ensemble des<br />
outils de communication interprocessus.<br />
1) Outils et méthodes de développement<br />
2) Les processus<br />
3) Les threads Posix<br />
4) Communications entre processus<br />
Travaux pratiques<br />
5) Gestion de la mémoire<br />
6) Signaux<br />
7) Communiquer sur le réseau<br />
8) Entrées-sorties classiques et avancées<br />
Les exercices et études de cas progressifs sont réalisés sur un réseau de serveurs Linux. Tous les TP<br />
existent sous forme de squelettes à complèter.<br />
1) Outils et méthodes de développement<br />
- Environnement Linux : influences, <strong>logiciel</strong>s libres, licence GPL, distributions.<br />
- Outils de développement : Editeurs et environnements intégrés, compilateurs et constructeurs, profileurs et<br />
débogueurs.<br />
Travaux pratiques<br />
Prise en main des outils de développement (gcc, make...).<br />
2) Les processus<br />
- Concept de processus, identifications.<br />
- Création, terminaison d'un processus et exécution.<br />
- Problèmes de sécurité.<br />
3) Les threads Posix<br />
- Principe des threads Posix.1c.<br />
- Exécution et terminaison des threads.<br />
- Synchronisation des threads : Utilisation des mutex et des variables conditions.<br />
4) Communications entre processus<br />
- Files de messages : Principe. Files de message System V et Posix.<br />
- Mémoire partagée : Principe. Segments de mémoire System V et Posix.<br />
- Synchronisation des accès : Sémaphores Posix et nommés.<br />
- Tubes de communication : Création d'un tube, redirection des entrées-sorties, tubes nommés.<br />
5) Gestion de la mémoire<br />
- Principes de la mémoire virtuelle : Espace d'adressage et mémoire physique. Segmentation et pagination.<br />
Fautes de page.<br />
- Allocation de la mémoire : Fonctions classiques, exploration de l'espace d'adressage, réussite et échec<br />
d'allocation.<br />
- Utilisation de la mémoire : projection, configuration, détection des fuites et débordements mémoire.<br />
6) Signaux<br />
- Gestion des signaux : émission et réception de signaux, blocages et attentes.<br />
- Signaux temps réel : principes. Emission et réception.<br />
7) Communiquer sur le réseau<br />
- Appels système fondamentaux : résolution de noms, de services, création de sockets.<br />
- Communication TCP/IP et UDP/IP : serveurs multiprocessus et multithreads, clients TCP.<br />
- Transmission unicast, multicast et broadcast.<br />
8) Entrées-sorties classiques et avancées<br />
- Descripteurs et flux : concepts, utilisation, paramétrage.<br />
- Entrées-sorties avancées : entrées-sorties non bloquantes et multiplexées, asynchronisme.<br />
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 27 / 86
Stage pratique de 4 jour(s)<br />
Réf : OBC<br />
Participants<br />
Développeurs désirant<br />
programmer dans un<br />
environnement Apple sous<br />
MacOSX et voulant se<br />
diriger vers les filières de<br />
développement iPhone/iPad.<br />
Pré-requis<br />
Bonnes connaissances en<br />
développement <strong>logiciel</strong>.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
11&18 mar. 2014, 10 juin<br />
2014<br />
9 sep. 2014, 9 déc. 2014<br />
Objective C, programmation<br />
OBJECTIFS<br />
A l'issue, vous serez à même de programmer en Objective-C dans l'environnement Cocoa MacOSX et aurez<br />
toutes les bases nécessaires pour vous orienter vers les plateformes mobiles iPhone/iPad. Au travers de<br />
nombreux exercices, vous apprendrez à manipuler SDK et les outils proposés par Apple.<br />
1) Eléments de base<br />
2) Eléments avancés<br />
1) Eléments de base<br />
- Programmation en Objective-C.<br />
- Classes, Objets et Méthodes.<br />
- Types de données et expressions.<br />
- Booléens, complexes et imaginaires.<br />
- Structures de contrôle : if, while, do, break.<br />
3) Eléments additionnels<br />
4) Le Foundation Framework sous MacOSX<br />
(Environnement Cocoa)<br />
Exercice<br />
Exercices sur les classes, objets et méthodes, les différents types de données, les structures de contrôle.<br />
2) Eléments avancés<br />
- Les classes en détail.<br />
- Mécanismes d'héritage.<br />
- Polymorphisme, éléments dynamiques.<br />
- Variables et types de données.<br />
- Catégories et protocoles.<br />
Travaux pratiques<br />
Mécanismes d'héritage. Manipulation des catégories et des protocoles.<br />
3) Eléments additionnels<br />
- Le préprocesseur.<br />
- Eléments empruntés au langage C.<br />
Travaux pratiques<br />
Mécanismes de compilation et de préprocesseur.<br />
4) Le Foundation Framework sous MacOSX (Environnement Cocoa)<br />
- Introduction.<br />
- Présentation du SDK et de l'environnement Cocoa Apple.<br />
- Utilisation de XCode pour programmer en environnement MacOSX.<br />
- Nombres, chaînes et énumérations.<br />
- Travailler avec les fichiers.<br />
- Gestion de la mémoire.<br />
- Copier les objets.<br />
- Archivage.<br />
Travaux pratiques<br />
Programmes en environnement SDK. Manipulation des éléments du Framework Foundation. Manipulation de<br />
la mémoire. Mécanismes d'archivage.<br />
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 28 / 86
Stage pratique de 5 jour(s)<br />
Réf : PYT<br />
Participants<br />
Ce cours s'adresse aux<br />
ingénieurs qui souhaitent<br />
acquérir une formation à<br />
l'approche Objet et aux<br />
spécificités du langage<br />
Python.<br />
Pré-requis<br />
Connaissances de base en<br />
programmation.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
3 fév. 2014, 31 mar. 2014<br />
12 mai 2014, 30 juin 2014<br />
20 oct. 2014, 15 déc. 2014<br />
Sophia-antipolis<br />
3 fév. 2014<br />
Python, programmation objet<br />
OBJECTIFS<br />
Ce stage intensif a pour objectifs d'initier les participants aux méthodes et aux réflexes de la Programmation<br />
Orientée Objet et de leur apporter la maîtrise opérationnelle du langage Python.<br />
1) Syntaxe du langage Python<br />
2) Approche Orientée Objet<br />
3) Programmation Objet en Python<br />
4) Utilisation StdLib<br />
1) Syntaxe du langage Python<br />
5) Outils QA<br />
6) Création IHM TkInter<br />
7) Interfaçage Python/C<br />
8) Conclusion<br />
- Les identifiants et les références. Les conventions de codage et les règles de nommage.<br />
- Les blocs, les commentaires.<br />
- Les types de données disponibles.<br />
- Les variables, l'affichage formaté, la portée locale et globale.<br />
- La manipulation des types numériques, la manipulation de chaînes de caractères.<br />
- La manipulation des tableaux dynamiques (liste), des tableaux statiques (tuple) et des dictionnaires.<br />
- L'utilisation des fichiers.<br />
- La structure conditionnelle if/elif/else.<br />
- Les opérateurs logiques et les opérateurs de comparaison.<br />
- Les boucles d'itérations while et for. Interruption d'itérations break/continue.<br />
- La fonction range.<br />
- L'écriture et la documentation de fonctions.<br />
- Les Lambda expression.<br />
- Les générateurs.<br />
- La structuration du code en modules.<br />
Travaux pratiques<br />
Installation et prise en main de l'interpréteur Python.<br />
2) Approche Orientée Objet<br />
- Les principes du paradigme Objet.<br />
- La définition d'un objet (état, comportement, identité).<br />
- La notion de classe, d'attributs et de méthodes.<br />
- L'encapsulation des données.<br />
- La communication entre les objets.<br />
- L'héritage, transmission des caractéristiques d'une classe.<br />
- La notion de polymorphisme.<br />
- Association entre classes.<br />
- Les interfaces.<br />
- Présentation d'UML.<br />
- Les diagrammes de classes, de séquences, d'activités...<br />
- Notion de modèle de conception (Design Pattern).<br />
Travaux pratiques<br />
Modélisation en UML d'un cas d'étude simple.<br />
3) Programmation Objet en Python<br />
- Les particularités du modèle objet de Python.<br />
- L'écriture de classes et leur instanciation.<br />
- Les constructeurs et les destructeurs.<br />
- La protection d'accès des attributs et des méthodes.<br />
- La nécessité du paramètre Self.<br />
- L'héritage simple, l'héritage multiple, le polymorphisme.<br />
- Les notions de visibilités.<br />
- Les méthodes spéciales.<br />
- L'introspection.<br />
- L'implémentation des interfaces.<br />
- Les bonnes pratiques et les modèles de conception courants.<br />
- L'utilisation du mécanisme d'exception pour la gestion des erreurs.<br />
Travaux pratiques<br />
Pratique des différents concepts objets au travers de l'implantation de l'étude de cas.<br />
4) Utilisation StdLib<br />
- Les arguments passés sur la ligne de commande.<br />
- L'utilisation du moteur d'expressions régulières Python avec le module "re", les caractères spéciaux, les<br />
cardinalités.<br />
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 29 / 86
- La manipulation du système de fichiers.<br />
- Présentation de quelques modules importants de la bibliothèque standard : module "sys", "os", "os.path".<br />
- Empaquetage et installation d'une bibliothèque Python.<br />
- Les accès aux bases de données relationnelles, le fonctionnement de la DB API.<br />
Travaux pratiques<br />
Mise en oeuvre de modules Python : expressions régulières, accès à une base de données,<br />
5) Outils QA<br />
- Les outils d'analyse statique de code (pylint, pychecker).<br />
- L'analyse des comptes rendus d'analyse (types de messages, avertissements, erreurs).<br />
- Extraction automatique de documentation.<br />
- Le débogueur de Python (exécution pas à pas et analyse post-mortem).<br />
- Le développement piloté par les tests.<br />
- Les modules de tests unitaires Python (Unittest...).<br />
- L'automatisation des tests, l'agrégation de tests.<br />
- Les tests de couverture de code, profiling.<br />
Travaux pratiques<br />
Utilisation des outils pylint et pychecker pour la vérification d'un code Python. Mise en oeuvre de tests<br />
unitaires.<br />
6) Création IHM TkInter<br />
- Les principes de programmation des interfaces graphiques.<br />
- Présentation de la bibliothèque TkInter.<br />
- Les principaux conteneurs.<br />
- Présentation des widgets disponibles (Button, Radiobutton, Entry, Label, Listbox, Canvas, Menu, Scrollbar,<br />
Text...).<br />
- Le gestionnaire de fenêtres.<br />
- Le placement des composants, les différents layouts.<br />
- La gestion des événements, l'objet event.<br />
- Les applications multifenêtres.<br />
Travaux pratiques<br />
Conception d'une interface graphique avec la bibliothèque Tkinter.<br />
7) Interfaçage Python/C<br />
- Présentation du module Ctypes.<br />
- Le chargement d'une librairie C.<br />
- Appel d'une fonction.<br />
- La réécriture d'une fonction Python en C avec l'API Python/C.<br />
- La création de modules C pour Python avec Pyrex.<br />
- L'Interpréteur Python dans C.<br />
- L'utilisation du profileur de code.<br />
Travaux pratiques<br />
Appel de fonctions écrites en C depuis Python. Création de modules C pour Python avec Pyrex.<br />
8) Conclusion<br />
- Analyse critique de Python.<br />
- L'évolution du langage.<br />
- Eléments de Webographie et de bibliographie.<br />
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 30 / 86
Stage pratique de 4 jour(s)<br />
Réf : FPY<br />
Participants<br />
Développeurs Python.<br />
Pré-requis<br />
Bonnes connaissances<br />
en programmation ou<br />
connaissances équivalentes<br />
à celles apportées<br />
par le stage " Python,<br />
programmation Objet " (réf.<br />
PYT). Expérience souhaitable<br />
en développement Python.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
4 mar. 2014, 10 juin 2014<br />
7 oct. 2014, 9 déc. 2014<br />
Développer avec les frameworks Python<br />
OBJECTIFS<br />
Cette formation vous permettra d'améliorer vos développements d'applications Web en Python au moyen<br />
des Frameworks les plus utilisés. Vous découvrirez leur rôle, apprendrez dans quel contexte les utiliser, les<br />
bonnes pratiques de développement associées et acquerrez l'autonomie nécessaire à leur mise en oeuvre.<br />
1) Introduction<br />
2) Le Framework Turbogears<br />
3) Le Framework Django<br />
Travaux pratiques<br />
4) Le Framework CubicWeb<br />
5) Conclusion<br />
Chaque Framework sera installé durant le cours. Pour chacun d'eux, une application sera réalisée pour<br />
mettre en application les différents concepts.<br />
1) Introduction<br />
- Historique et évolution des solutions Web en Python.<br />
- Présentation du standard WSGI, du middleware.<br />
- Interfaçage avec les bases de données relationnelles.<br />
- Aperçu des Frameworks leaders, et de leur rôle.<br />
Travaux pratiques<br />
Démonstrations des différents Frameworks. Création d'une mini-application avec accès à une base de<br />
données.<br />
2) Le Framework Turbogears<br />
- Un Framework MVC pour le développement Web.<br />
- Mise en place de l'environnement (dépendances, installation, architecture).<br />
- Présentation de SQLAlchemy.<br />
- Gestion des URL, moteur de template (Genshi, Mako).<br />
- Authentification avec repoze, gestion des autorisations.<br />
- Mode de déploiement.<br />
Travaux pratiques<br />
Installation du framework. Développement d'une mini-application Web MVC avec Turbogears.<br />
3) Le Framework Django<br />
- Un Framework MVC pour le développement Web.<br />
- Mise en place de l'environnement (dépendances, installation, manage.py).<br />
- Modèle de données Django, présentation de l'ORM.<br />
- Interface d'administration. Gestion des URL, moteur de template. Middlewares courants.<br />
- Authentification et autorisation. Mode de déploiement.<br />
Travaux pratiques<br />
Mise en place de Django. Ecriture d'une application à l'aide d'un Template. Mise en oeuvre des principales<br />
fonctionnalités.<br />
4) Le Framework CubicWeb<br />
- Un framework pour le développement d'applications Web sémantique.<br />
- Mise en place de l'environnement (dépendances, installation, cubicweb-ctl).<br />
- Modèle de données Yams.<br />
- Présentation du langage d'interrogation RQL.<br />
- Fédération des sources de données.<br />
- Authentification et autorisation.<br />
- Vers le Web sémantique, comparaison SPARQL et RQL.<br />
- Mode de déploiement.<br />
Travaux pratiques<br />
Installation de CubicWeb. Intégration de données sémantiques dans une application Web. Ecriture de<br />
requêtes RQL.<br />
5) Conclusion<br />
- Choisir la technologie adaptée. Du script CGI au Web sémantique.<br />
- Programmation asynchrone : Ajax, Comet, le problème C10K. Architecture REST et Python.<br />
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 31 / 86
Stage pratique de 4 jour(s)<br />
Réf : DJA<br />
Participants<br />
La formation est destinée<br />
aux développeurs souhaitant<br />
acquérir une connaissance<br />
approfondie des bases du<br />
Framework Django.<br />
Pré-requis<br />
Connaissances des bases<br />
du langage Python et<br />
technologies Web (HTML,<br />
JavaScript...)<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
25 fév. 2014, 18 mar. 2014<br />
22 avr. 2014, 20 mai 2014<br />
24 juin 2014, 15 juil. 2014<br />
30 sep. 2014, 27 oct. 2014<br />
25 nov. 2014, 15 déc. 2014<br />
Django, développement Web avec Python<br />
OBJECTIFS<br />
Django est un Framework Web MVC (Modèle-Vue-Contrôleur) basé sur le langage Python. Ce stage vous<br />
apprendra à mettre en oeuvre ce Framework et à utiliser avec efficacité ses différents modules dans le cadre<br />
de développement d'applications Web.<br />
1) Introduction<br />
2) L'accès aux données avec Django<br />
3) Gestion des vues<br />
1) Introduction<br />
- Rappel des principes de la POO.<br />
- Le Design Pattern MVC.<br />
- Présentation de Framework Django.<br />
- Origine et historique. Objectifs et avantages.<br />
- Les composants de Framework Django.<br />
4) Les templates<br />
5) Gestion des formulaires<br />
6) Fonctions avancées<br />
Exercice<br />
Préparation de l'environnement. Installation de Python, Django, Serveur Apache, MySQL et Eclipse. Création<br />
d'un nouveau projet.<br />
2) L'accès aux données avec Django<br />
- Le modèle ORM Django.<br />
- Les modèles Django : Model, Field, Table, Column, Primary Key...<br />
- Mapping des associations : OneToMany, ManyToOne, ManyToMany, OneToOne.<br />
- Stratégies de mapping de l'héritage : Meta Class, OneToOneField, ManyToManyField...<br />
- Accès aux données avec les QuerySets.<br />
Exercice<br />
Développer une couche d'accès aux données. Interfacer Django avec MySQL.<br />
3) Gestion des vues<br />
- Vues simples ou fonctions vues.<br />
- Les classes HttpResponse, HttpRequest et QueryDict.<br />
- Configuration des Urls : UrlConf.<br />
- Vues génériques.<br />
- Exemples de vues génériques : Redirects, Create, Update, Delete...<br />
Exercice<br />
Développer des vues dynamiques HTML avec Django.<br />
4) Les templates<br />
- Le rôle des templates.<br />
- Création et chargement des templates.<br />
- Gestion des contextes.<br />
- Utilisation des tags et filtres personnalisés.<br />
- Réutilisation des templates : héritage entre templates.<br />
Exercice<br />
Développer un Template pour faciliter la génération de la présentation.<br />
5) Gestion des formulaires<br />
- Les avantages des formulaires Django.<br />
- Création des formulaires.<br />
- Les différents types de champs.<br />
- Validation des données d'un formulaire.<br />
- Gestion et personnalisation des messages d'erreurs.<br />
- Génération des formulaires à partir des modèles.<br />
Exercice<br />
Développer les formulaires associés aux opérations CRUD de l'atelier précédent.<br />
6) Fonctions avancées<br />
- L'internationalisation.<br />
- L'authentification et la gestion des sessions.<br />
- Optimisation et caches.<br />
- Intégration d'AJAX.<br />
- L'interface d'administration.<br />
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 32 / 86
- Les tests unitaires.<br />
Exercice<br />
Intégrer AJAX à travers le Framework JQuery.<br />
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 33 / 86
Stage pratique de 3 jour(s)<br />
Réf : PRL<br />
Participants<br />
Destiné aux informaticiens<br />
concernés par des<br />
procédures d'exploitation en<br />
environnements Unix, Linux<br />
ou Windows.<br />
Pré-requis<br />
Connaissances de base<br />
de la programmation et<br />
d'un système d'exploitation<br />
(Windows ou Linux/Unix).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
24 fév. 2014, 31 mar. 2014<br />
28 avr. 2014, 26 mai 2014<br />
30 juin 2014, 15 juil. 2014<br />
18 aoû. 2014, 29 sep. 2014<br />
27 oct. 2014, 24 nov. 2014<br />
15 déc. 2014<br />
Aix<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 8 déc. 2014<br />
Bordeaux<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Bruxelles<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Geneve<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Lille<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Luxembourg<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Lyon<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 8 déc. 2014<br />
Nantes<br />
17 mar. 2014, 30 juin 2014<br />
29 sep. 2014, 1 déc. 2014<br />
Rennes<br />
17 mar. 2014, 30 juin 2014<br />
29 sep. 2014, 1 déc. 2014<br />
Sophia-antipolis<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 8 déc. 2014<br />
Strasbourg<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Toulouse<br />
10 mar. 2014, 30 juin 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Langage Perl<br />
scripts système Unix/Linux/Windows<br />
OBJECTIFS<br />
Ce stage vous apprendra à programmer ou maintenir des procédures d'exploitation écrites en Perl. Il<br />
permettra de maîtriser le langage lui-même mais aussi de découvrir la " philosophie Perl " avec notamment le<br />
recours à un grand nombre de modules permettant d'élargir quasiment à l'infini ses possibilités.<br />
1) Présentation<br />
2) L'essentiel du langage<br />
3) Expressions régulières<br />
4) Fonctions, procédures, modules<br />
1) Présentation<br />
- Historique du langage.<br />
- Perl pour quel usage ?<br />
- Caractéristiques du langage Perl.<br />
- Les différentes distributions et versions.<br />
- La documentation officielle.<br />
- Installation et première exécution d'un programme Perl.<br />
- Fichiers sources, extension et interprétation.<br />
- Les outils pour utiliser Perl.<br />
Travaux pratiques<br />
Installation de l'interpréteur Perl.<br />
2) L'essentiel du langage<br />
- Structure d'un programme Perl, en-tête de script.<br />
- Conventions de codage et règles de nommage.<br />
- Ajout de commentaires.<br />
- Les chaînes de caractères, interprétation de codes.<br />
- Les variables, nommage et typage. Portée des variables.<br />
- Les scalaires.<br />
- Les opérateurs : calcul, incrément, affectation, comparaison...<br />
- Les tableaux, initialisation, affichage du contenu.<br />
- Les tableaux associatifs (hash table), les fonctions keys et values.<br />
- Les références mémoires.<br />
- Les variables systèmes.<br />
- La notion de blocs.<br />
- Les structures de contrôle conditionnelles : if, if... else, if... elsif... else.<br />
- Les structures de contrôle itératives : while, for, until, foreach.<br />
- Les flux entrées/sorties standard (stdin, stdout, stderr).<br />
Travaux pratiques<br />
Manipulation du langage à travers l'écriture de différents programmes.<br />
3) Expressions régulières<br />
5) Gestion des fichiers et des répertoires<br />
6) Interactions avec le système d'exploitation<br />
7) Aspects avancés, bases de données,<br />
implémentation objet<br />
8) Scripts Perl dans un contexte Web, module<br />
CGI<br />
- Les cas d'utilisations des expressions.<br />
- Panorama des différents motifs : les méta-caractères, les quantificateurs, les caractères spéciaux.<br />
- Le Pattern Matching.<br />
- Le Pattern Substitute.<br />
- Options de la ligne de commande pour l'interpréteur.<br />
- Programme tiers : sed, awk...<br />
- Perl utilisé comme filtre supplémentaire.<br />
Travaux pratiques<br />
Mise en oeuvre d'expressions régulières.<br />
4) Fonctions, procédures, modules<br />
- Définition des fonctions. Différence entre fonctions et procédures.<br />
- La déclaration d'une fonction, le mécanisme d'appel, le passage d'arguments et la récupération des<br />
résultats.<br />
- Visibilité des variables, l'opérateur my.<br />
- Utilisation des références.<br />
- Les fonctions intégrées dans Perl : chomp, chop, length...<br />
- Notion de "package" et de module.<br />
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 34 / 86
- Modules de la distribution standard.<br />
- Modules du CPAN, recensement, documentation, sites de ressources.<br />
- Installation de modules.<br />
- Utilisation d'un module " classique " et d'un module " Orienté Objet ". Les fonctions require et use.<br />
- Fabrication d'un module.<br />
- Documenter les modules créés.<br />
Travaux pratiques<br />
Ecriture de fonctions. Intégration d'un module dans un développement. Création d'un module.<br />
5) Gestion des fichiers et des répertoires<br />
- Notion de filehandle.<br />
- Gestion des fichiers : ouverture, lecture, écriture, fermeture...<br />
- Informations sur les fichiers (propriétaire, taille, droits...), la fonction stat.<br />
- L'opérateur diamant.<br />
- Gestion des répertoires : changement, parcours, création, suppression...<br />
- Gestion des erreurs sur manipulation des fichiers et des répertoires.<br />
Travaux pratiques<br />
Lecture/ écriture dans un fichier. Manipulation des répertoires.<br />
6) Interactions avec le système d'exploitation<br />
- Accès aux informations du système d'exploitation.<br />
- Les commandes agissant sur le système : mkdir, rmdir, chown, chroot, chmod, ...<br />
- Gestion des processus.<br />
- Création de processus fils : system, exec.<br />
- Les quotes inverses.<br />
- Interactions avec le système Windows (modules Win32 et Win32API).<br />
Travaux pratiques<br />
Création de processus fils.<br />
7) Aspects avancés, bases de données, implémentation objet<br />
- Tris personnalisés.<br />
- Traitements complémentaires sur les chaînes de caractères.<br />
- Structures de données élaborées à l'aide des références anonymes.<br />
- Accès aux bases de données à l'aide du module DBI.<br />
- Etablissement et configuration d'une connexion, requêtage et récupération des résultats.<br />
- Création de la structure d'une classe et instanciation : paquetage, sous-programme et référence.<br />
- Constructeur et destructeur d'objets.<br />
- Invocation des méthodes d'une classe.<br />
- Le ramasse-miettes.<br />
Travaux pratiques<br />
Exploitation des données d'une base de données relationnelle.<br />
8) Scripts Perl dans un contexte Web, module CGI<br />
- Protocole HTTP, serveur Web, schéma fonctionnel CGI.<br />
- Le module CGI.<br />
- Variables d'environnement, méthodes GET et POST.<br />
- Génération des éléments HTML du formulaire avec Perl.<br />
- Traitement des formulaires, exploitation des résultats.<br />
Travaux pratiques<br />
Ecriture d'un script CGI en Perl.<br />
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 35 / 86
Stage pratique de 2 jour(s)<br />
Réf : LAP<br />
Participants<br />
Informaticiens concernés par<br />
des procédures d'exploitation<br />
en environnements Unix,<br />
Linux ou Windows.<br />
Pré-requis<br />
Langage Perl, programmation avancée<br />
OBJECTIFS<br />
Ce stage vous présentera les dernières technologies préconisées par la communauté Perl. Vous verrez<br />
comment maintenir efficacement vos programmes écrits " à l'ancienne ", ainsi qu'à en améliorer la<br />
performance. A l'issue du cours, vous maîtriserez les principales primitives du noyau, la création d'interfaces<br />
graphiques et de masques de saisie pour vos procédures d'exploitation. Vous découvrirez également<br />
l'approche plus moderne et plus puissante de la programmation Objet en Perl.<br />
Bonnes connaissances<br />
du langage Perl. Ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
PRL " Langage Perl ".<br />
1) Programmation système<br />
2) Perl et l'objet<br />
3) Interface graphique : de Perl/Tk à GTK<br />
4) Écrire du nouveau code en utilisant GTK<br />
5) Evolutions<br />
Prix 2014 : 1350€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
6 mai 2014, 4 sep. 2014<br />
13 nov. 2014<br />
1) Programmation système<br />
- Rappel des principes de base des processus : fork et exec.<br />
- Rappel des principes de la gestion des signaux.<br />
- Envoyer un signal à des processus : la fonction kill<br />
- Gérer les signaux : le pragma sigtrap, installer un gestionnaire de signal.<br />
- Programmation des sockets et services de IO::Socket à Net::Server.<br />
- Présentation de la programmation des threads.<br />
Travaux pratiques<br />
Ecriture de programmes Perl pour manipuler les fonctions systèmes.<br />
2) Perl et l'objet<br />
- Quelques définitions : programmation orientée objet, classe, instance, constructeur, destructeur, héritage ...<br />
- La mise en oeuvre de l'objet en Perl : le paquetage pour la classe, le hachage pour les attributs, les<br />
fonctions pour les méthodes.<br />
- La création d'instance : la bénédiction (bless) de la référence de l'objet.<br />
- Programmer un constructeur.<br />
- Agir quand l'objet est détruit, la méthode DESTROY.<br />
- L'héritage : le tableau @ISA et la classe UNIVERSAL.<br />
- La surcharge de méthode, l'utilisation de SUPER.<br />
- Abstraction : l'avenir de l'objet dans Perl, de Class::Std et Class::Accessor à Moose.<br />
Travaux pratiques<br />
Programmation de classes. Mise en oeuvre des concepts objets (héritage, surcharge...).<br />
3) Interface graphique : de Perl/Tk à GTK<br />
- Comprendre et maintenir du code écrit en Perl/Tk.<br />
- Présentation et installation de Perl/Tk.<br />
- Gestionnaire de géométrie : Pack, Grid, Place.<br />
- Les Widgets par famille.<br />
- Les boutons : Button, Checkbutton, Radiobutton.<br />
- Libellé et zone de saisie : Label, Entry.<br />
- Ascenseur, liste, menu et saisie de texte : Scrollbar, Listbox, Menubutton, Optionmenu, Text.<br />
- Les conteneurs : Canvas, Frame, Toplevel.<br />
- La gestion des événements.<br />
Travaux pratiques<br />
Création d'une application avec interface graphique en Perl/Tk et gestion événementielle.<br />
4) Écrire du nouveau code en utilisant GTK<br />
- Lien entre Pert et GTK : installer GTK et ses bibliothèques.<br />
- Widget : hiérarchie, création, accélérateurs clavier, conteneurs de bases, ...<br />
- Widget : signaux et événements.<br />
- Les différents types de boutons : Toggle (interrupteurs), radio, ...<br />
Travaux pratiques<br />
Manipulation de différents composants : boutons, boite de boutons, Widget cadre, ...<br />
5) Evolutions<br />
- Fonctionnalités apportées par Perl 5.10, 5.12, 5.14.<br />
- Perl 6 : un nouveau langage.<br />
- Nouveautés : les sigils, typage statique et dynamique, paramètres formels des fonctions.<br />
- Un véritable langage objet.<br />
- De nouveaux concepts : les jonctions et l'évaluation paresseuse.<br />
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 36 / 86
Stage pratique de 5 jour(s)<br />
Réf : DEV<br />
Participants<br />
Développeurs. Nouveaux<br />
utilisateurs de Windev.<br />
Pré-requis<br />
Windev, développement d'applications<br />
OBJECTIFS<br />
Cette formation vous apportera la maîtrise de l'environnement Windev. Vous verrez en détail ses différents<br />
éditeurs et comment l'utiliser efficacement pour programmer vos applications, les connecter à des bases de<br />
données, concevoir leurs IHM au standard Windows, les tester, les packager et les déployer.<br />
Connaissances de base<br />
en programmation et d'un<br />
environnement graphique.<br />
Expérience souhaitable en<br />
développement <strong>logiciel</strong>.<br />
1) Présentation de l'environnement Windev<br />
2) La base de données<br />
3) L'interface homme/machine<br />
4) Les états<br />
5) Les dossiers<br />
6) La programmation<br />
7) L'installation<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
12 mai 2014, 6 oct. 2014<br />
8 déc. 2014<br />
1) Présentation de l'environnement Windev<br />
- L'environnement Windows. L'éditeur de fenêtres.<br />
- L'éditeur de sources : rechercher, remplacer, couper, copier, coller, imprimer. Personnalisation de l'éditeur.<br />
- L'outil de description des fichiers. L'éditeur d'états.<br />
- La compilation, la mise en bibliothèque.<br />
- L'exécutable : programme, bibliothèque, DLL.<br />
- Les utilitaires : WDMAP, WDBACKUP, WDRESTOR, WDOUTIL..., le RAD.<br />
2) La base de données<br />
- Le format HyperFileSQL.<br />
- L'outil de description des fichiers.<br />
- Génération de l'analyse, modifications automatiques, liaisons entre les fichiers.<br />
3) L'interface homme/machine<br />
- Les projets, les menus, les fenêtres.<br />
- L'ergonomie, le menu système, la barre de titre, l'éditeur de styles (feuille de style), les groupes de champs.<br />
- Etude des différents types d'objets. Les tables.<br />
- L'intégration automatique des rubriques d'un fichier dans un écran, la création d'une fenêtre VISION+.<br />
4) Les états<br />
- La description de l'éditeur.<br />
- Les différents modes création : état lié à un fichier, étiquettes, état libre, les tris, les filtres, les ruptures.<br />
- Les différents types de blocs (début de document, haut de page, corps, bas de page, etc.).<br />
- Les différents types d'objets (champ, libellé...).<br />
5) Les dossiers<br />
- Les fichiers de données et leur structure.<br />
- Le dictionnaire des rubriques.<br />
- Les sources des fenêtres : dessin de la fenêtre, détail des objets, source associé à l'objet.<br />
6) La programmation<br />
- Le projet, les procédures, les fonctions.<br />
- Le W-Langage : fonctionnement de l'éditeur de sources, opérateurs et fonctions.<br />
- Tables mémoire et tables fichier. Timer et multitâche.<br />
- Gestion des liaisons série.<br />
- Le grapheur.<br />
- OLE Automation vers Excel, Le dialogue DDE vers Excel.<br />
- Aspect monoposte, multi-instance ou réseau.<br />
- Gestion des triggers.<br />
7) L'installation<br />
- La création d'un programme exécutable.<br />
- La mise en bibliothèque des objets.<br />
- L'installation sur un autre poste.<br />
- Les DLL.<br />
- Maintenance de l'application réalisée.<br />
- L'outil d'installation.<br />
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 37 / 86
Stage pratique de 3 jour(s)<br />
Réf : WEB<br />
Participants<br />
Cette formation pratique<br />
s'adresse aux futurs<br />
développeurs WebDev<br />
souhaitant réaliser des sites<br />
dynamiques Internet ou<br />
Intranet.<br />
Pré-requis<br />
Connaissances de<br />
base du HTML et de la<br />
programmation.<br />
Eligible DIF<br />
Webdev, développement Web<br />
OBJECTIFS<br />
Ce stage vous montrera comment réaliser un site web dynamique à l'aide de WebDev. Vous verrez comment<br />
utiliser les fonctions courantes de l'environnement <strong>logiciel</strong>, créer vos IHMs, utiliser des bases de données et<br />
déployer vos applications sur un serveur Web.<br />
1) Concepts de base<br />
2) Accès aux données<br />
3) Le code<br />
4) Gestion de l'IHM<br />
Travaux pratiques<br />
5) Pages pour l'impression<br />
6) Créer le dossier du site<br />
7) Déploiement de l'application<br />
Prise en main de l'environnement, la bonne méthode de création d'un nouveau projet WebDev.<br />
1) Concepts de base<br />
- Qu'est-ce qu'un site Web dynamique.<br />
- L'environnement de développement.<br />
- L'éditeur graphique.<br />
- L'éditeur de code.<br />
- Etapes de création d'un nouveau projet.<br />
2) Accès aux données<br />
- Créer une base de données HYPERFILE.<br />
- Se connecter à une base de données SQL Server, MySQL ou Oracle.<br />
- Création de l'application à l'aide du RAD.<br />
- Ajouter, supprimer, modifier des données automatiquement.<br />
Travaux pratiques<br />
Réalisation d'une base de données catalogue.de produits<br />
3) Le code<br />
- Le WDLANGAGE (Variables, procédure, fonctions, boucles...)<br />
- Code coté client.<br />
- Code côté serveur.<br />
- Accéder aux données par le code.<br />
Travaux pratiques<br />
Création de pages personnalisés.<br />
4) Gestion de l'IHM<br />
- Apparence des pages.<br />
- Création et utilisation de modèles.<br />
- Les différents objets des pages.<br />
- Réalisation de menus.<br />
Travaux pratiques<br />
Réalisation d'un IHM via le RAD, et ajout de pages spécifiques.<br />
5) Pages pour l'impression<br />
- L'éditeur d'état.<br />
- Les différents états (Lié aux données, libres ...).<br />
- Composition d'un état WEBDEV (entêtes, corps, pieds...).<br />
- Les objets à disposition (différents types de champs).<br />
- Les options d'impression.<br />
- Génération d'impression HTML et PDF.<br />
Travaux pratiques<br />
Génération d'état pour l'impression, au format HTML et PDF.<br />
6) Créer le dossier du site<br />
- Importance de ce dossier.<br />
- Génération du dossier (pages, états, code sources).<br />
Travaux pratiques<br />
Bien organiser ses dossiers de projet, créer la documentation de l'application.<br />
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 38 / 86
7) Déploiement de l'application<br />
- Génération de l'application.<br />
- Génération de la procédure d'installation.<br />
- Déploiement.<br />
Travaux pratiques<br />
Créer le programme d'installation et installation d'un programme<br />
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 39 / 86
Stage pratique de 2 jour(s)<br />
Réf : WED<br />
Participants<br />
Développeurs WebDev.<br />
Pré-requis<br />
Avoir déjà développé des<br />
sites avec WebDev. Ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" WebDev, développement<br />
Web " (réf. WEB).<br />
Eligible DIF<br />
Webdev, développement Web, perfectionnement<br />
OBJECTIFS<br />
Ce stage de perfectionnement vous aidera à développer des applications complexes avec WebDev. Il<br />
insiste sur les fonctions avancées de l'environnement ainsi que sur l'interaction avec d'autres langages et<br />
technologies comme JavaScript, Ajax et PHP.<br />
1) CSS et le référencement<br />
2) Utilisation de scripts externes<br />
3) Composants avancés de WebDev<br />
1) CSS et le référencement<br />
- Utiliser des feuilles de style externe.<br />
- Notion et utilisation d'un kit graphique.<br />
- Bien référencer un site WebDev.<br />
4) Upload / Download<br />
5) Import / Export<br />
6) Etats avancés<br />
Travaux pratiques<br />
Créer et utiliser une feuille CSS externe, bonne pratique du référencement.<br />
2) Utilisation de scripts externes<br />
- Utilisation des procédures événementielle de JavaScript.<br />
- Code JAVASRIPT-WD-LANGAGE.<br />
- Passer des paramètres entre les pages.<br />
- Utiliser Ajax intégré.<br />
- Ajax (XMLHttpRequest().<br />
- Appel de pages PHP.<br />
Travaux pratiques<br />
Rendre un site plus dynamique et plus rapide avec Ajax, appel et passage de paramètres à un script externe.<br />
3) Composants avancés de WebDev<br />
- Traitement des erreurs.<br />
- Maitriser le champ HTML<br />
- Timer et Trigger.<br />
- Envoyer des mails pour le suivi de l'activité du site.<br />
- La réglette personnalisée.<br />
Travaux pratiques<br />
Actualiser automatiquement une page à intervalle régulier.<br />
4) Upload / Download<br />
- Upload d'images et de fichier PDF.<br />
- Télécharger des fichiers depuis le serveur.<br />
Travaux pratiques<br />
Upload de fichier image pour la réalisation d'un site e-commerce.<br />
5) Import / Export<br />
- Lire et écrire dans un fichier texte type CSV.<br />
- Utiliser un fichier Excel avec sa base de données.<br />
Travaux pratiques<br />
Utiliser un fichier texte en tant que compteur.<br />
6) Etats avancés<br />
- Retour sur les blocs d'états (entête, corps, pieds).<br />
- Etats imbriqués.<br />
- Tris, ruptures , filtres.<br />
- Gestion des graphiques.<br />
Travaux pratiques<br />
Réalisation d'états complexes.<br />
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 40 / 86
Stage pratique de 5 jour(s)<br />
Réf : PBF<br />
Participants<br />
Pour les développeurs<br />
désirant acquérir les<br />
techniques et les réflexes<br />
pour développer des<br />
applications client/serveur<br />
avec PowerBuilder.<br />
Pré-requis<br />
Connaissances de base en<br />
programmation et en langage<br />
SQL. Expérience requise en<br />
développement <strong>logiciel</strong>.<br />
Prix 2014 : 2440€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 mar. 2014, 2 juin 2014<br />
8 sep. 2014, 1 déc. 2014<br />
PowerBuilder, les fondamentaux<br />
OBJECTIFS<br />
Cette formation vous permettra de prendre en main l'environnement PowerBuilder et de l'utiliser efficacement<br />
pour développer et déployer des applications Client/Serveur. Vous manipulerez et personnaliserez son<br />
interface de développement, et apprendrez les bonnes pratiques pour créer des applications performantes.<br />
1) Introduction à PowerBuilder<br />
2) Création de fenêtres<br />
3) Ecriture de scripts<br />
4) Utilisation du PowerScript<br />
1) Introduction à PowerBuilder<br />
- Principe et architecture.<br />
- La personnalisation de l'interface.<br />
- Les éléments fondamentaux de la programmation.<br />
- Les bases pour créer une application.<br />
- La Painter Application.<br />
- Les bibliothèques. Les événements.<br />
Travaux pratiques<br />
Prise en main de l'interface de PowerBuilder.<br />
2) Création de fenêtres<br />
5) Création et utilisation de menus<br />
6) Utilisation des objets DataWindow et des<br />
objets utilisateurs<br />
7) La gestion de projets<br />
- Comment créer une fenêtre ?<br />
- Décryptage de la notion de contrôles.<br />
- Passage en revue des types de contrôles possibles.<br />
- Mise en place de contrôles au sein d'une application.<br />
- Le Painter pour les fenêtres.<br />
- Le principe d'héritage. Mise en pratique.<br />
Travaux pratiques<br />
Création de fenêtres et de contrôles. Mise en place du principe d'héritage.<br />
3) Ecriture de scripts<br />
- Définition des scripts. Comment les utiliser ?<br />
- Comment travailler avec les attributs.<br />
- Les différents types de fonction.<br />
- La portée et la visibilité des variables.<br />
- La gestion des erreurs.<br />
Travaux pratiques<br />
Création de scripts simples.<br />
4) Utilisation du PowerScript<br />
- Présentation de PowerScript.<br />
- Le Painter PowerScript.<br />
- Les fonctions et les commandes.<br />
- Le nommage de contrôles, d'objets et de variables.<br />
- Les requêtes SQL intégrées. La syntaxe.<br />
Travaux pratiques<br />
Exemples d'utilisation de PowerScript.<br />
5) Création et utilisation de menus<br />
- Qu'est-ce que le Painter Menu ?<br />
- Savoir construire une hiérarchie de menus.<br />
- Comment associer un script à un menu ?<br />
Travaux pratiques<br />
Création de menus simples. Mise en place d'une hiérarchie de menus. Exemples d'association d'un menu à<br />
une fenêtre.<br />
6) Utilisation des objets DataWindow et des objets utilisateurs<br />
- Présentation du concept de DataWindow. Les types de DataWindow. Le Painter DataWindow.<br />
- Les filtres et les tris. Comment communiquer avec une base de données ? Les fonctions et les événements.<br />
- Les différents types d'objets utilisateurs. Le Painter User Object. Comment créer un objet utilisateur ?<br />
Travaux pratiques<br />
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 41 / 86
Mise en place d'un DataWindow. Exemples d'utilisation de DataWindow. Exemples de création et d'utilisation<br />
d'un objet utilisateur.<br />
7) La gestion de projets<br />
- Comment distribuer une application ?<br />
- Le Painter projet.<br />
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 42 / 86
Stage pratique de 4 jour(s)<br />
Réf : PBP<br />
Participants<br />
Pour les développeurs qui<br />
souhaitent approfondir<br />
leur connaissance sur<br />
PowerBuilder.<br />
Pré-requis<br />
Connaissances de base<br />
de PowerBuilder ou<br />
celles équivalant au stage<br />
ORSYS " PowerBuilder, les<br />
fondamentaux ". Expérience<br />
requise en développement<br />
<strong>logiciel</strong>.<br />
Eligible DIF<br />
PowerBuilder, perfectionnement<br />
OBJECTIFS<br />
Cette formation vous permettra d'approfondir vos connaissances et compétences sur l'utilisation de<br />
l'environnement PowerBuilder. Vous apprendrez à utiliser des techniques avancées pour développer et<br />
déployer vos applications client-serveur, mettant notamment en oeuvre PowerScript, les DataWindows ou<br />
encore les DataStores.<br />
1) Utiliser des techniques PowerScript<br />
2) Gérer les exceptions<br />
3) Utiliser efficacement les DataWindows<br />
1) Utiliser des techniques PowerScript<br />
- Manipuler les tableaux. Travailler avec le Control Array.<br />
- Les fonctions avec les String, Date, et Numeric.<br />
- Les messages entre les objets.<br />
- Utilisation avancée des techniques d'héritage.<br />
- Accès aux variables.<br />
- Appel de fonctions récursives.<br />
Travaux pratiques<br />
Mise en oeuvre de PowerScript.<br />
2) Gérer les exceptions<br />
- Le processus de manipulation des exceptions.<br />
- Lancer des exceptions. Capter et traiter des exceptions.<br />
- Définir ses propres fonctions pour lancer des exceptions.<br />
4) Créer et utiliser des DataStores<br />
5) Mettre en oeuvre des contrôles et techniques<br />
avancés d'IHM<br />
6) Gérer la communication entre les composants<br />
Travaux pratiques<br />
Gérer les exceptions levées par vos applications. Créer ses propres exceptions. Les lever dans ses propres<br />
fonctions.<br />
3) Utiliser efficacement les DataWindows<br />
- Les styles de présentation des DataWindows.<br />
- TreeView DataWindows. CrossTabs.<br />
- Communication avec les bases de données. Les objets transactions.<br />
- Mettre en oeuvre les caractéristiques avancées des DataWindows : graphes, DataWindows imbriqués,<br />
BLOB et DataWindow...<br />
- Utiliser les éléments Find, Print Review, Zoom, Importing Data, Query Mode, Store Procedure Updates...<br />
- Créer des rapports.<br />
- Manipuler les attributs des objets contenus dans un DataWindow. Les types DataWindowChild.<br />
- Les DataWindows dynamiques. Les DataWindows multitables. Les DataWindow Property Conditional<br />
Expressions.<br />
Travaux pratiques<br />
Manipulation des contrôles. Connexion à une base. Manipulations variées des DataWindows pour enrichir<br />
une application.<br />
4) Créer et utiliser des DataStores<br />
- Créer un DataStore.<br />
- Utiliser dans une application un DataStore.<br />
- Partager des données entre DataStores et DataWindows.<br />
- Utiliser une API de synchronisation DataWindow.<br />
Travaux pratiques<br />
Mise en oeuvre des DataStores au sein d'une application. Implémentation du partage de données.<br />
5) Mettre en oeuvre des contrôles et techniques avancés d'IHM<br />
- Utiliser des contrôles de type TreeView.<br />
- Utiliser des contrôles de type ListView.<br />
- Utiliser des contrôles de type Tab.<br />
- Utiliser des contrôles de type OLE.<br />
- Mettre en oeuvre le Drag & Drop dans une application.<br />
- Construire un menu contextuel.<br />
- Créer de manière dynamique une IHM.<br />
Travaux pratiques<br />
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 43 / 86
Test des différents contrôles. Enrichissement d'une application existante avec différents composants évolués<br />
d'IHM.<br />
6) Gérer la communication entre les composants<br />
- Construction et gestion d'un objet pipeline.<br />
- Les fonctions externes.<br />
- Envoi des messages Windows et l'objet message.<br />
Travaux pratiques<br />
Mise en oeuvre des techniques de communication.<br />
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 44 / 86
Stage pratique de 5 jour(s)<br />
Réf : PBA<br />
Participants<br />
Pour les développeurs qui<br />
souhaitent développer des<br />
applications .NET avec<br />
PowerBuilder.<br />
Pré-requis<br />
Bonne connaissance de<br />
PowerBuilder. Expérience<br />
requise en développement<br />
<strong>logiciel</strong>.<br />
Eligible DIF<br />
PowerBuilder, développer des applications .NET<br />
OBJECTIFS<br />
Cette formation s'adresse à tous les développeurs PowerBuilder qui souhaitent apprendre à créer et déployer<br />
des applications .NET en C#. Ils verront comment tirer le meilleur parti de la richesse du Framework .NET<br />
de Microsoft, et comment maximiser leur productivité par leurs connaissances et habitudes de travail en<br />
environnement PowerBuilder.<br />
1) Présentation de la plateforme .NET<br />
2) PowerBuilder 12.0 et ses outils de<br />
développement<br />
3) La syntaxe de base de C#<br />
1) Présentation de la plateforme .NET<br />
- Principe et architecture de la plateforme .NET.<br />
- Architecture du Framework .NET.<br />
- Aperçu des différents types d'applications dans un environnement multicible.<br />
- Outils et environnement de développement.<br />
- Présentation du langage de CIL.<br />
4) Programmation Orientée Objet<br />
5) Création d'applications WPF<br />
6) Fonctionnalités et techniques avancées<br />
Travaux pratiques<br />
Exemple d'un programme C# simple. Exécution en mode géré. Test d'un premier programme.<br />
2) PowerBuilder 12.0 et ses outils de développement<br />
- L'IDE classique et le nouvel IDE .NET.<br />
- Les différences majeures entre les deux IDE.<br />
- La nouvelle terminologie associée au .NET.<br />
- PowerBuilder pour le .NET. L'environnement. Son organisation et ses fonctionnalités.<br />
- Le Visual Studio Isolated Shell.<br />
- Les caractéristiques spécifiques.<br />
- Utilisation des classes .NET et de leurs méthodes à l'intérieur de l'IDE PowerBuilder.<br />
Travaux pratiques<br />
Prise en main de PowerBuilder pour le développement .NET.<br />
3) La syntaxe de base de C#<br />
- Les variables et les expressions : déclaration, constantes, opérateurs, les types.<br />
- Les types de données : Common Type System, rôle de la classe de base System.Object et transtypage.<br />
- Les types valeur et types référence.<br />
- Les instructions de contrôle de flux : boucles et tests.<br />
- Manipulation des tableaux, instructions de contrôle de flux, ...<br />
Travaux pratiques<br />
Ecriture de programmes en C# mettant en oeuvre des algorithmes classiques.<br />
4) Programmation Orientée Objet<br />
- Classes et objets. Modélisation du monde réel par objet.<br />
- Notions de champ, méthode et propriété.<br />
- Héritage. Polymorphisme. Interfaces.<br />
- Définition des classes en C#. Utilisation des objets.<br />
- Définition du contenu de la classe : méthodes et propriétés.<br />
- Le mécanisme de surcharge (constructeurs, méthodes et opérateurs).<br />
- Dérivation et héritage des classes en C#. Classes génériques.<br />
- Objets et classes de base du Framework .NET.<br />
Travaux pratiques<br />
Implémentation sous PowerBuilder dans une application des concepts objets en .NET. Création du squelette<br />
de l'application fil rouge.<br />
5) Création d'applications WPF<br />
- Windows Presentation Foundation.<br />
- Architecture des applications WPF et fondamentaux du langage XAML.<br />
- Principaux contrôles conteneurs et environnement graphique.<br />
- Ressources. Styles. Transformations. Animations. Modèle de contrôle et contrôles du toolkit WPF.<br />
- Infrastructure de liaison de données.<br />
- Créer une IHM avec PowerBuilder et WPF.<br />
- Squelette d'application avec PowerBuilder.<br />
Travaux pratiques<br />
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 45 / 86
Création de l'IHM de l'application à partir de PowerBuilder. Test de contrôles et de la dynamique d'interaction.<br />
6) Fonctionnalités et techniques avancées<br />
- Utilisation des nouvelles fonctionnalités WPF DataWindow.<br />
- Utilisation de contrôles personnalisés et des nouveaux types Graph.<br />
- Gestion et accès aux données. Les DataStore et ses usages.<br />
- Utilisation de WCF (Windows Communications Foundation) et du nouveau Proxy WCF pour appeler un<br />
service WCF.<br />
Travaux pratiques<br />
Mise en oeuvre des fonctions avancées. Appel de services WCF.<br />
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 46 / 86
Stage pratique de 3 jour(s)<br />
Réf : GRO<br />
Participants<br />
Développeur, chef de projets,<br />
architecte applicatif.<br />
Pré-requis<br />
Bonne expérience en<br />
programmation Java.<br />
Eligible DIF<br />
Groovy, programmation<br />
OBJECTIFS<br />
Groovy est un langage orienté objet qui se propose d'améliorer la productivité des développeurs en<br />
simplifiant l'écriture du code et l'usage des modules. Ce stage très pratique vous apprendra les bases de ce<br />
langage et vous montrera comment produire rapidement des applications de qualité. Vous verrez comment<br />
mettre en oeuvre des tests unitaires, l'accès aux données, la manipulation de XML et certains modules<br />
avancés proposés avec Groovy.<br />
1) Introduction<br />
2) Les bases du langage<br />
3) Les tests avec Groovy<br />
4) L'accès aux bases de données<br />
5) Manipulation des documents XML<br />
6) Programmation avancée<br />
1) Introduction<br />
- Les langages dynamiques.<br />
- Présentation du langage Groovy.<br />
- Avantages du langage Groovy.<br />
- Historique du langage Groovy.<br />
- Différence entre Java, Ruby et Groovy.<br />
Travaux pratiques<br />
Mise en place de l'environnement (JDK, Groovy, Eclipse...).<br />
2) Les bases du langage<br />
- Structure des programmes Groovy.<br />
- Compilation et exécution des programmes.<br />
- Les types de base du langage.<br />
- Déclaration des classes, Asset et AST.<br />
- Enumération et collections : Enum, Ranges, Lists, Maps.<br />
- Groovy Closure.<br />
- Les structures de contrôle : Les conditions, Groovy Truth, les itérations.<br />
- Les expressions régulières.<br />
Travaux pratiques<br />
Développer une application orientée objet.<br />
3) Les tests avec Groovy<br />
- Les tests unitaires avec Groovy.<br />
- Utilisations des Mocks.<br />
- Couverture du code.<br />
Travaux pratiques<br />
Définir des tests avec Groovy.<br />
4) L'accès aux bases de données<br />
- L'API SQL de Groovy.<br />
- Requêtes simples et requêtes paramétrées.<br />
- Manipulation des DataSets, indexation négative.<br />
- Utilisation des procédures avec Groovy.<br />
- Groovy et les solutions ORM (GORM).<br />
Travaux pratiques<br />
Implémenter une couche d'accès aux données avec Groovy.<br />
5) Manipulation des documents XML<br />
- Lecture des documents XML (XmlParser, XmlSlurper, DOMCategory).<br />
- Manipulation des documents XML (DOM, JDOM, DOM4J...).<br />
- Validation des documents XML (DTD, XMLSchema, RELAX NG...).<br />
- Les transformations avec XPath, XSL et XSLT.<br />
Travaux pratiques<br />
Manipuler les documents XML avec Groovy.<br />
6) Programmation avancée<br />
- Intégration de Groovy dans Java.<br />
- Groovy Builders (NodeBuilder, MarkupBuilder...).<br />
- Templates.<br />
- Groovlets.<br />
- Les modules GroovyWS, Grails...<br />
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 47 / 86
Travaux pratiques<br />
Développer un Web service avec le module GroovyWS.<br />
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 48 / 86
Stage pratique de 3 jour(s)<br />
Réf : GRG<br />
Participants<br />
Développeur Web, architecte<br />
applicatifs.<br />
Pré-requis<br />
Bonne connaissance du<br />
langage Groovy et des<br />
concepts des technologies<br />
Java Web (Servlet, JSP et<br />
tags).<br />
Eligible DIF<br />
Groovy et Grails, développement Web<br />
OBJECTIFS<br />
Le Framework Grails a été conçu pour faciliter la mise en oeuvre d'applications Web au moyen du langage<br />
Groovy, de Spring et Hibernate, deux frameworks parmi les plus utilisés du marché. Cette formation<br />
vous détaillera son utilisation et les bonnes pratiques à mettre en oeuvre pour assurer la robustesse et<br />
l'extensibilité de vos applications.<br />
1) Introduction<br />
2) Grails : premier pas<br />
3) Modèle métier<br />
1) Introduction<br />
- La plateforme JavaEE.<br />
- Les technologies Web : Servlet, JSP et taglib.<br />
- Design Pattern MVC.<br />
- Le framework Rails.<br />
- Fondements du framework Grails.<br />
- Grails : fonctionnalités et positionnement.<br />
- Les bases du langage Groovy.<br />
Travaux pratiques<br />
Mise en place de l'environnement (JDK, Groovy, Grails, Eclipse...).<br />
2) Grails : premier pas<br />
- Structure d'un projet.<br />
- Modèle métier, les contrôleurs et les vues.<br />
- Eléments de configuration.<br />
- Les utilitaires Grails en ligne de commande.<br />
- Intégration avec l'IDE Eclipse.<br />
Travaux pratiques<br />
Développer une application simple Grails.<br />
3) Modèle métier<br />
4) Application des concepts Grails<br />
5) Compléments<br />
- Mécanisme de mapping Objet-Relation avec GORM (Entités, associations, héritage,...).<br />
- Validation des données.<br />
- Implémentation des opérations CRUD.<br />
- Requêtes dynamiques.<br />
Travaux pratiques<br />
Implémenter une couche d'accès aux données avec GORM.<br />
4) Application des concepts Grails<br />
- Scaffholding statique versus Scaffholding dynamique : génération automatique des artefacts (Contrôleurs,<br />
Vues,...).<br />
- Validation des données de saisie.<br />
- Conversion des données.<br />
- Gestion des actions (action par défaut,...).<br />
- Rendu dynamique :Groovy Scriptlets et GSP. Boîte à outils Grails de tags. Définition des tags<br />
personnalisés. Layout et template. Pagination.<br />
- Internationalisation.<br />
Travaux pratiques<br />
Mettre en oeuvre une application utilisant les concepts Grails : Controller, Actions, Views, tags Grails,<br />
validation...<br />
5) Compléments<br />
- Les concepts d'AJAX.<br />
- Gestion des événements.<br />
- Intégration avec Ajax : les tags.<br />
- Mise en oeuvre des services et tâches.<br />
- Injection des dépendances.<br />
- Intégration des frameworks : Hibernate et Spring.<br />
Travaux pratiques<br />
Améliorer l'application développée en intégrant AJAX et Spring.<br />
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 49 / 86
Stage pratique de 4 jour(s)<br />
Réf : RUB<br />
Participants<br />
Programmeurs, développeurs<br />
Web et Webmasters désirant<br />
concevoir des sites Internet<br />
professionnels orientés Web<br />
Services.<br />
Pré-requis<br />
Connaissances de base<br />
d'HTML, de JavaScript, d'un<br />
langage de développement<br />
côté serveur et en<br />
administration d'un serveur<br />
Web.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
13 mai 2014, 30 sep. 2014<br />
2 déc. 2014<br />
Ruby On Rails 3, développement Web<br />
OBJECTIFS<br />
Ce stage vous apprendra à maîtriser le Framework Ruby On Rails 3 pour développer vos applications<br />
Web. Vous verrez comment tirer parti de la simplicité et de la rapidité d'utilisation de Rails 3 pour créer des<br />
applications riches et évolutives en utilisant le modèle MVC, et pour les connecter à des Services Web.<br />
1) Introduction<br />
2) Préparer son environnement de travail<br />
3) Programmer en Ruby<br />
1) Introduction<br />
- Rappel Internet, HTML et CSS, XML, JSON, YAML.<br />
- Design Pattern MVC : modèles, vues et contrôleurs.<br />
- Les hébergeurs Rails.<br />
2) Préparer son environnement de travail<br />
4) Découverte de Rails<br />
5) Notions avancées de Rails<br />
6) Tests et versioning<br />
- Installer l'environnement de travail (serveur HTTP, BDD et interpréteur Ruby avec RailsInstaller).<br />
- Préparer le dossier de travail.<br />
- Les outils en ligne de commande.<br />
- Installer les outils de développement.<br />
Travaux pratiques<br />
Installation de l'environnement.<br />
3) Programmer en Ruby<br />
- Rappel objet (modules, classes, instances, UML...).<br />
- Les conventions de nommage de Rails.<br />
- La syntaxe Ruby (module, classe, portée, méthodes...).<br />
- Les aides Ruby (RI, Rubycore, inspect).<br />
Travaux pratiques<br />
Réalisation d'un premier programme en Ruby.<br />
4) Découverte de Rails<br />
- Architecture Rails (ActiveRecord, ActiveModel, ORM, ActionVue, ActionController, routage des requêtes...).<br />
- Préparer une maquette HTML/CSS dans le respect des normes (XHTML/WCAG 2).<br />
- Créer un contrôleur de pages statiques.<br />
- Établir des modèles de pages (application / contrôleur).<br />
- Mise en place de scripts de vues ERB, RHTML, HAML, Liquid, SASS, SCSS, RJS, CoffeeScript, RXML.<br />
- Utiliser des assistants de pagination.<br />
- Placer des ressources partagées.<br />
- Paramétrage de la BDD (database.yml), création et "migration" d'une base de données MySQL.<br />
Travaux pratiques<br />
Réaliser une application avec Rails. Établir des modèles de page. Accès à la base MySQL.<br />
5) Notions avancées de Rails<br />
- Le CRUD, RESTFul Web Services, ActiveRecord et le routage orienté ressources, routage avancé des<br />
requêtes.<br />
- Les migrations d'ActiveRecord. Les transactions.<br />
- Les formulaires Rails (form_for, button_to, validation des données...). Les filtres.<br />
- Internationaliser avec le "i18n". Intégrer l'UNICODE côté client et côté serveur.<br />
- Gérer les sessions, les Cookies et le cache.<br />
- Protéger et sécuriser ses pages côté client et serveur.<br />
- Déboguer avec les journaux, la console iRb, les points d'arrêt.<br />
- Dynamiser son site avec Ajax, JQuery et CoffeeScript.<br />
Travaux pratiques<br />
Ecriture de formulaires. Intégration de JQuery et CoffeeScript dans les développements.<br />
6) Tests et versioning<br />
- Le TDD (Test Driven Development). Rails Tests et RSpec. Gérer les versions avec GIT.<br />
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 50 / 86
Stage pratique de 3 jour(s)<br />
Réf : AMZ<br />
Participants<br />
Architectes, développeurs,<br />
administrateurs systèmes.<br />
Pré-requis<br />
Connaissances de base du<br />
Cloud Computing, du langage<br />
Java et d'un langage shell<br />
Unix/Linux.<br />
Prix 2014 : 1830€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 mar. 2014, 30 juin 2014<br />
29 sep. 2014, 8 déc. 2014<br />
Amazon Web Services, architecture et mise en œuvre<br />
OBJECTIFS<br />
Cette formation vous propose de plonger au coeur de l'offre Amazon Web Services. Vous découvrirez<br />
les possibilités de cette plateforme, ses services, ses API et interfaces. Vous verrez comment l'utiliser de<br />
manière industrielle, apprendrez à créer des services et à les utiliser au sein de vos applications.<br />
1) Introduction<br />
2) Les outils de base d'Amazon Web Services<br />
3) Les coûts d'utilisation d'Amazon Web<br />
Services<br />
4) Les outils en ligne de commande<br />
Méthodes pédagogiques<br />
5) Mise en oeuvre des composants AWS<br />
6) Industrialisation et pratiques DevOps<br />
7) Création d'images Cloud AMI<br />
Tout au long de la formation, un parallèle sera fait avec les offres et SDK des Cloud publics "Microsoft Azure"<br />
et "OVH Public Cloud" ainsi qu'avec VMWare vCloud.<br />
Exercice<br />
Des exercices vous permettront de mettre en pratique la majeure partie des concepts présentés, en utilisant<br />
les outils AWS et des outils tiers.<br />
1) Introduction<br />
- Définitions. Clouds publics, privés, privés externalisés.<br />
- Différences entre IaaS, PaaS et VDC (Virtual Data Center).<br />
- Rôle des API et SDK. Des API pour les offres PaaS ?<br />
- Notions de CloudApp et de CloudPlatform. Introduction de l'offre AWS d'Amazon.<br />
2) Les outils de base d'Amazon Web Services<br />
- Présentation du SDK et des API (SOAP, REST).<br />
- La console Amazon.<br />
- Les outils de base pour EC2, S3 et SQS.<br />
- Le modèle de sécurité AWS (SecurityGroups, ...).<br />
- IAM. Exemple de politiques de sécurité.<br />
Exercice<br />
Mise en oeuvre de AWS grâce à la console Web. Définition de profils et utilisateurs Amazon IAM.<br />
3) Les coûts d'utilisation d'Amazon Web Services<br />
- Modèle des comptes Amazon. Notion de Consolidated Account.<br />
- Modèle de coût. Quota d'utilisation gratuite.<br />
- Facteurs influents sur les coûts. Outils pour le suivi et l'analyse des coûts.<br />
Démonstration<br />
Analyse de coûts. Mise en place d'une solution de suivi des coûts.<br />
4) Les outils en ligne de commande<br />
- Les outils CLI dédiés aux composants EC2, ELB et RDS et de l'outil S3CMD.<br />
- Mise en oeuvre de ces outils sous Linux.<br />
Exercice<br />
Création de scripts permettant de mettre en place l'infrastructure virtuelle d'une application.<br />
5) Mise en oeuvre des composants AWS<br />
- Les possibilités des services EC2, S3, SQS, RDS et de leur modèle de programmation.<br />
- Comment les applications Java peuvent-elles utiliser ces ressources ?<br />
- Composants Amazon AWS avancés.<br />
- Les services Virtual Private Cloud, Beanstalk et de leur modèle de programmation.<br />
Exercice<br />
Création de ressources virtuelles avec les services EC2, S3, SQS, RDS. Déploiement d'une application Java.<br />
6) Industrialisation et pratiques DevOps<br />
- Besoin de traçabilité, de répétabilité. Infrastructure as Code (IaC).<br />
- Bonnes pratiques et outils disponibles.<br />
- Définition et utilité des architectures Cloud avec des instances basées sur les rôles.<br />
- Mécanisme Cloud-Init et notion de UserData.<br />
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 51 / 86
Exercice<br />
Création de scripts et exécution "tracée et contrôlée".<br />
7) Création d'images Cloud AMI<br />
- Les images virtuelles. Créer des AMI avec Amazon.<br />
- Intégration avec la Software Factory. Usine à création d'images en mode SaaS - CloudImageFactory.<br />
Exercice<br />
Création d'images AMI AWS.<br />
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 52 / 86
Stage pratique de 3 jour(s)<br />
Réf : SCA<br />
Participants<br />
Développeurs, architectes.<br />
Pré-requis<br />
Bonnes connaissances en<br />
Programmation Orientée<br />
Objet (Java, C#, <strong>C++</strong>).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 mar. 2014, 10 juin 2014<br />
28 juil. 2014, 20 oct. 2014<br />
8 déc. 2014<br />
Scala, programmation<br />
OBJECTIFS<br />
Ce cours montre les bases de la programmation en Scala. Après avoir étudié le support de Scala par la<br />
JVM vous rentrerez dans le détail des concepts liés à la programmation objet et fonctionnelle. Enfin, vous<br />
étudierez les librairies spécifiques à Scala ainsi que sa coexistence avec les librairies de l'écosystème Java.<br />
1) Présentation de Scala<br />
2) Mise en place<br />
3) Les principes de base du langage<br />
4) La programmation fonctionnelle<br />
1) Présentation de Scala<br />
- Historique du langage.<br />
- Les paradigmes objet et fonctionnel.<br />
- Les langages pour la JVM.<br />
- Quelle différence avec les langages Java, C# et <strong>C++</strong> ?<br />
- Les avantages.<br />
- Les types d'applications utilisant Scala (Twitter...).<br />
2) Mise en place<br />
5) Mise en oeuvre des notions-concepts<br />
avancées<br />
6) Utilisation des APIs et librairies<br />
7) Conclusion<br />
- Le Shell Scala.<br />
- Couplage avec les environnements de développement.<br />
- Le compilateur et l'interpréteur Scala.<br />
- Utilisation de Maven.<br />
- Le déploiement sur un serveur.<br />
Travaux pratiques<br />
Mise en place de l'environnement.<br />
3) Les principes de base du langage<br />
- La syntaxe, la notation infixe. Le typage statique, les types de base.<br />
- Les structures de contrôle. Les packages et les imports.<br />
- Les classes (Class et Object), les interfaces. Les conversions implicites, les mécanismes d'inférence.<br />
- La hiérarchie d'héritage. Les exceptions.<br />
Exercice<br />
Ecriture et test d'un programme mettant en oeuvre les bases du langage.<br />
4) La programmation fonctionnelle<br />
- Le paradigme de programmation fonctionnelle.<br />
- Des données non-mutables : variables, structures de données, objets... Les listes.<br />
- Tuples et tables associatives (set). Les fonctions (passage en argument, affectation dans des variables...).<br />
- Les méthodes d'ordre supérieur, les fonctions pures.<br />
Travaux pratiques<br />
Ecriture et test d'un programme mettant en oeuvre la programmation fonctionnelle.<br />
5) Mise en oeuvre des notions-concepts avancées<br />
- Les types génériques. Les annotations.<br />
- Les traits, les mixins.<br />
- Le Pattern Matching (structure de contrôle case, les exceptions, la gestion des événements).<br />
- La récursivité. Les extracteurs.<br />
Exercice<br />
Ecriture et test d'un programme mettant en oeuvre les notions avancées du langage.<br />
6) Utilisation des APIs et librairies<br />
- Les collections, les conversions possibles avec les collections Java.<br />
- Manipulation du XML.<br />
- Utilisation de librairies de l'écosystème java.<br />
Exercice<br />
Cohabitation d'objets Java et Scala au sein d'un même programme. Démonstration d'un déploiement d'une<br />
application Java EE contenant des EJB Scala et Java.<br />
7) Conclusion<br />
- Comparaison des performances. Scala vs Java 8 : enjeux et perspectives.<br />
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 53 / 86
Stage pratique de 3 jour(s)<br />
Réf : BOL<br />
Participants<br />
Cette formation s'adresse<br />
aux informaticiens qui<br />
souhaitent acquérir une<br />
formation opérationnelle pour<br />
développer ou maintenir des<br />
applications en Cobol.<br />
Pré-requis<br />
Connaissances de base en<br />
programmation. Expérience<br />
souhaitable d'un langage de<br />
développement.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 mar. 2014, 30 juin 2014<br />
28 juil. 2014, 6 oct. 2014<br />
15 déc. 2014<br />
Programmation Cobol<br />
OBJECTIFS<br />
Cette formation a pour objectif de communiquer aux stagiaires une réelle compétence dans la programmation<br />
Cobol. L'ensemble des concepts fondamentaux est développé. A l'issue de ce stage les participants savent<br />
lire, écrire, mettre au point, des applications Cobol.<br />
1) Premiers pas en Cobol<br />
2) Les données<br />
3) Instructions et expressions<br />
4) Les tableaux<br />
Travaux pratiques<br />
5) Les fonctions<br />
6) Programmes et sous-programmes<br />
7) Les fichiers<br />
8) Les impressions<br />
De nombreux travaux pratiques illustrent systématiquement les concepts présentés. Ces travaux<br />
représentent 60 % du cours.<br />
1) Premiers pas en Cobol<br />
- Le langage Cobol : ses origines et ses évolutions. Ses principes généraux.<br />
- Les nouvelles versions de Cobol, Cobol et l'approche objet.<br />
- Les différentes parties d'un programme (division).<br />
- Les différentes zones (numéros d'ordre, indicateur, A, B).<br />
- Les principaux symboles du langage (mots et littéraux).<br />
- Les compilateurs : leurs utilités.<br />
- Les outils de debug.<br />
2) Les données<br />
- Les différents Formats, les chaînes de caractères (ou Pictures), les niveaux.<br />
- Les constantes figuratives. La redéfinition d'une donnée.<br />
- Manipulation des données. Inspect, les paramètres utilisés dans les commandes. String et Unstring.<br />
3) Instructions et expressions<br />
- La description des traitements. La procédure division. Structure de base d'une instruction.<br />
- Accept, Display, Move, les différentes zones (alphabétiques, alphanumériques, numériques).<br />
- Les paramètres utilisés dans les commandes.<br />
- Instructions arithmétiques : Compute, expressions arithmétiques, règles d'évaluation, Add, Subtract,<br />
Multiply, Divide.<br />
- Expressions conditionnelles et de branchement : Evaluate et Continue. Goto, Perform, Exit Alter. Les mots<br />
réservés.<br />
- Pour une bonne utilisation de ces instructions.<br />
4) Les tableaux<br />
- Présentation, Set, Search.<br />
- Une utilisation différente des tableaux.<br />
- Implémentation.<br />
5) Les fonctions<br />
- Différents modes d'appel : exemple de fonction.<br />
- Fonctions financières, statistiques, de date, mathématiques.<br />
- Autres fonctions intéressantes.<br />
6) Programmes et sous-programmes<br />
- Les conditions d'utilisation des sous-programmes.<br />
- Call, Exit Program, Cancel, Stop, End Program.<br />
7) Les fichiers<br />
- La description des fichiers. La data division, organisation et structure, la Linkage Section.<br />
- Les commandes de gestion des fichiers : Open, Close, Read, Start, Write, Rewrite, Delete.<br />
8) Les impressions<br />
- Présentation. Les différents types d'édition. Les différents formats de la commande d'édition : Write.<br />
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 54 / 86
Stage pratique de 4 jour(s)<br />
Réf : COR<br />
Participants<br />
Concepteurs et développeurs<br />
amenés à mettre en œuvre<br />
des applications distribuées<br />
basées sur Corba.<br />
Pré-requis<br />
Bonnes connaissances des<br />
techniques de conception<br />
objet. Très bonnes<br />
connaissances d'un langage<br />
objet (Java et/ou <strong>C++</strong>).<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
4 mar. 2014, 10 juin 2014<br />
1 juil. 2014, 21 oct. 2014<br />
9 déc. 2014<br />
Corba, architecture, mise en œuvre<br />
OBJECTIFS<br />
Ce stage vous présentera la norme Corba 2.0 et les technologies associées. Il vous apportera tous les<br />
éléments pour développer avec rigueur et efficacité des applications distribuées avec Corba dans un<br />
environnement comprenant des langages et des systèmes d'exploitation différents.<br />
1) Introduction<br />
2) Caractéristiques des AD, position de Corba<br />
3) L'architecture Corba<br />
4) Le design et Corba<br />
5) Implémenter Corba<br />
1) Introduction<br />
- Pourquoi des AD ? Fonctionnement en multi-tiers.<br />
- Exemples de projets. Historique des AD et de Corba.<br />
- Les apports de Corba 3, CCM.<br />
2) Caractéristiques des AD, position de Corba<br />
6) Client et serveur Corba<br />
7) La gestion des exceptions Corba<br />
8) Le service de nom<br />
9) Le service de gestion des événements<br />
10) CCM<br />
- Vue d'ensemble. Approche client/serveur.<br />
- Les services standard d'une AD : annuaire, gestion de la sécurité, transactions, bases de données.<br />
- Fonctionnement des serveurs d'applications.<br />
- Cycle de fonctionnement d'une AD. Gestion des instances d'objets, des threads et des clients.<br />
- Montée en charge : Load Balancing. Round Robin...<br />
- Comparatif de Corba/autres AD. WS, EJB, DCOM, .Net ...<br />
3) L'architecture Corba<br />
- Corba : un bus <strong>logiciel</strong>, une publication d'instances. un OA côté serveur, un protocole intéropérable GIP.<br />
- L'IR. Le référentiel des implémentations.<br />
- Le protocole GIOP. Les services Corba.<br />
- Service de noms (annuaire) et autres services.<br />
- Gestion des événements.<br />
- Architecture complète Corba.<br />
4) Le design et Corba<br />
- Retour d'expériences. Approche modèle MVC.<br />
- Utilisation de patterns de conception.<br />
5) Implémenter Corba<br />
- Processus de développement Corba.<br />
- Gestion de l'IDL, génération des codes.<br />
- Création des " Stub " et " Skeleton ".<br />
- Approche DII/DSI, invocation dynamique.<br />
- Le langage IDL : possibilités et points-clés.<br />
6) Client et serveur Corba<br />
- Process de développement.<br />
- API standard. Code Java et <strong>C++</strong><br />
- Héritage d'interface IDL, approche TIE.<br />
Travaux pratiques<br />
Création d'un serveur Java.<br />
7) La gestion des exceptions Corba<br />
- Exceptions systèmes Corba, utilisateurs Corba.<br />
- Fonctionnement sur le bus.<br />
Travaux pratiques<br />
Gestion d'exceptions Corba en Java.<br />
8) Le service de nom<br />
- Fonctionnement. Contraintes/Possibilités. API de programmation. Exemples de codes.<br />
9) Le service de gestion des événements<br />
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 55 / 86
- Fonctionnement. Gestion par " callback ". Proxy, admi-nistration. API de programmation. Exemples de<br />
codes.<br />
10) CCM<br />
- Un modèle composants pour Corba.<br />
- CIDL. Composants et interconnexions.<br />
- Packaging. Déploiement. Administration.<br />
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 56 / 86
Stage pratique de 2 jour(s)<br />
Réf : GIT<br />
Participants<br />
Développeurs, architectes,<br />
chefs de projet.<br />
Pré-requis<br />
Aucun.<br />
Prix 2014 : 1490€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
27 mar. 2014, 26 juin 2014<br />
9 oct. 2014, 11 déc. 2014<br />
Aix<br />
3 mar. 2014<br />
Mettre en œuvre le contrôle de versions avec le système<br />
GIT<br />
OBJECTIFS<br />
Vous apprendrez dans ce stage à installer, configurer et utiliser GIT au quotidien pour gérer votre code<br />
source. Vous mettrez en place différents dépôts, apprendrez à gérer les branches de vos projets et résoudrez<br />
les conflits survenant lors d'opérations de fusion. Vous manipulerez également les outils annexes à GIT.<br />
1) Présentation de GIT<br />
2) Installation et configuration<br />
3) Utilisation de GIT, les fondamentaux<br />
4) Gestion locale des fichiers<br />
1) Présentation de GIT<br />
5) Gestion des branches<br />
6) Partage du travail et collaboration<br />
7) Mise en oeuvre des Outils GIT<br />
- Intérêt de la gestion de code.<br />
- Concepts de base du contrôle de version.<br />
- Les différentes typologies : gestion centralisée ou distribuée.<br />
- Les différentes solutions de gestion de versions : (GIT, CVS, SVN, Mercurial, Bazaar, ...).<br />
- Apports la décentralisation.<br />
- Principe de fonctionnement de GIT.<br />
2) Installation et configuration<br />
- Installation sous différents systèmes : UNIX/Windows.<br />
- Le système d'émulation sous Windows msysgit.<br />
- Configuration du fichier .gitconfig (nom, adresse mail, ...).<br />
- La console.<br />
- Déclaration d'un outil d'analyse de différentiel de versions.<br />
Travaux pratiques<br />
Installation et configuration de GIT sous Windows.<br />
3) Utilisation de GIT, les fondamentaux<br />
- Le modèle objet GIT : blob, tree, commit et tag.<br />
- Le répertoire GIT et le répertoire de travail.<br />
- L'index ou staging area.<br />
- Création et initialisation un dépôt.<br />
- Clonage d'un dépôt existant.<br />
- Les concepts de branche, tag et de dépôt.<br />
- Outil de visualisation Gitk.<br />
Travaux pratiques<br />
Création et initialisation d'un dépôt. Utilisation de l'outil de visualisation Gitk.<br />
4) Gestion locale des fichiers<br />
- Consultation de l'état de l'arbre de travail.<br />
- Ajout, ignorance, modification, suppression et recherche de fichiers.<br />
- Enregistrement des modifications (commit).<br />
- Annulation des modifications.<br />
- Visualisation des modifications.<br />
- Parcours de l'historique des révisions.<br />
- Les logs (statistique, formatage, ...).<br />
Travaux pratiques<br />
Manipulation des principales commandes GIT de gestion de modifications de fichiers.<br />
5) Gestion des branches<br />
- La branche « master ».<br />
- Création de branches et de sous-branches.<br />
- Changement de branche.<br />
- Fusion d'une branche (merge/rebase), gestion des conflits.<br />
- Comparaison de deux branches.<br />
Travaux pratiques<br />
Manipulation des principales commandes GIT de gestion des branches (création, fusion, comparaison)<br />
6) Partage du travail et collaboration<br />
- Mise en place d'un dépôt distant public ou privé.<br />
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 57 / 86
- Publier ses modifications (opération de push).<br />
- Récupération des modifications de l'équipe (opération de pull).<br />
- Les branches de suivi.<br />
- Gestion des échecs.<br />
Travaux pratiques<br />
Mise en place d'un dépôt distant et simulation d'un travail collaboratif.<br />
7) Mise en oeuvre des Outils GIT<br />
- Git-gui et TortoiseGIT, la navigation graphique dans GIT.<br />
- GITWeb, la navigation graphique au sein des dépôts.<br />
- GITHub, le service d'hébergement de dépôts.<br />
- Gerrit, le système de revue de code.<br />
Travaux pratiques<br />
Manipulation de quelques outils.<br />
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 58 / 86
Stage pratique de 3 jour(s)<br />
Réf : PSQ<br />
Participants<br />
Concepteur de requêtes<br />
SQL, en charge d'analyse/<br />
reporting, gestionnaire de<br />
bases de données, futur<br />
développeur d'applications de<br />
gestion de base de données,<br />
administrateur ou chargé de<br />
maintenance.<br />
Pré-requis<br />
Connaissances de base en<br />
programmation.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
24 fév. 2014, 31 mar. 2014<br />
28 avr. 2014, 26 mai 2014<br />
30 juin 2014, 15 juil. 2014<br />
15 sep. 2014, 13 oct. 2014<br />
12 nov. 2014, 15 déc. 2014<br />
SQL Server, Programmation SQL<br />
OBJECTIFS<br />
Cette formation vous permettra d'appréhender les fondements du langage SQL. Vous verrez la structure<br />
du langage, les principes généraux des bases de données relationnelles (algèbre relationnelle, théorie des<br />
ensembles), et vous aurez aussi une introduction pratique au développement SQL pour SGBDR.<br />
1) Algèbre relationnelle et norme SQL<br />
2) Extractions de données<br />
3) Regroupements<br />
Travaux pratiques<br />
4) Extractions avancées<br />
5) Mise à jour des données<br />
6) SQL procédural<br />
Les exemples et les travaux pratiques sont réalisés sur MS SQL Server, l'un des SGBDR les plus proches de<br />
la norme SQL.<br />
1) Algèbre relationnelle et norme SQL<br />
- Les principes et notions essentielles du modèle relationnel.<br />
- Comprendre l'algèbre relationnelle.<br />
- Les douze règles de Codd.<br />
- La norme SQL : historique de la normalisation du langage, différentes parties de SQL (DDL, DML, etc.).<br />
- SQL et les SGBDR.<br />
Démonstration<br />
Scripts de création de base de données. Les objets d'une base de données. Découverte de la base étudiée.<br />
2) Extractions de données<br />
- Introduction : la notion de table.<br />
- L'ordre SELECT et la clause TOP.<br />
- Expression des valeurs, prédicats et logique ternaire (NULL), opérateurs, expressions et fonctions SQL.<br />
- Extractions simples monotabulaires.<br />
- Utiliser des jointures internes, externes, simples et avancées.<br />
Travaux pratiques<br />
Extraction à l'aide de la clause WHERE. Utilisation d'opérateurs IN, LIKE, CASE ... des opérateurs<br />
numériques, dates, des fonctions de chaine. Utilisation des jointures. Tri des données.<br />
3) Regroupements<br />
- Fonctions d'agrégation (AVG, SUM, COUNT..)<br />
- Création de sous-ensembles (clause GROUP BY).<br />
- Filtrage des agrégats avec la clause HAVING.<br />
- Fonctions analytiques et de rangement (OVER, RANK, DENSE_RANK..).<br />
Travaux pratiques<br />
Restituer et classer des données groupées à l'aide des fonctions présentées.<br />
4) Extractions avancées<br />
- Opérations ensemblistes.<br />
- Sous-requêtes et comparateurs.<br />
- Corrélation des sous-requêtes. Quantificateurs EXISTS, UNIQUE et DISTINCT.<br />
- Expressions de tables.<br />
- Requêtes récursives à l'aide de la CTE.<br />
- Expressions diverses pour la division relationnelle.<br />
Travaux pratiques<br />
Ecriture de sous-requêtes. Création d'une sous-requête correlée. Utilisation d'expression de table commune.<br />
5) Mise à jour des données<br />
- Les ordres INSERT, UPDATE, DELETE, TRUNCATE.<br />
- Insertion multiligne, modification de colonnes, suppression de lignes à l'aide d'une sous-requête.<br />
- Combinaison d'INSERT ou d'UPDATE.<br />
- Combinaison de CREATE TABLE et d'INSERT.<br />
- Mise à jour des données à travers les vues.<br />
Travaux pratiques<br />
Opérations d'insertion et mises à jour de tables de la base de données.<br />
6) SQL procédural<br />
- Les dialectes SQL des principaux éditeurs.<br />
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 59 / 86
- Les UDF ou fonction utilisateur.<br />
- La gestion d’une transaction et le mécanisme de verrouillage.<br />
- Introduction aux procédures stockées.<br />
- Notions basiques sur les déclencheurs.<br />
Travaux pratiques<br />
Création d'une transaction simple, d'une procédure stockée.<br />
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 60 / 86
Stage pratique de 2 jour(s)<br />
Réf : PAV<br />
Participants<br />
Développeurs,<br />
administrateurs, utilisateurs<br />
avancés, ayant à mettre<br />
en oeuvre des requêtes<br />
complexes avec SQL Server.<br />
Pré-requis<br />
Bonnes connaissances des<br />
bases du langage SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" SQL Server, programmation<br />
SQL " (PSQ).<br />
Prix 2014 : 1350€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
20 mar. 2014, 26 juin 2014<br />
24 juil. 2014, 9 oct. 2014<br />
11 déc. 2014<br />
SQL Server, programmation SQL avancée<br />
OBJECTIFS<br />
Grâce à ce cours, vous découvrirez les expressions et opérateurs SQL avancés, et verrez comment les<br />
utiliser avec efficacité pour résoudre des problématiques d'extraction de données complexes. Vous saurez<br />
traiter des besoins de regroupement, d'analyse, d'échantillonnage et de restitution de données hiérarchisées.<br />
1) Rappel sur les requêtes multitables<br />
2) Opérateurs particuliers<br />
Méthodes pédagogiques<br />
3) Les expressions de tables<br />
4) L'écriture des données<br />
Les stagiaires pourront récupérer les nombreux exemples et TP ainsi que la base servant de fil rouge. Des<br />
références web et bibliographiques sont proposées pour en savoir plus sur chacun des sujets.<br />
Travaux pratiques<br />
Ce stage fait alterner la présentation des concepts et de la syntaxe, et de multiples exercices d'application.<br />
1) Rappel sur les requêtes multitables<br />
- Opérateurs ensemblistes UNION, INTERSECT et EXCEPT.<br />
- Rappel sur les jointures internes et externes.<br />
- Maîtriser les sous-requêtes dans les différentes parties des instructions SQL.<br />
- Corrélations des requêtes imbriquées.<br />
- Opérations d'intra-jointure avec APPLY (CROSS, OUTER) pour les fonctions et les fragments XML.<br />
Travaux pratiques<br />
Résolutions de cas de requêtes mettant en action plusieurs tables.<br />
2) Opérateurs particuliers<br />
- Utilité du produit cartésien (CROSS JOIN).<br />
- La division relationnelle.<br />
- Groupage décisionnel avec CUBE, ROLLUP et GROUPING SET.<br />
- Fonctions analytiques et de fenêtrage : ordonnancement et agrégat avec les clauses OVER et WINDOW.<br />
- Tableaux croisés avec PIVOT et UNPIVOT.<br />
- Échantillon de données avec TABLESAMPLE.<br />
Travaux pratiques<br />
Résolution de cas de division relationnelle. Utilisation des fonctions de groupages décisionnels. Mise en<br />
oeuvre des fonctions analytiques<br />
3) Les expressions de tables<br />
- L'expression de table commune, Common Table Expression (CTE), ou vue non persistante.<br />
- L'utilisation du mot-clé WITH pour spécifier une CTE.<br />
- Les différentes techniques de requêtage dans les arborescences (adjacence, chemin, intervallaire,<br />
récursion).<br />
- Résolution de problèmes de graphes avec les requêtes récursives.<br />
- Utilisation de tables de nombres et de dates (tally tables) pour résoudre des requêtes complexes.<br />
Travaux pratiques<br />
Exprimer des requêtes sous la forme de la CTE récursive.<br />
4) L'écriture des données<br />
- Mise à jour et suppression des données avec sous-requêtes.<br />
- Utilisation de la syntaxe étendue de mise à jour et suppression avec jointures.<br />
- Opérations d'insertion, de mise à jour ou de suppression à partir de résultats d'une jointure, l'opérateur<br />
MERGE.<br />
- Récupération des données ajoutées, modifiées ou supprimées, avec la clause OUTPUT.<br />
Travaux pratiques<br />
Ecriture de commandes de mises à jour complexes avec l'instruction MERGE et les sous requêtes.<br />
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 61 / 86
Stage pratique de 4 jour(s)<br />
Réf : SED<br />
Participants<br />
Développeurs, chef de<br />
projets.<br />
Pré-requis<br />
SQL Server 2012/2008, développement<br />
OBJECTIFS<br />
Ce stage vous procurera toutes les connaissances nécessaires pour développer des applications sous SQL<br />
Server. Il vous apprendra notamment à manipuler les objets d'une base de données, à optimiser les temps<br />
de restitution des données, et à réaliser les opérations de maintenance courantes du développeur.<br />
Connaissances de base en<br />
programmation. Notions sur<br />
les bases de données et le<br />
langage SQL.<br />
1) La construction des bases de données<br />
2) Requêtes d'extraction de données<br />
3) Mise à jour des données<br />
4) Coder en Transact SQL<br />
5) Optimisation de l'exécution des requêtes<br />
6) Maintenance courante pour le développeur<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
4 fév. 2014, 13 mai 2014<br />
29 juil. 2014, 30 sep. 2014<br />
2 déc. 2014<br />
1) La construction des bases de données<br />
- Le stockage physique avec les fichiers et les groupes de fichiers.<br />
- Les schémas SQL ou le stockage logique.<br />
- Bon usage des différents types de données.<br />
- Créer des tables. Mise en place des contraintes.<br />
- Obtenir un rétro script DDL.<br />
Travaux pratiques<br />
Créer les tables d'une base de données et définir les contraintes associées.<br />
2) Requêtes d'extraction de données<br />
- Les opérateurs ensemblistes.<br />
- Les jointures internes et externes. Typologies.<br />
- Les sous-requêtes.<br />
- Utiliser les " Common Table Expression " (CTA) et les requêtes récursives.<br />
- Fonctions fenêtrées et clause OVER (ordonnancement, agrégat et fenêtrage RANGE/ROWS).<br />
- Les opérateurs particuliers (APPLY, PIVOT...).<br />
- La création des vues.<br />
Travaux pratiques<br />
Manipuler des requêtes d'extraction avec différents types de jointures. Présenter les données avec les<br />
fonctions d'agrégat. Créer des vues.<br />
3) Mise à jour des données<br />
- Les mises à jour simples (INSERT, UPDATE et DELETE).<br />
- L'ordre SQL MERGE.<br />
- Mise à jour avec des sous requêtes.<br />
- BULK INSERT et BCP pour le chargement de fichier et l'export de données.<br />
Travaux pratiques<br />
Réaliser des opérations de mise à jour de la base. Importer et exporter des données.<br />
4) Coder en Transact SQL<br />
- Eléments du langage Transact SQL. Notion de Batch.<br />
- Créer des fonctions scalaires et des fonctions tables.<br />
- Présentation des transactions.<br />
- Programmation des déclencheurs.<br />
- Développer des procédures stockées.<br />
Travaux pratiques<br />
Créer des fonctions et des vues paramétrables. Créer des procédures stockées gérant des transactions.<br />
Automatiser des traitements à l'aide de déclencheurs.<br />
5) Optimisation de l'exécution des requêtes<br />
- Visualisation des plans de requêtes.<br />
- Métrique (IO TIME) et comparaison d'exécution.<br />
- Présentation des index. Que faut-il indexer ?<br />
Travaux pratiques<br />
Comparer les temps d'exécution pour des scénarios d'indexation. Utiliser des plans de requêtes.<br />
6) Maintenance courante pour le développeur<br />
- Sauvegarde des données. Scénarios de restauration.<br />
- Maintenir les index et les statistiques.<br />
- Vérifier l'intégrité physique d'une base et la réparer.<br />
Travaux pratiques<br />
Effectuer des sauvegardes et des restaurations. Élaborer un plan de maintenance des index.<br />
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 62 / 86
Stage pratique de 5 jour(s)<br />
Réf : QSM<br />
Participants<br />
Cette formation est destinée<br />
à des ingénieurs systèmes et<br />
des développeurs qui doivent<br />
utiliser ou mettre en oeuvre<br />
SQL Server 2012.<br />
Pré-requis<br />
Bonnes connaissances<br />
du langage SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" SQL Server, programmation<br />
SQL " (réf. PSQ).<br />
Prix 2014 : 2770€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 fév. 2014, 14 avr. 2014<br />
30 juin 2014, 15 sep. 2014<br />
24 nov. 2014<br />
SQL Server 2012, mise en œuvre<br />
OBJECTIFS<br />
Ce stage vous apportera toutes les connaissances nécessaires à la pleine utilisation de SQL Server 2012.<br />
Vous apprendrez à écrire des ordres SQL et utiliser les extensions du langage, à modifier les structures et<br />
mettre en place les contraintes d'intégrité, à charger les données et exploiter au mieux les transactions.<br />
1) Présentation de SQL Server 2012<br />
2) Bases de données et schémas SQL<br />
3) Tables, vues et contraintes<br />
4) Chargement de données et exports<br />
1) Présentation de SQL Server 2012<br />
- Architecture de SQL Server 2012.<br />
- Outils de développement et d'administration.<br />
Travaux pratiques<br />
Prise en main du gestionnaire de configuration et de Management Studio.<br />
2) Bases de données et schémas SQL<br />
- Les identifiants : nommage des objets SQL Server.<br />
- Création de la base de données. Schémas SQL.<br />
- Cycle de vie des objets d'une base.<br />
3) Tables, vues et contraintes<br />
5) Indexation et plans de requêtes<br />
6) SQL avancé avec Transact SQL, code<br />
procédural<br />
7) Transactions et gestion des exceptions<br />
8) Introduction aux techniques avancées<br />
- Langage DDL : création d'objets, contraintes.<br />
- Types de données natifs et types utilisateurs.<br />
- Création des tables et des vues.<br />
- Les contraintes de domaine et de colonne.<br />
- Clé primaire et clés alternatives. Gestion de l'intégrité référentielle.<br />
Travaux pratiques<br />
Création de types utilisateurs. Création de tables et de vues. Ajout de contraintes. Mise en place de clés<br />
primaires et de contraintes d'unicité.<br />
4) Chargement de données et exports<br />
- La commande BULK INSERT.<br />
- Import/export en ligne de commande avec BCP.<br />
- Fonctions OPEN pour interroger les données externes.<br />
- Présentation d'Integration Services.<br />
Travaux pratiques<br />
Chargement des données à l'aide de BULK INSERT et BCP. Utilisation d'OPENROWSET.<br />
5) Indexation et plans de requêtes<br />
- Structure des index : arbre équilibré, index clustered...<br />
- Création d'index : approche de création...<br />
- Analyse des performances.<br />
- Utilisation du Database Tuning Advisor.<br />
Travaux pratiques<br />
Mise en place d'index sur la base de données et constat sur les performances.<br />
6) SQL avancé avec Transact SQL, code procédural<br />
- Groupages OLAP et clauses OUTPUT, SELECT INTO...<br />
- Ordre SQL MERGE. Chiffrement des données.<br />
- Fonctions, procédures stockées, curseurs, déclencheurs.<br />
Travaux pratiques<br />
Création de requêtes avancées de Transact-SQL. Réalisation d'une fonction table multi-instructions.<br />
Procédure stockée pour l'insertion combinée.<br />
7) Transactions et gestion des exceptions<br />
- Les transactions. Niveaux d'isolation. Gestion des exceptions. Transactions imbriquées.<br />
Travaux pratiques<br />
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 63 / 86
Intégration de la gestion des exceptions et des transactions dans les déclencheurs et les procédures<br />
stockées.<br />
8) Introduction aux techniques avancées<br />
- Présentation du Système d'Information Géographique-SIG. Utilisation de XML au sein de SQL Server 2012.<br />
Travaux pratiques<br />
Utilisation du SIG. Interrogation XML.<br />
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 64 / 86
Stage pratique de 2 jour(s)<br />
Réf : TAS<br />
Participants<br />
Chefs de projet, concepteurs<br />
et développeurs Transact-<br />
SQL.<br />
Pré-requis<br />
Bonnes connaissances des<br />
bases du langage SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" SQL Server, programmation<br />
SQL " (PSQ).<br />
Prix 2014 : 1350€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
20 mar. 2014, 26 juin 2014<br />
21 aoû. 2014, 2 oct. 2014<br />
11 déc. 2014<br />
Transact-SQL, optimisation pour SQL Server 2012/2008<br />
OBJECTIFS<br />
Cette formation présente les règles de bonne écriture et d'optimisation du Transact-SQL, pour améliorer les<br />
performances des requêtes et éviter les écueils fréquemment rencontrés lors de la programmation en T-SQL.<br />
1) Le modèle relationnel et le langage SQL<br />
2) Réussir l'indexation<br />
3) Écrire des requêtes performantes<br />
Travaux pratiques<br />
4) Remplacer tables temporaires et curseurs<br />
5) Bonnes pratiques pour les modules de code<br />
Formation interactive, alternant étroitement théorie et pratique. L'apprentissage se fait par l'expérimentation.<br />
1) Le modèle relationnel et le langage SQL<br />
- Les spécificités des bases de données relationnelles et du langage SQL.<br />
- La normalisation du modèle de données.<br />
- Les notions d'écriture ensembliste et déclarative. Les spécificités du dialecte Transact-SQL.<br />
- Le fonctionnement de l'optimiseur SQL.<br />
Travaux pratiques<br />
Expérimentation de requêtes sur des modèles plus ou moins normalisés.<br />
2) Réussir l'indexation<br />
- Les bases de l'indexation. La structure en B-Tree et les différents types d'index.<br />
- Comment choisir ses index en fonction des requêtes ?<br />
- La notion de couverture de requête par un index.<br />
- Le concept de SARG (Search Argument) pour favoriser l'utilisation de l'index.<br />
- Utilisation du profiler et du Database Tuning Advisor.<br />
Travaux pratiques<br />
Indexation de tables pour améliorer les performances de requêtes.<br />
3) Écrire des requêtes performantes<br />
- Les règles de bonne écriture des requêtes SQL.<br />
- Lire et utiliser les statistiques d'exécution et le plan d'exécution. Optimiser ses jointures et ses<br />
regroupements.<br />
- Optimiser le code de mise à jour des données.<br />
- Erreurs les plus communes : SQL dynamique, fonctions utilisateurs, comparaisons insensibles à la casse.<br />
Travaux pratiques<br />
Réécriture de requêtes peu performantes.<br />
4) Remplacer tables temporaires et curseurs<br />
- Maîtriser les sous-requêtes et les opérateurs relationnels.<br />
- Utiliser l'instruction MERGE pour les mises à jour de données complexes.<br />
- Créer des tables de nombres et de dates pour résoudre les problèmes de façon relationnelle.<br />
- Utiliser les fonctions de fenêtrage et les fonctions statistiques.<br />
- Utiliser le CROSS JOIN pour résoudre les problèmes complexes.<br />
- Écrire du code récursif en utilisant des expressions de table.<br />
Travaux pratiques<br />
Résolution de problématiques complexes par des requêtes ensemblistes.<br />
5) Bonnes pratiques pour les modules de code<br />
- Règles pour l'écriture de procédures stockées.<br />
- Maîtriser la compilation et recompilation.<br />
- Minimiser l'impact des déclencheurs. Comprendre les transactions et les problèmes de verrouillage.<br />
- Utiliser les niveaux d'isolation de la transaction.<br />
Travaux pratiques<br />
Ecriture d'une procédure stockée optimisée.<br />
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 65 / 86
Stage pratique de 5 jour(s)<br />
Réf : SEM<br />
Participants<br />
Cette formation est destinée<br />
à des ingénieurs système et<br />
des développeurs doivent<br />
utiliser ou mettre en œuvre<br />
SQL Server 2008.<br />
Pré-requis<br />
Bonnes connaissances<br />
du langage SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
" Programmation SQL " (réf.<br />
PSQ).<br />
Prix 2014 : 2770€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
31 mar. 2014, 30 juin 2014<br />
25 aoû. 2014, 6 oct. 2014<br />
1 déc. 2014<br />
Aix<br />
24 mar. 2014, 23 juin 2014<br />
22 sep. 2014, 8 déc. 2014<br />
Bordeaux<br />
3 mar. 2014, 2 juin 2014<br />
29 sep. 2014, 15 déc. 2014<br />
Bruxelles<br />
3 mar. 2014, 2 juin 2014<br />
15 sep. 2014, 1 déc. 2014<br />
Geneve<br />
3 mar. 2014, 2 juin 2014<br />
15 sep. 2014, 1 déc. 2014<br />
Lille<br />
3 mar. 2014, 2 juin 2014<br />
29 sep. 2014, 15 déc. 2014<br />
Luxembourg<br />
3 mar. 2014, 2 juin 2014<br />
15 sep. 2014, 1 déc. 2014<br />
Lyon<br />
24 mar. 2014, 23 juin 2014<br />
22 sep. 2014, 8 déc. 2014<br />
Nantes<br />
31 mar. 2014, 30 juin 2014<br />
15 sep. 2014, 1 déc. 2014<br />
Rennes<br />
31 mar. 2014, 30 juin 2014<br />
15 sep. 2014, 1 déc. 2014<br />
Sophia-antipolis<br />
24 mar. 2014, 23 juin 2014<br />
22 sep. 2014, 8 déc. 2014<br />
Strasbourg<br />
3 mar. 2014, 2 juin 2014<br />
29 sep. 2014, 15 déc. 2014<br />
Toulouse<br />
3 mar. 2014, 2 juin 2014<br />
29 sep. 2014, 15 déc. 2014<br />
SQL Server 2008, mise en œuvre<br />
OBJECTIFS<br />
Cette formation vous apportera toutes les connaissances nécessaires à la pleine utilisation de SQL Server<br />
2008. Elle vous permettra de comprendre le rôle des divers composants de SQL Server 2008, d'utiliser les<br />
outils de requête, et d'écrire des ordres SQL de manipulation des données incluant les extensions au langage<br />
SQL propres à SQL Server. Elle vous montrera comment modifier la structure des tables, mettre en place les<br />
contraintes d'intégrité et comment exploiter au mieux le concept de transaction.<br />
1) Présentation de SQL Server 2008<br />
2) Bases de données et schémas SQL<br />
3) Tables et vues<br />
4) Les contraintes<br />
5) Chargement de données et exports<br />
1) Présentation de SQL Server 2008<br />
- Présentation de SQL Server 2008. Versions.<br />
- Architecture de SQL Server 2008.<br />
- Outils de développement et d'administration.<br />
- Les bases systèmes.<br />
6) SQL avancé avec Transact SQL<br />
7) Indexation et plans de requêtes<br />
8) Codage procédural<br />
9) Transactions et gestion des exceptions<br />
10) Introduction aux techniques avancées<br />
Travaux pratiques<br />
Prise en main des outils graphiques de SQL Server : gestionnaire de configuration et Management Studio.<br />
2) Bases de données et schémas SQL<br />
- Les identifiants : nommage des objets SQL Server.<br />
- Stockage physique : fichiers de données et journal de transactions.<br />
- Création de la base de données : gestion des espaces de stockage paramètres de création.<br />
- Schémas SQL : concept et utilisation.<br />
- Cycle de vies des objets d'une base.<br />
- Brèves notions sur la gestion des privilèges.<br />
- Vues et procédures de métadonnées.<br />
Travaux pratiques<br />
Création physique d'une base de données. Mise en place de différents schémas SQL. Modification des<br />
paramètres de la base de données<br />
3) Tables et vues<br />
Langage DDL : création d'objets, contraintes<br />
- Types de données SQL Server et types utilisateurs.<br />
- Création des tables : définition des colonnes.<br />
- Gestion des auto-incréments.<br />
- Création et utilisation des vues.<br />
- Conditions de mise à jour à travers les vues.<br />
Travaux pratiques<br />
Création de types utilisateurs. Création de tables et de vues. Manipulation des auto-incréments. Mise à jour à<br />
travers les vues.<br />
4) Les contraintes<br />
- Les contraintes de domaine (CHECK).<br />
- Contraintes de colonne NOT NULL et DEFAULT.<br />
- Clef primaire et clefs alternatives.<br />
- Gestion de l'intégrité référentielle.<br />
- Utilisation de déclencheurs Ttriggers) pour la réalisation des assertions.<br />
Travaux pratiques<br />
Ajout de contraintes de domaines aux types utilisateurs et aux colonnes. Mise en place de clefs primaires et<br />
de contraintes d'unicité. Mise en place de clefs étrangères. Réalisation de contraintes complexes CHECK à<br />
l'aide de fonctions et de déclencheurs.<br />
5) Chargement de données et exports<br />
- Chargement de fichier avec la commande BULK INSERT<br />
- Import/export en ligne de commande avec bcp.<br />
- Fonctions OPEN pour interroger les données externes.<br />
- Gestion des flux interserveurs.<br />
- Integration Services.<br />
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 66 / 86
Travaux pratiques<br />
Chargement des données à l'aide de BULK INSERT et bcp. Utilisation d'OPENROWSET pour faire des<br />
requêtes externes.<br />
6) SQL avancé avec Transact SQL<br />
- Manipulation de données booléennes.<br />
- Groupages OLAP (CUBE, ROLLUP, GROUPING SETS...)<br />
- Fonction de fenêtrage et clause OVER.<br />
- Tableaux croisés avec PIVOT et UNPIVOT.<br />
- Clauses TOP et SAMPLE.<br />
- Clause OUTPUT, SELECT INTO, TRUNCATE TABLE.<br />
- Ordre SQL MERGE.<br />
- Gestion d'objets larges à l'aide du type filestream.<br />
- Cryptage des données<br />
Travaux pratiques<br />
Exercices de requêtes mettant en œuvre les fonctions avancées de Transact-SQL.<br />
7) Indexation et plans de requêtes<br />
- Présentation : rôle des index, utilisation.<br />
- Structure des index : arbre équilibré, index ordonné et non ordonné, statistiques de distribution.<br />
- Création d'index : approche de création, choix des index.<br />
- Utilisation du Database Tuning Advisor.<br />
- Indexation de vues : indications et contraintes.<br />
- Index pour recherche en texte intégral.<br />
- Analyse des performances.<br />
Travaux pratiques<br />
Mise en place d'index sur la base de données et constat sur les performances.<br />
8) Codage procédural<br />
- Syntaxe procédurale du Transact SQL (variables, affectation, types de données et structures).<br />
- Création de fonctions scalaires (UDF).<br />
- Fonction tables (requête paramétrées).<br />
- Principe des procédures stockées.<br />
- Création et utilisation de tables temporaires et de variables table.<br />
- Manipulation de curseurs.<br />
- Déclencheurs : types de triggers.<br />
- Débogage du code Transact-SQL.<br />
Travaux pratiques<br />
Réalisation de fonctions scalaires et de déclencheurs pour gérer la qualité des données. Réalisation d'une<br />
fonction table multi instruction. Programmation d'une procédure stockée pour l'insertion combinée.<br />
9) Transactions et gestion des exceptions<br />
- Principe des transactions : mode implicite et explicite.<br />
- Définition des frontières des transactions.<br />
- Anomalies transactionnelles, gestion des niveaux d'isolation et mise en place des verrous.<br />
- Gestion des exceptions.<br />
- Problématique des transactions imbriquées.<br />
- Transactions distribuées et commit à deux phases.<br />
Travaux pratiques<br />
Intégration de la gestion des exceptions et des transactions dans les déclencheurs et les procédures<br />
stockées.<br />
10) Introduction aux techniques avancées<br />
- Présentation du SIG de SQL Server (système d'information géographique).<br />
- Utilisation de XML au sein de SQL (requêtes avec XQuery/XPath et clause FOR XML).<br />
- Introduction à l'indexation textuelle (Full Text Search).<br />
- Intégration de .NET dans SQL Server.<br />
Travaux pratiques<br />
Utilisation du SIG, interrogation XML et recherches "plain text".<br />
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 67 / 86
Stage pratique de 3 jour(s)<br />
Réf : SQD<br />
Participants<br />
Ingénieur, architecte base<br />
de données, chef de projet<br />
et développeur désireux<br />
de mettre en œuvre SQL<br />
Server 2005 ou 2008 dans<br />
des applications critiques et<br />
ayant déjà pratiqués MS SQL<br />
Server.<br />
Pré-requis<br />
Très bonnes connaissances<br />
de MS SQL Server<br />
2005/2008, ou connaissances<br />
équivalentes à celles<br />
apportées par les stages<br />
"Programmation SQL" (réf.<br />
PSQ) et "SQL Server, mise en<br />
œuvre" (réf. SQM ou SEM).<br />
Eligible DIF<br />
SQL server 2008, mise en œuvre avancée<br />
OBJECTIFS<br />
Cette formation vous apportera les connaissances nécessaires pour la mise en œuvre de bases SQL Server<br />
dans lesquelles la volumétrie des données et la montée en charge sont des enjeux majeurs. Elle vous<br />
permettra de comprendre les techniques essentielles pour gagner en performance ainsi qu'en temps de<br />
développement.<br />
1) Types de données, tables et contraintes<br />
2) Qualité des données, dénormalisation,<br />
fonctions avancées<br />
3) Contraintes complexes<br />
1) Types de données, tables et contraintes<br />
- Création des domaines SQL.<br />
- Gestion des contraintes de domaines.<br />
- Création des tables et intégration des contraintes.<br />
- Rappels sur la gestion des privilèges.<br />
4) Les vues SQL<br />
5) Introduction au mapping relationnel objet<br />
(ORM) côté serveur<br />
6) Bases de données réparties<br />
Travaux pratiques<br />
Création de domaines SQL et utilisation de ces domaines dans la création des tables.<br />
2) Qualité des données, dénormalisation, fonctions avancées<br />
- Fonctions de gestion de la qualité des données.<br />
- Intégration de ces fonctions dans des déclencheurs.<br />
- Dénormalisation de tables via les colonnes calculées, les déclencheurs et les vues indexées.<br />
- Nouvelles fonctions d'agrégat via SQL CLR.<br />
Travaux pratiques<br />
Intégration de la gestion de la qualité des données. Dénormalisation et étude des gains obtenus.<br />
3) Contraintes complexes<br />
- Mise en place de contraintes complexes (CHECK).<br />
- Intégrité référentielle : greffage de la référence, gestion de la mise à jour, problématiques de valuation<br />
partielle.<br />
- Utilisation des procédures stockées pour la simulation de contraintes circulaires ou déférables.<br />
Travaux pratiques<br />
Réalisation de contraintes de validation incluant le calcul d'un agrégat externe. Mise en place d'une contrainte<br />
circulaire.<br />
4) Les vues SQL<br />
- Intérêt des vues.<br />
- Notion de schéma externe.<br />
- Création des vues et limitation des accès aux données.<br />
- Mise à jour des données à travers les vues.<br />
- Utilisation de vues partitionnées pour la montée en charge.<br />
Travaux pratiques<br />
Création de vues. Etude de leurs mises à jour.<br />
5) Introduction au mapping relationnel objet (ORM) côté serveur<br />
- Création de vue de mapping RO pour intégration dans les objets client.<br />
- Mise en place de procédure de correspondance pour la manipulation des objets.<br />
- Utilisation des déclencheurs INSTEAD OF pour simuler la mise à jour de vues complexes.<br />
Travaux pratiques<br />
Mise en place du mapping complet sur un objet relationnel.<br />
6) Bases de données réparties<br />
- Introduction aux architectures de données distribuées avec SODA.<br />
- Les points de terminaison http et les services web SQL Server.<br />
- Utilisation de Service Broker pour des bases de données collaboratives.<br />
Travaux pratiques<br />
Démonstration de Service Broker.<br />
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 68 / 86
Stage pratique de 5 jour(s)<br />
Réf : SQN<br />
Participants<br />
Cette formation est destinée<br />
à des ingénieurs système et<br />
des développeurs qui doivent<br />
utiliser ou mettre en œuvre<br />
SQL Server 2005.<br />
Pré-requis<br />
Bonnes connaissances<br />
du langage SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
"Programmation SQL" (réf.<br />
PSQ).<br />
Prix 2014 : 2770€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
19 mai 2014, 8 sep. 2014<br />
17 nov. 2014<br />
Bruxelles<br />
12 mai 2014, 22 sep. 2014<br />
24 nov. 2014<br />
Geneve<br />
12 mai 2014, 22 sep. 2014<br />
24 nov. 2014<br />
Luxembourg<br />
12 mai 2014, 22 sep. 2014<br />
24 nov. 2014<br />
SQL Server 2005, mise en œuvre<br />
OBJECTIFS<br />
Cette formation vous apportera toutes les connaissances nécessaires à l'utilisation de SQL Server 2005.<br />
Vous y mettrez en pratique l'écriture des requêtes SQL de sélection et mise à jour des données. Vous<br />
apprendrez à modifier la structure des tables et à définir des contraintes d'intégrité référentielle.<br />
1) Création et gestion d'une base de données<br />
2) Spécificités du dialecte Transact-SQL<br />
3) Objets de code<br />
4) Index, traces et plans d'exécution<br />
1) Création et gestion d'une base de données<br />
- Moteurs, composants, objets.<br />
- Outils de développement et d'administration.<br />
- Fichiers de données et journal de transactions.<br />
- Schémas : concept et création (tables, colonnes).<br />
- DDL : création, modification, destruction.<br />
- Vues et procédures de métadonnées.<br />
- Implémentation des contraintes.<br />
- Chargement de données : BULK INSERT, BCP...<br />
5) Langage Transact-SQL<br />
6) Intégration de XML<br />
7) Intégration de .NET<br />
Travaux pratiques<br />
Utilisation de SQL Server Management Studio. Mise en œuvre d'un modèle pour la création de la base,<br />
importation et intégration de données.<br />
2) Spécificités du dialecte Transact-SQL<br />
- Instructions PIVOT et UNPIVOT : tableaux croisés.<br />
- Clauses OUTPUT, SELECT INTO, TRUNCATE TABLE.<br />
- Clauses TOP et SAMPLE. Les objets larges.<br />
Travaux pratiques<br />
Requêtes avec Transact-SQL.<br />
3) Objets de code<br />
- Vues : création et utilisation des vues.<br />
- Procédures : création, valeur de retour.<br />
- Fonctions utilisateurs (UDF) : scalaires...<br />
- Déclencheurs : AFTER et INSTEAD OF.<br />
Travaux pratiques<br />
Création et utilisation d'objets.<br />
4) Index, traces et plans d'exécution<br />
- Structure des index : ordonné...<br />
- Création d'index : approche, choix, pertinence. Utilisation du Database Tuning Advisor.<br />
- Indexation de vues : indications et contraintes.<br />
- Index pour recherche en texte intégral.<br />
- Comprendre le plan de requête, utiliser le profiler.<br />
Travaux pratiques<br />
Création d'index, constat des performances.<br />
5) Langage Transact-SQL<br />
- Identifiants, variables, types de données et structures.<br />
- Création et utilisation de tables temporaires.<br />
- Utilisation des curseurs.<br />
- Les transactions : délimitation, niveau d'isolation.<br />
- Débogage du code Transact-SQL.<br />
- Gestion des erreurs et manipulation des exceptions.<br />
Travaux pratiques<br />
Gestion des transactions et des erreurs.<br />
6) Intégration de XML<br />
- Rappels : types de données, typage.<br />
- Requêtes par Xquery, modification par XML DML.<br />
- Extraction en XML avec l'instruction FOR XML.<br />
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 69 / 86
- Indexation des colonnes XML.<br />
Travaux pratiques<br />
Interrogation d'une base de données, utilisation des typages, extraction directe en XML.<br />
7) Intégration de .NET<br />
- Types d'objets, relation avec SQL Server.<br />
- Les ASSEMBLY. Sécurité du code managé.<br />
- Utilisation de SQL Server 2005 depuis ADO.NET 2.0.<br />
Travaux pratiques<br />
Développement de procédures stockées en .NET dans SQL Server 2005.<br />
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 70 / 86
Stage pratique de 4 jour(s)<br />
Réf : SQS<br />
Participants<br />
DBA SQL Server, chefs de<br />
projets ayant à piloter des<br />
développements impliquant<br />
de fortes volumétries<br />
(données, accès...) et<br />
développeurs face à des<br />
problématiques de temps de<br />
réponse.<br />
Pré-requis<br />
Bonnes connaissances de<br />
la modélisation de données,<br />
des concepts des SGBDR,<br />
de MS SQL Server et des<br />
langages SQL et Transact<br />
SQL. Connaissances de base<br />
sur les OS Windows.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
20 mai 2014, 2 sep. 2014<br />
25 nov. 2014<br />
Bruxelles<br />
4 mar. 2014, 3 juin 2014<br />
23 sep. 2014, 2 déc. 2014<br />
Geneve<br />
4 mar. 2014, 3 juin 2014<br />
23 sep. 2014, 2 déc. 2014<br />
Luxembourg<br />
4 mar. 2014, 3 juin 2014<br />
23 sep. 2014, 2 déc. 2014<br />
SQL Server, optimisation<br />
OBJECTIFS<br />
Cette formation constitue une introduction rationnelle et efficace à l'optimisation des bases des données<br />
relationnelles MS SQL Server en vue d'obtenir de hautes performances pour des applications complexes ou<br />
à forte volumétrie. Elle couvre différentes versions de SQL Server.<br />
1) Le modèle et les données<br />
2) Optimisation du matériel<br />
3) Paramétrage de SQL Server<br />
4) Ecriture et lecture des données<br />
1) Le modèle et les données<br />
5) Optimiser les requêtes SQL<br />
6) Coder pour la performance<br />
7) Gérer de grandes bases de données<br />
- Influence du type de données. Standard de schématisation. Composition des clefs.<br />
- Modélisation en fonction de la volumétrie.<br />
- Utilisation des contraintes et des déclencheurs.<br />
- Qualité des données. Gestion de la redondance.<br />
Travaux pratiques<br />
Comparaison de deux modèles aux données identiques.<br />
2) Optimisation du matériel<br />
- Processeurs et gestion du parallélisme.<br />
- Mémoire vive. Fenêtre de données et RAM optimale.<br />
- Comparaisons des versions 32 et 64 bits de Windows.<br />
- Paramètres des disques durs. RAID et SAN.<br />
- Infrastructure réseau : bonnes pratiques.<br />
Travaux pratiques<br />
Mesure des I/O du serveur physique à l'aide de Perfmon.<br />
3) Paramétrage de SQL Server<br />
- Remarques sur l'installation. Paramètres : OS, SQL Server, session. Audit du serveur avec Perfmon.<br />
- Gestion des ressources par Quota.<br />
Travaux pratiques<br />
Mesure des caractéristiques du serveur logique à l'aide de requêtes SQL et du moniteur de performances.<br />
4) Ecriture et lecture des données<br />
- Le moteur de stockage. Le cache des données.<br />
- Checkpoint et LazyWriter.<br />
- Organisation des tables et index. Volumétrie.<br />
- Transaction. Logs. Niveaux d'isolation.<br />
- Organisation logique des fichiers.<br />
Travaux pratiques<br />
Création d'une base multifichiers et migration des données.<br />
5) Optimiser les requêtes SQL<br />
- Rôle de l'optimiseur. Code procédural. Requêtes complexes. Influence de l'écriture des requêtes.<br />
- Plan de requête et statistiques d'exécution.<br />
- Défragmentation des index.<br />
- Monitorer l'exécution des requêtes.<br />
- Utilisation des DMV pour affiner l'optimisation.<br />
Travaux pratiques<br />
Comparaison des différentes écritures d'une même requête à l'aide de l'audit via Profiler.<br />
6) Coder pour la performance<br />
- Choisir entre Transact SQL et SQLCLR (C#, .Net).<br />
- Bonnes pratiques pour les procédures stockées.<br />
- Transactions : effets de bord et exceptions.<br />
- Déclencheurs et performances.<br />
- Monitorat. Tuning. Mesure.<br />
Travaux pratiques<br />
Réalisation d'une procédure de calcul d'auto-incrément (compteur) et d'une fonction utilisateur.<br />
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 71 / 86
7) Gérer de grandes bases de données<br />
- VLDB (Very Large DataBase).<br />
- La compression des données, des Backups.<br />
- Le partitionnement.<br />
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 72 / 86
Stage pratique de 3 jour(s)<br />
Réf : OSL<br />
Participants<br />
Toute personne ayant<br />
un profil d'informaticien<br />
désirant se servir de SQL en<br />
environnement Oracle.<br />
Pré-requis<br />
Connaissances de base en<br />
informatique.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 fév. 2014, 10 mar. 2014<br />
7 avr. 2014, 5 mai 2014<br />
10 juin 2014, 18 aoû. 2014<br />
15 sep. 2014, 13 oct. 2014<br />
17 nov. 2014, 8 déc. 2014<br />
Aix<br />
17 mar. 2014, 30 juin 2014<br />
6 oct. 2014, 15 déc. 2014<br />
Bordeaux<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 15 déc. 2014<br />
Bruxelles<br />
24 mar. 2014, 22 sep. 2014<br />
15 déc. 2014<br />
Geneve<br />
24 mar. 2014, 22 sep. 2014<br />
15 déc. 2014<br />
Lille<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 15 déc. 2014<br />
Luxembourg<br />
24 mar. 2014, 22 sep. 2014<br />
15 déc. 2014<br />
Lyon<br />
17 mar. 2014, 30 juin 2014<br />
6 oct. 2014, 15 déc. 2014<br />
Nantes<br />
17 mar. 2014, 30 juin 2014<br />
22 sep. 2014, 1 déc. 2014<br />
Rennes<br />
17 mar. 2014, 30 juin 2014<br />
22 sep. 2014, 1 déc. 2014<br />
Sophia-antipolis<br />
17 mar. 2014, 30 juin 2014<br />
6 oct. 2014, 15 déc. 2014<br />
Strasbourg<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 15 déc. 2014<br />
Toulouse<br />
24 mar. 2014, 23 juin 2014<br />
15 sep. 2014, 15 déc. 2014<br />
Oracle SQL<br />
OBJECTIFS<br />
Une formation pratique aux aspects essentiels, logique et syntaxe, du langage SQL. Ce cours vous apportera<br />
une méthode sûre d'écriture de requêtes SQL complexes.<br />
1) Introduction<br />
2) Outils<br />
3) Introduction SQL<br />
1) Introduction<br />
- Le modèle relationnel.<br />
- Notions de base : relation (table), attributs (colonnes), contraintes d'intégrité.<br />
- Contraintes d'intégrité.<br />
2) Outils<br />
- SQL*Plus.<br />
- SQL Developer.<br />
3) Introduction SQL<br />
- Types de données Oracle.<br />
- Création des tables.<br />
- Introduction aux instructions de mise à jour.<br />
- Utilisation des séquences.<br />
- Introduction à l'interrogation (SELECT).<br />
4) Interrogation des données<br />
4) Interrogation des données<br />
5) Objets d'une base de données Oracle<br />
6) Instructions SQL complexes<br />
- Tri et suppression des doublons. Utilisation des alias et des préfixes.<br />
- Traitement de la valeur NULL. Utilisation des fonctions SQL.<br />
- Utilisation des pseudo-colonnes : ROWID et ROWNUM. Utilisation des agrégats : COUNT, SUM, AVG...<br />
- Opérations ensemblistes : union, intersection, différence.<br />
- Requêtes imbriquées : opérateurs IN, EXISTS.<br />
- Utilisation des jointures.<br />
- Jointures externes.<br />
- Groupement : GROUP BY et HAVING.<br />
5) Objets d'une base de données Oracle<br />
- Création et suppression des tables.<br />
- Gestion des contraintes d'intégrité : clé primaire, unicité, non-nullité, CHECK, contraintes référentielles.<br />
- Utilisation des vues.<br />
- Utilisation des synonymes.<br />
- Dictionnaire de données.<br />
6) Instructions SQL complexes<br />
- Paramétrage des scripts SQL*Plus.<br />
- Division et interrogations complexes.<br />
- Instructions de mise à jour avec des requêtes imbriquées.<br />
- Les requêtes hiérarchiques.<br />
- Utilisation des expressions régulières.<br />
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 73 / 86
Stage pratique de 2 jour(s)<br />
Réf : OSP<br />
Participants<br />
Toute personne impliquée<br />
indirectement dans l'exécution<br />
de requêtes SQL avancées<br />
(développeur, DBA, maîtrise<br />
d'ouvrage).<br />
Pré-requis<br />
Bonnes connaissances<br />
des bases du SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage<br />
"Oracle SQL" (réf. OSL).<br />
Expérience requise.<br />
Prix 2014 : 1350€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
27 mai 2014, 25 sep. 2014<br />
20 nov. 2014<br />
Oracle SQL, perfectionnement<br />
OBJECTIFS<br />
Cette formation très pratique se propose de développer les aspects avancés du langage SQL comme<br />
les opérateurs ensemblistes, la gestion des LOB, des Bfiles et du XML, les fonctions d'agrégation et de<br />
statistiques.<br />
1) Les fonctions complémentaires<br />
2) Les opérateurs ensemblistes<br />
3) La gestion des LOB et des Bfiles<br />
4) Agrégation, jointures et sub-select<br />
1) Les fonctions complémentaires<br />
- Fonctions de transformation.<br />
- Fonctions analytiques : Rank, Dense_Rank.<br />
- Fonction hiérarchique. Autres fonctions : Rowid, etc.<br />
5) La gestion des intégrités<br />
6) La gestion du XML<br />
7) Le partitionnement des données<br />
8) La gestion des tables distantes<br />
Travaux pratiques<br />
Mise en forme de données disparates (dates, numériques), liste d'une hiérarchie à plusieurs niveaux.<br />
2) Les opérateurs ensemblistes<br />
- Union et Union ALL.<br />
- Différence Minus.<br />
- Exists, Some, Any, All.<br />
Travaux pratiques<br />
Recherche des différences entre plusieurs tables.<br />
3) La gestion des LOB et des Bfiles<br />
- Utilisations possibles. Définition des tables.<br />
- Insertion et mises à jour des LOB.<br />
- Gestion d'un Bfile.<br />
Travaux pratiques<br />
Ajout d'une photo dans une table, ajout d'un CV dans une table.<br />
4) Agrégation, jointures et sub-select<br />
- Les fonctions d'agrégation et statistiques : Group By Rollup. Group by Cube. Group by Sets.<br />
- Rappel des jointures " classiques ". Auto-jointure. FULL, RIGHT, LEFT.<br />
- Sub-select corrélés/non-corrélés avec des Insert, Update, Delete.<br />
Travaux pratiques<br />
Statistiques et regroupements sur plusieurs critères. Création d'une table à partir d'autres tables.<br />
5) La gestion des intégrités<br />
- Rappel des définitions : unicité, référentielle, cohérence.<br />
- Mise en oeuvre : Primary Key, Foreign Key, Increment, Check.<br />
- Principes d'utilisation. Bonnes pratiques et limites.<br />
Travaux pratiques<br />
Création de tables en intégrité référentielle. Ajout/suppression des contraintes d'intégrité et des contrôles par<br />
Check.<br />
6) La gestion du XML<br />
- Stockage de XML. Utilisation de fonctions avancées XML.<br />
Travaux pratiques<br />
Gestion d'un document XML.<br />
7) Le partitionnement des données<br />
- Les différents types de partitionnements possibles.<br />
- Mise en oeuvre du partitionnement des données.<br />
Travaux pratiques<br />
Création de tables partitionnées, rechargement des données.<br />
8) La gestion des tables distantes<br />
- Rappel des principes : schémas, ODBC, DRDA.<br />
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 74 / 86
- Accès à une table distante. Jointures avec des tables distantes.<br />
Travaux pratiques<br />
Lecture des tables d'autres BD.<br />
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 75 / 86
Stage pratique de 3 jour(s)<br />
Réf : ROD<br />
Participants<br />
Ce stage s'adresse aux<br />
développeurs d'applications<br />
décisionnelles sous Oracle<br />
désireux d'utiliser tout le<br />
potentiel SQL d'Oracle.<br />
Pré-requis<br />
Bonnes connaissances du<br />
langage SQL.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
26 mai 2014, 15 sep. 2014<br />
12 nov. 2014<br />
Oracle SQL pour le décisionnel<br />
OBJECTIFS<br />
Un cours intensif pour acquérir toutes les compétences nécessaires à l'utilisation des fonctionnalités<br />
décisionnelles du SQL d'Oracle.<br />
1) Introduction<br />
2) Groupements des données<br />
3) Agrégation et analyse des données<br />
1) Introduction<br />
4) La clause MODEL<br />
5) Mise à jour des données<br />
6) Objets<br />
- Informatique décisionnelle. Etat de la norme SQL. Norme SQL3 et décisionnel.<br />
- Rappels des concepts liés à un Datawarehouse. Notions de CUBE. Concept OLAP. Analyse<br />
multidimensionnelle.<br />
- Modélisation en étoile et constellation. Notions de dimension. Notion de table de fait.<br />
Etude de cas<br />
Présentation : le modèle, les problématiques.<br />
2) Groupements des données<br />
- Fonctions horizontales. Fonctions verticales. Fonctions d'agrégat.<br />
- Le groupe. Rappels : fonctionnement du GROUP BY, fonctionnement du HAVING.<br />
- Fonctions GROUPING. Syntaxe. Exemples. Gestion des valeurs NULL.<br />
- Le groupe à deux niveaux.<br />
Travaux pratiques<br />
Manipulation de la syntaxe et des fonctionnalités de groupements.<br />
3) Agrégation et analyse des données<br />
- Extensions ROLLUP et CUBE. Expression de GROUPING SET.<br />
- Fonctions de groupes. Fonctions analytiques. La clause de partitionnement.<br />
- La clause d'ordre. La clause de fenêtrage. Fonctions de classement.<br />
- Ordonner les tris. Fonction de classement . Fonctions de fenêtres.<br />
Travaux pratiques<br />
Manipulation de la syntaxe et des fonctionnalités d'agrégation.<br />
4) La clause MODEL<br />
- La mise en oeuvre. La fonction CV.<br />
- La fonction ITERATION_NUMBER. La fonction PRESENTNNV.<br />
- La fonction PRESENTV. La fonction PREVIOUS.<br />
Travaux pratiques<br />
Manipulation de la syntaxe de la clause MODEL.<br />
5) Mise à jour des données<br />
- Insertion multitables. Insertion sans condition.<br />
- INSERT_ALL, INSERT_FIRST. Mises à jour conditionnées.<br />
Travaux pratiques<br />
Alimentation du modèle en étoile.<br />
6) Objets<br />
- Les ETL (Extraction, Transformation, Chargement).<br />
- Interrogation de tables externes. Vues du dictionnaire de données.<br />
- Vues Matérialisées (VM). Intérêt. Syntaxe de création. Options.<br />
- Vues Matérialisées et l'optimisation. Réécriture de requêtes. Dimensions et hiérarchies.<br />
Travaux pratiques<br />
Utilisation des tables externes pour le déplacement des données. Création des vues matérialisées pour<br />
optimiser les requêtes.<br />
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 76 / 86
Stage pratique de 3 jour(s)<br />
Réf : ORD<br />
Participants<br />
Concepteurs, développeurs<br />
et toutes les personnes<br />
impliquées dans des<br />
développements utilisant la<br />
base de données Oracle.<br />
Pré-requis<br />
Bonnes connaissances de<br />
SQL.<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
3 fév. 2014, 3 mar. 2014<br />
7 avr. 2014, 5 mai 2014<br />
2 juin 2014, 28 juil. 2014<br />
25 aoû. 2014, 15 sep. 2014<br />
13 oct. 2014, 17 nov. 2014<br />
8 déc. 2014<br />
Aix<br />
3 mar. 2014, 26 mai 2014<br />
21 juil. 2014, 22 sep. 2014<br />
1 déc. 2014<br />
Bordeaux<br />
12 mai 2014, 28 juil. 2014<br />
15 sep. 2014, 12 nov. 2014<br />
Bruxelles<br />
12 mai 2014, 15 juil. 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Geneve<br />
12 mai 2014, 15 juil. 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Lille<br />
12 mai 2014, 28 juil. 2014<br />
15 sep. 2014, 12 nov. 2014<br />
Luxembourg<br />
12 mai 2014, 15 juil. 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Lyon<br />
3 mar. 2014, 26 mai 2014<br />
21 juil. 2014, 22 sep. 2014<br />
1 déc. 2014<br />
Nantes<br />
17 fév. 2014, 19 mai 2014<br />
15 juil. 2014, 1 sep. 2014<br />
24 nov. 2014<br />
Rennes<br />
19 mai 2014, 15 juil. 2014<br />
1 sep. 2014, 24 nov. 2014<br />
Sophia-antipolis<br />
3 mar. 2014, 26 mai 2014<br />
21 juil. 2014, 22 sep. 2014<br />
1 déc. 2014<br />
Strasbourg<br />
12 mai 2014, 28 juil. 2014<br />
15 sep. 2014, 12 nov. 2014<br />
Toulouse<br />
12 mai 2014, 28 juil. 2014<br />
15 sep. 2014, 12 nov. 2014<br />
Développer en PL/SQL<br />
OBJECTIFS<br />
Le cours PL/SQL a comme objectif la maîtrise du langage PL/SQL et l'utilisation des traitements stockés et<br />
des triggers dans les applications. Les concepts abordés sont systématiquement mis en pratique.<br />
1) Introduction et rappels<br />
2) Eléments du langage<br />
3) Accès à la base<br />
4) Traitements stockés<br />
1) Introduction et rappels<br />
- Traitement transactionnel dans Oracle.<br />
- Objets et dictionnaire d'une base Oracle.<br />
- SQL et PL/SQL. Vue globale de PL/SQL.<br />
- Outils utilisés. Documentation Oracle.<br />
2) Eléments du langage<br />
5) Gestion des erreurs<br />
6) Triggers<br />
7) Compléments<br />
- Environnements hôtes. Introduction syntaxique. Déclarations de variables et de constantes PL/SQL.<br />
- Types de données et conversion. Fonctions prédéfinies.<br />
- Instructions de contrôle : IF- ELSE, la boucle LOOP, la boucle FOR.<br />
- Types composites : records, tables indexées.<br />
- Types objets. Définition des sous-programmes.<br />
- Paramétrage des sous-programmes.<br />
Exercice<br />
Déclaration de variables. Manipulation de la date. Attributs de typage. Utilisation des collections et de leurs<br />
méthodes.<br />
3) Accès à la base<br />
- La base et notion de curseur.<br />
- Accès via curseur implicite : update, delete, insert, select. Utiliser les clauses RETURNING et BULK<br />
COLLECT.<br />
- Collections et FORALL.<br />
- Boucles FOR à curseur. Curseurs en mise à jour.<br />
- Curseurs explicites. Variables curseur.<br />
Exercice<br />
Utilisation de curseur explicite et de BULK COLLECT.<br />
4) Traitements stockés<br />
- Gestion de sous-programmes stockés, de bibliothèques stockées et de paquetages.<br />
- Gestion des traitements stockés : droits d'accès, vues du dictionnaire et dépendance.<br />
- Utilisation des packages.<br />
Exercice<br />
Création de procédures, de fonctions stockées et de paquetages.<br />
5) Gestion des erreurs<br />
- Traitement d'une exception.<br />
- Utilisation de RAISE_APPLICATION_ERROR.<br />
- Déclenchement d'une exception via RAISE.<br />
- Propagation et gestion transactionnelle.<br />
Exercice<br />
Utilisation de Raise et de RAISE_APPLICATION_ERROR.<br />
6) Triggers<br />
- Définition et types de triggers Evénement/Action. Triggers Ordre.<br />
- Lignes (utilisation de : NEW et : OLD), E/C/A (Evénement/Condition/Action).<br />
- " INSTEAD OF " sur les vues, sur événements système.<br />
- Utilisation des transactions autonomes.<br />
Exercice<br />
Création de triggers ordre et triggers ligne.<br />
7) Compléments<br />
- SQL dynamique. Utilisation de dbms_application_info et de WRAP pour cacher le code source.<br />
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 77 / 86
Stage pratique de 3 jour(s)<br />
Réf : DSP<br />
Participants<br />
Développeurs Oracle.<br />
Pré-requis<br />
Bonnes connaissances de la<br />
programmation PL/SQL ou<br />
connaissances équivalentes à<br />
celles apportées par le stage "<br />
Développer en PL/SQL " (réf.<br />
ORD).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
10 fév. 2014, 26 mai 2014<br />
29 sep. 2014, 12 nov. 2014<br />
1 déc. 2014<br />
Développer en PL/SQL, perfectionnement<br />
OBJECTIFS<br />
Ce stage vous apprendra à écrire des programmes PL/SQL et à tirer le meilleur parti des fonctions<br />
avancées : packages, curseurs, méthodes d'interface avancées et ensembles. Il aborde le développement, le<br />
code SQL dynamique et les notions conceptuelles nécessaires à un codage efficace.<br />
1) Rappels sur le PL/SQL<br />
2) Les ensembles<br />
3) Les procédures et les fonctions stockées<br />
4) Les performances et la mise en mémoire<br />
cache<br />
1) Rappels sur le PL/SQL<br />
- Décrire les types de données prédéfinis.<br />
- Créer des sous-types basés sur des types existants.<br />
- Répertorier les règles de conception d'un curseur.<br />
2) Les ensembles<br />
5) Les packages<br />
6) Les déclencheurs<br />
7) Le SQL dynamique<br />
- Présentation des ensembles.<br />
- Tableaux associatifs et tables imbriquées.<br />
- Programmes PL/SQL qui utilisent des ensembles.<br />
- Le stockage des ensembles dans les tables.<br />
- Les ordres SQL dans PL/SQL.<br />
- L'utilisation de la clause RETURNING, BULK COLLECT.<br />
Travaux pratiques<br />
Utiliser les traitements de masse pour améliorer les performances.<br />
3) Les procédures et les fonctions stockées<br />
- Créer une conception modulaire.<br />
- Créer, appeler et supprimer des procédures stockées.<br />
- Implémenter les paramètres de procédure.<br />
- Implémenter le hint de compilation NOCOPY.<br />
- Créer, appeler et supprimer des fonctions stockées.<br />
- Identifier les restrictions liées aux appels de fonctions.<br />
Travaux pratiques<br />
Visualiser les informations des procédures à l'aide des vues du dictionnaire de données et de SQL<br />
Developer.<br />
4) Les performances et la mise en mémoire cache<br />
- Décrire la mise en mémoire en cache des résultats.<br />
- Utiliser le cache des résultats d'interrogation SQL.<br />
- Cache des résultats de fonction PL/SQL.<br />
Travaux pratiques<br />
Vérifier les principaux aspects du cache des résultats de fonction PL/SQL.<br />
5) Les packages<br />
- Identifier les composants d'un package.<br />
- Utiliser le package STANDARD et les fonctions de package.<br />
- Contrôler les effets de bord des sous-programmes PL/SQL.<br />
Travaux pratiques<br />
Créer la spécification et le corps d'un package. Afficher le code source PL/SQL à l'aide du dictionnaire de<br />
données. Appeler des tables PL/SQL d'enregistrements dans des packages.<br />
6) Les déclencheurs<br />
- Comment implémenter les déclencheurs ?<br />
- Présentation des déclencheurs combinés.<br />
- Déclencheur combiné pour les tables et les vues.<br />
- Créer des déclencheurs sur les instructions LDD.<br />
Travaux pratiques<br />
Créer des déclencheurs LMD, INSTEAD OF. Implémenter un déclencheur combiné pour résoudre l'erreur de<br />
table en mutation.<br />
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 78 / 86
7) Le SQL dynamique<br />
- Flux d'exécution du code SQL.<br />
- Présentation du code SQL dynamique.<br />
- Déclarer des variables de curseur.<br />
Travaux pratiques<br />
Exécuter dynamiquement un bloc PL/SQL.<br />
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 79 / 86
Stage pratique de 4 jour(s)<br />
Réf : OPT<br />
Participants<br />
Ce cours s'adresse<br />
aux développeurs et<br />
administrateurs d'applications.<br />
Pré-requis<br />
Bonnes connaissances des<br />
langages SQL et PL/SQL.<br />
Prix 2014 : 2270€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
18 mar. 2014, 15 avr. 2014<br />
20 mai 2014, 24 juin 2014<br />
8 juil. 2014, 19 aoû. 2014<br />
16 sep. 2014, 14 oct. 2014<br />
18 nov. 2014, 15 déc. 2014<br />
Aix<br />
25 mar. 2014, 13 mai 2014<br />
15 juil. 2014, 23 sep. 2014<br />
25 nov. 2014<br />
Bordeaux<br />
4 mar. 2014, 10 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Bruxelles<br />
4 mar. 2014, 10 juin 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Geneve<br />
4 mar. 2014, 10 juin 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Lille<br />
4 mar. 2014, 10 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Luxembourg<br />
4 mar. 2014, 10 juin 2014<br />
23 sep. 2014, 18 nov. 2014<br />
Lyon<br />
25 mar. 2014, 13 mai 2014<br />
15 juil. 2014, 23 sep. 2014<br />
25 nov. 2014<br />
Nantes<br />
1 avr. 2014, 3 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Rennes<br />
1 avr. 2014, 3 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Sophia-antipolis<br />
25 mar. 2014, 13 mai 2014<br />
15 juil. 2014, 23 sep. 2014<br />
25 nov. 2014<br />
Strasbourg<br />
4 mar. 2014, 10 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Toulouse<br />
4 mar. 2014, 10 juin 2014<br />
9 sep. 2014, 4 nov. 2014<br />
Oracle, optimisation d'applications<br />
OBJECTIFS<br />
Grâce à ce cours pratique, vous serez en mesure de réduire d'une manière décisive les temps de réponse<br />
de vos applications. Vous comprendrez le fonctionnement de l'optimiseur intégré et des outils d'analyse et de<br />
gestion d'Oracle. Vous serez en mesure d'écrire des requêtes SQL performantes.<br />
1) Introduction<br />
2) Traitement des requêtes SQL<br />
3) Diagnostic et mesure de performance<br />
4) Optimisation du schéma relationnel<br />
1) Introduction<br />
- Démarche, étapes et acteurs de l'optimisation.<br />
- Problèmes de performances.<br />
- Particularités des types d'applications. Problématiques.<br />
2) Traitement des requêtes SQL<br />
5) L'optimiseur<br />
6) Optimisation des requêtes<br />
7) Exécution en parallèle des requêtes<br />
- Mécanismes internes. Partage des curseurs. Variables de lien dans SQL*Plus et Enterprise Manager.<br />
- Partage des curseurs. Fonctionnalité Adaptive Cursor Sharing. Cache de résultat.<br />
Travaux pratiques<br />
Utilisation des bind variables pour partager des curseurs.<br />
3) Diagnostic et mesure de performance<br />
- Outils d'optimisation. Traces de diagnostic. Services avec les applications client.<br />
- Trace pour votre session. Fichiers de trace SQL. Les fichiers de trace SQL.<br />
Travaux pratiques<br />
Utilisation de Tkprof.<br />
4) Optimisation du schéma relationnel<br />
- Structures principales et chemins d'accès. Balayage complet de table.<br />
- Accélérer les requêtes. Index B*Tree et Bitmap. Tables indexes. Indexes composites et indexes invisibles.<br />
- Règles de gestion des index. Tables globales temporaires.<br />
- Partitionnement des données. Vues matérialisées. Colonnes virtuelles.<br />
Travaux pratiques<br />
Optimisation de requêtes.<br />
5) L'optimiseur<br />
- Recherches de données. Optimisation statistique ou syntaxique. Statistiques destinées à l'optimiseur.<br />
- Collecte dynamique des statistiques. Conversions de types de données. Evaluation des expressions.<br />
- Opérateurs de comparaison. Sous-interrogations. Méthodes de jointure et d'accès aux données.<br />
- Optimisation manuelle des requêtes par hints.<br />
Travaux pratiques<br />
Comparaison des optimiseurs statistique et syntaxique.<br />
6) Optimisation des requêtes<br />
- La conception et l'applicatif. Prédicats composés. Arborescences. Fonctions de groupes.<br />
- Boucles inutiles. Vues et requêtes imbriquées. Updates synchronisés. Les tableaux dans PL/SQL.<br />
- Curseurs implicites/explicites et la récupération des lignes par lot. FORALL.<br />
Travaux pratiques<br />
Optimisation de traitements batch.<br />
7) Exécution en parallèle des requêtes<br />
- Un serveur à plusieurs CPU. Requêtes en parallèle. Réglage automatique des instructions SQL.<br />
- Réglage d'une application. Fonction de conseil STA. Statistiques obsolètes sur les objets.<br />
- Profilage des instructions SQL. Flux de réglage d'un plan et création de profil SQL.<br />
- Database Control et fonction de conseil STA. Recommandations d'implémentation.<br />
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 80 / 86
Stage pratique de 2 jour(s)<br />
Réf : MYP<br />
Participants<br />
Pour toute personne désirant<br />
se servir de SQL dans les<br />
environnements MySQL ou<br />
PostgreSQL.<br />
Pré-requis<br />
Aucune connaissance<br />
particulière.<br />
Prix 2014 : 1350€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
20 mar. 2014, 19 juin 2014<br />
9 oct. 2014, 4 déc. 2014<br />
Aix<br />
20 mar. 2014, 27 mai 2014<br />
2 oct. 2014, 18 déc. 2014<br />
Bordeaux<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Bruxelles<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Geneve<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Lille<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Luxembourg<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Lyon<br />
20 mar. 2014, 27 mai 2014<br />
2 oct. 2014, 18 déc. 2014<br />
Nantes<br />
6 mar. 2014, 12 juin 2014<br />
16 oct. 2014, 11 déc. 2014<br />
Rennes<br />
6 mar. 2014, 12 juin 2014<br />
16 oct. 2014, 11 déc. 2014<br />
Sophia-antipolis<br />
20 mar. 2014, 27 mai 2014<br />
2 oct. 2014, 18 déc. 2014<br />
Strasbourg<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
Toulouse<br />
3 avr. 2014, 26 juin 2014<br />
16 oct. 2014, 18 déc. 2014<br />
SQL pour MySQL et PostgreSQL<br />
OBJECTIFS<br />
Cette formation très pratique focalise sur les aspects essentiels du langage d'interrogation SQL, tant du point<br />
de vue logique que syntaxique. Elle vous apportera également une méthode sûre pour écrire des requêtes,<br />
simples et complexes, en environnement MySQL et PostgreSQL.<br />
1) Introduction<br />
2) Modèle relationnel<br />
3) Les outils client<br />
4) Les objets<br />
Travaux pratiques<br />
5) Requêtes simples<br />
6) Tris et agrégats<br />
7) Jointures<br />
8) Requêtes complexes<br />
L'apprentissage du SQL en environnement MySQL ou PostgreSQL, au choix du participant.<br />
1) Introduction<br />
- Serveur MySQL/PostgreSQL.<br />
- Versions et évolution.<br />
- Ressources et documentation.<br />
2) Modèle relationnel<br />
- Les principes du modèle relationnel.<br />
- L'algèbre relationnelle : opérations relationnelles sur les ensembles de données.<br />
- Introduction à SQL.<br />
3) Les outils client<br />
- L'outil client MySQL.<br />
- Présentation de l'outil " PSQL " de PostgreSQL.<br />
4) Les objets<br />
- Types de données dans MySQL/PostgreSQL.<br />
- Création de tables.<br />
- Utilisation de colonnes auto-incrémentées.<br />
- Utilisation des vues.<br />
Travaux pratiques<br />
Utilisation des outils " mysql " et " psql ", Création de tables et mise à jour de données. Utilisation des vues.<br />
5) Requêtes simples<br />
- L'interrogation (SELECT).<br />
- La mise à jour.<br />
- Opérateurs et critères.<br />
- Les transactions.<br />
Travaux pratiques<br />
Ecriture de requêtes SQL simples.<br />
6) Tris et agrégats<br />
- Tri et doublons: Clause ORDER BY, clause LIMIT, clause OFFSET, suppression des doublons.<br />
- Utilisation de NULL : Opérateur IS NULL.<br />
- Utilisation des fonctions.<br />
- Utilisation des agrégats.<br />
Travaux pratiques<br />
Manipulation des fonctions de tris et d'agrégats.<br />
7) Jointures<br />
- Produit cartésien.<br />
- Jointure interne.<br />
- Jointure externe.<br />
8) Requêtes complexes<br />
- Les requêtes imbriquées : Opérateur IN, opérateur EXISTS, requêtes imbriquées plus générales.<br />
- Opérateurs ensemblistes (union, intersection, différence).<br />
- Groupement de données (clause GROUP BY, HAVING).<br />
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 81 / 86
Travaux pratiques<br />
Ecriture de requêtes SQL simples. Utilisation de fonctions, utilisation d'agrégats, jointures et requêtes<br />
imbriquées, utilisation de GROUP BY et HAVING.<br />
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 82 / 86
Stage pratique de 3 jour(s)<br />
Réf : MSQ<br />
Participants<br />
Ce stage s'adresse à tous<br />
les informaticiens ayant à<br />
développer pour MySQL.<br />
Pré-requis<br />
Connaissances de base<br />
d'un système d'exploitation<br />
(Windows, Linux/Unix).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
17 fév. 2014, 17 mar. 2014<br />
28 avr. 2014, 26 mai 2014<br />
23 juin 2014, 28 juil. 2014<br />
15 sep. 2014, 27 oct. 2014<br />
24 nov. 2014, 15 déc. 2014<br />
Aix<br />
22 avr. 2014, 30 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Bordeaux<br />
22 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Bruxelles<br />
22 avr. 2014, 10 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Geneve<br />
22 avr. 2014, 10 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Lille<br />
22 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Luxembourg<br />
22 avr. 2014, 10 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Lyon<br />
22 avr. 2014, 30 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Nantes<br />
24 mar. 2014, 16 juin 2014<br />
6 oct. 2014, 1 déc. 2014<br />
Rennes<br />
24 mar. 2014, 16 juin 2014<br />
6 oct. 2014, 1 déc. 2014<br />
Sophia-antipolis<br />
22 avr. 2014, 30 juin 2014<br />
27 oct. 2014, 8 déc. 2014<br />
Strasbourg<br />
22 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
Toulouse<br />
22 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 8 déc. 2014<br />
MySQL, prise en main<br />
OBJECTIFS<br />
Ce cours vous permettra d'acquérir toutes les compétences nécessaires à l'utilisation efficace et fiable de la<br />
base de données MySQL : la pratique du langage SQL, les objets de la base de données... Ce stage propose<br />
également une introduction à l'administration.<br />
1) Introduction et prise en main<br />
2) Modèle relationnel, conception et création<br />
d'une base<br />
3) Pratique du SQL avec MySQL<br />
4) Tables transactionnelles InnoDB<br />
Travaux pratiques<br />
5) SQL procédural<br />
6) Connexions, droits d'accès, sécurité<br />
7) Introduction à l'administration<br />
Tout au long du stage, de nombreux travaux pratiques permettent de valider les connaissances théoriques.<br />
1) Introduction et prise en main<br />
- Versions, panorama des fonctionnalités et des outils.<br />
- Ressources et documentation.<br />
- Procédure d'installation.<br />
- Paramétrages de post-installation et premiers tests.<br />
- L'outil client ligne de commandes mysql.<br />
- L'outil graphique MySQL Query Browser.<br />
2) Modèle relationnel, conception et création d'une base<br />
- Eléments de conception d'un schéma de base de données.<br />
- Contraintes d'intégrité.<br />
- Types de données MySQL (numériques, chaînes, dates, types spécifiques...).<br />
- Fonctions intégrées de MySQL.<br />
- Types de tables (MyISAM, MEMORY, MERGE, InnoDB...).<br />
- Création de bases et de tables.<br />
- La base INFORMATION_SCHEMA.<br />
- Jeux de caractères, internationalisation.<br />
Travaux pratiques<br />
Conception et création d'une base en tables MylSAM.<br />
3) Pratique du SQL avec MySQL<br />
- Sélections simples, comparaisons, tris.<br />
- Sélections multitables, différents types de jointures.<br />
- Requêtes imbriquées, préparées.<br />
- Modifications et gestion des vues.<br />
Travaux pratiques<br />
Sélections simples. Sélections multiples, jointures internes et externes, requêtes imbriquées. Modifications et<br />
suppressions de données.<br />
4) Tables transactionnelles InnoDB<br />
- Notion de transaction, niveaux d'isolation.<br />
- Structure physique des tables.<br />
- Programmation des transactions (START TRANSACTION, COMMIT, ROLLBACK).<br />
Travaux pratiques<br />
Mise en oeuvre de transactions.<br />
5) SQL procédural<br />
- Procédures stockées et fonctions.<br />
- Définition des procédures. Déclencheurs (Triggers).<br />
- Gestion des erreurs.<br />
Travaux pratiques<br />
Ecriture de procédures stockées. Récupération de résultats à l'aide de curseurs. Création et utilisation de<br />
triggers.<br />
6) Connexions, droits d'accès, sécurité<br />
- Niveaux de privilèges et vérification des droits.<br />
- Gestion des utilisateurs et de leurs privilèges.<br />
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 83 / 86
- Sécurisation des procédures stockées et des vues.<br />
Travaux pratiques<br />
Gestion des privilèges et des mots de passe.<br />
7) Introduction à l'administration<br />
- Exportation de données.<br />
- Sauvegardes, la commande mysqldump.<br />
- Survol de l'installation de MySQL.<br />
Travaux pratiques<br />
Exportation de données.<br />
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 84 / 86
Stage pratique de 3 jour(s)<br />
Réf : POS<br />
Participants<br />
Développeurs, exploitants<br />
et toute autre personne<br />
désireux d'utiliser au mieux<br />
PostgreSQL ou de migrer vers<br />
PostgreSQL.<br />
Pré-requis<br />
Connaissances de base<br />
d'un système d'exploitation<br />
(Windows, Linux/Unix).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
24 fév. 2014, 31 mar. 2014<br />
28 avr. 2014, 26 mai 2014<br />
30 juin 2014, 8 sep. 2014<br />
6 oct. 2014, 12 nov. 2014<br />
8 déc. 2014<br />
Aix<br />
28 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 15 déc. 2014<br />
Bordeaux<br />
19 mai 2014, 15 juil. 2014<br />
29 sep. 2014, 24 nov. 2014<br />
Bruxelles<br />
19 mai 2014, 29 sep. 2014<br />
24 nov. 2014<br />
Geneve<br />
19 mai 2014, 29 sep. 2014<br />
24 nov. 2014<br />
Lille<br />
19 mai 2014, 15 juil. 2014<br />
29 sep. 2014, 24 nov. 2014<br />
Luxembourg<br />
19 mai 2014, 29 sep. 2014<br />
24 nov. 2014<br />
Lyon<br />
28 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 15 déc. 2014<br />
Nantes<br />
24 fév. 2014, 28 avr. 2014<br />
23 juin 2014, 29 sep. 2014<br />
24 nov. 2014<br />
Rennes<br />
24 fév. 2014, 28 avr. 2014<br />
23 juin 2014, 29 sep. 2014<br />
24 nov. 2014<br />
Sophia-antipolis<br />
28 avr. 2014, 10 juin 2014<br />
13 oct. 2014, 15 déc. 2014<br />
Strasbourg<br />
19 mai 2014, 15 juil. 2014<br />
29 sep. 2014, 24 nov. 2014<br />
Toulouse<br />
19 mai 2014, 15 juil. 2014<br />
29 sep. 2014, 24 nov. 2014<br />
PostgreSQL, prise en main<br />
OBJECTIFS<br />
Le SGBD PostgreSQL dispose de la majorité des fonctionnalités que l'on peut trouver dans des produits<br />
commerciaux comme Oracle ou DB2. Cette formation vous apprendra à l'utiliser de manière efficace,<br />
notamment à créer et à exploiter une base de données, ou encore à programmer avec le langage PL/pgSQL.<br />
1) Introduction<br />
2) SQL avec PostgreSQL<br />
3) Le langage PL/pgSQL<br />
4) Maintenance des données<br />
1) Introduction<br />
- Présentation de PostgreSQL, versions.<br />
- Le modèle relationnel, le schéma.<br />
- Tables, contraintes. Interfaces utilisateurs.<br />
2) SQL avec PostgreSQL<br />
5) Gestion des utilisateurs et des groupes<br />
6) Configuration de PostgreSQL<br />
7) Compléments<br />
- La norme SQL. Positionnement de PostgreSQL. Mise en place du schéma d'une base.<br />
- Type de données PostgreSQL. Tables. Séquences. Vues. Contraintes d'intégrité sur les tables.<br />
- Ajout, modification et suppression des données.<br />
- Interrogation du schéma d'une base. Sélection, restriction, tri, jointure.<br />
- Extractions complexes. Utilisation d'opérateurs. Spécificités SQL de PostgreSQL.<br />
- Fonctionnalités avancées PostgreSQL. Transactions. Vues. Tableaux. Héritage de tables.<br />
Travaux pratiques<br />
Création d'un schéma. Script SQL DDL. Création de vues. Scénarios de transactions.<br />
3) Le langage PL/pgSQL<br />
- Les instructions, types du langage. Blocs de code.<br />
- Structures de contrôle. Erreurs et des exceptions.<br />
- Les curseurs. Déclaration, déplacement et fermeture.<br />
- Les procédures et les fonctions.<br />
- Ajout de sous-programmes à une base de données.<br />
- Les déclencheurs, triggers. Structure.<br />
Travaux pratiques<br />
Fonctions stockées.<br />
4) Maintenance des données<br />
- Importation/exportation de données.<br />
- Avec COPY TO et COPY FROM. Avec Psql.<br />
- Sauvegarde et restauration des données.<br />
- Outils pg_dump. Optimisation de requêtes.<br />
- Les INDEX. L'optimiseur. EXPLAIN et VACUUM.<br />
Travaux pratiques<br />
Importation/exportation de données. Création d'index et analyse de plan d'exécution de requêtes.<br />
5) Gestion des utilisateurs et des groupes<br />
- Création. Authentification.<br />
- Octroi de privilèges.<br />
Travaux pratiques<br />
Création d'utilisateurs, allocation de droits. Tests d'authentification.<br />
6) Configuration de PostgreSQL<br />
- Installation et démarrage d'une base.<br />
- Le Postmaster. Le fichier Postgresql.conf.<br />
- Tables système.<br />
Travaux pratiques<br />
Installation d'une base et configuration.<br />
7) Compléments<br />
- Les interfaces de programmation.<br />
- Connexion de PostgreSQL avec PHP, JDBC, ODBC.<br />
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 85 / 86
Stage pratique de 3 jour(s)<br />
Réf : RIB<br />
Participants<br />
Ce stage s'adresse à tous les<br />
informaticiens ayant à utiliser<br />
MariaDB.<br />
Pré-requis<br />
Connaissances de base<br />
d'un système d'exploitation<br />
(Windows/Linux).<br />
Prix 2014 : 1750€ HT<br />
Eligible DIF<br />
Dates des sessions<br />
Paris<br />
24 mar. 2014, 2 juin 2014<br />
15 sep. 2014, 12 nov. 2014<br />
MariaDB, prise en main<br />
OBJECTIFS<br />
Un cours intensif qui vous permettra d'acquérir toutes les compétences nécessaires à l'utilisation efficace et<br />
fiable de la base de données Maria DB : la pratique du langage SQL, les objets de la base de données, la<br />
sécurité... Ce stage propose également une introduction à l'administration.<br />
1) Présentation du serveur de données MariaDB<br />
2) Le langage SQL<br />
3) Requêtes avancées<br />
1) Présentation du serveur de données MariaDB<br />
4) Optimisation des requêtes<br />
5) Introduction à la programmation<br />
- Le serveur MariaDB, historique, les versions et les autres projets issus de MySQL.<br />
- Les bases de données sous MariaDB (création, suppression, options).<br />
- Les outils MariaDB.<br />
- Les tables (type, contraintes, indexes, colonnes virtuelles, contraintes, etc.).<br />
- Introduction au moteur de stockage MariaDB (MyISAM/Aria,XtraDB/InnoDB, etc.).<br />
Travaux pratiques<br />
Création de bases de données, création de différents types de tables, modifications.<br />
2) Le langage SQL<br />
- Le modèle relationnel.<br />
- Intégrité référentielle (show, information_schema, performance_schema).<br />
- Le langage LMD : SELECT, GROUP BY, HAVING, ORDER BY, LIMIT, UNION...<br />
- Fonctions et expressions SQL (CASE, IF, LIKE, fonctions numériques, fonctions sur les dates, gestion des<br />
valeurs NULL).<br />
- Introduction aux transactions (norme ACID et MariaDB).<br />
Travaux pratiques<br />
Implémentation d'un modèle de données, analyse des contraintes et réalisation de requêtes<br />
3) Requêtes avancées<br />
- Requêtes multitables (INNER, JOIN, CROSS JOIN, LEFT/RIGHT OUTER JOIN).<br />
- Les sous-requêtes (scalaires, listes, tables dérivées)<br />
- Les transactions (fonctionnement, cohérence des données).<br />
- Niveaux d'isolation (READ COMMITED, REPEATABLE READ, READ UNCOMMITED, SERIALIZABLE).<br />
- Verrouillage des tables (type de verrous, visualisation, les verrous mortels).<br />
- Comparaison jointures/sous-requêtes : les avancées de MariaDB.<br />
Travaux pratiques<br />
Réalisation des requêtes avec jointures, de sous-requêtes, requêtes préparées, transactions et analyses des<br />
verrouillages des tables.<br />
4) Optimisation des requêtes<br />
- Plan d'exécution (EXPLAIN, SHOW EXPLAIN, STATISTIQUES).<br />
- Exécution de requêtes et cache de requêtes.<br />
- Indexation et bonnes pratiques.<br />
- Sécurisation des procédures stockées et des vues.<br />
Travaux pratiques<br />
Analyse des plans d'exécution, indexation des requêtes.<br />
5) Introduction à la programmation<br />
- Les procédures stockées et les fonctions.<br />
- Les curseurs.<br />
- La gestion des erreurs.<br />
- Les triggers : type, utilité.<br />
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 86 / 86