19.06.2013 Views

Développement avec Java entreprise (J2EE)

Développement avec Java entreprise (J2EE)

Développement avec Java entreprise (J2EE)

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

TechnoWide – Experts en Nouvelles Technologies & Transfert de Compétences<br />

TECHNOWIDE<br />

~<br />

Catalogue<br />

des Formations TECHNIQUES<br />

JAVA / .NET / SOA / EJB / AJAX / <strong>J2EE</strong> / JEE5 / C# / JBOSS / ECLIPSE PHP /<br />

STRUTS / C++ / Internet / SharePoint / SpringF / PERL / PYTHON FORTRAN /<br />

DELPHI / MySQL / SPIP / Joomla /VB / Windev / Webdev / XML / XUL / APACHE /<br />

Open Source / ORACLE SQL Server / MySQL / COM/DCOM / BPEL / JBI / ASP /<br />

PostGreSQL / Réseau / VISTA / TCP/IP CISCO /LINUX / Sécurité / Microsoft /<br />

Lotus / VMWare / XEN / HyperV / CITRIX / OLAP / IIS / UML / UML2 / Conduite de<br />

Projets / Management ...<br />

www.technowide.fr<br />

Technowide – 3 rue du Gof – Parc Innolin – 33700 MERIGNAC<br />

1


Qui sommes-nous ?<br />

Technowide est un organisme de Formation destiné aux<br />

professionnels de l'informatique. Depuis plusieurs années, nous<br />

formons les ingénieurs, techniciens et responsables informatique des<br />

<strong>entreprise</strong>s du Grand Sud-ouest sur les technologies les plus diverses.<br />

Nous réalisons tous les types de missions de formation, qu’ils soient standards ou<br />

spécifiques.<br />

Choisir TechnoWide, c’est l’assurance de suivre une formation adaptée, issue du<br />

terrain et évolutive.<br />

…une formation adaptée<br />

De par l’expérience de nos architectes/formateurs, nous assurons un véritable transfert de<br />

compétences sur les NTIC, afin d’accompagner nos clients dans le choix et la mise en<br />

œuvre de ses environnements informatiques.<br />

Nos actions de formation sont créées systématiquement sur mesure et animées par nos<br />

Consultants/Formateurs.<br />

Dans un souci de qualité et d’adéquation face à vos objectifs, nous proposons pour chaque<br />

nouvelle action de formation, de rencontrer ou d’auditer par téléphone, le responsable du<br />

service ou un représentant des stagiaires.<br />

L’objectif étant de proposer des programmes personnalisés, établis conjointement entre<br />

l’intervenant et le ou les stagiaires à partir de leur niveau et de leurs attentes.<br />

…des cours issus du terrain<br />

Nos Consultants/Formateurs passent 1/3 de leur temps à mener des missions et des<br />

projets et font ainsi bénéficier les stagiaires de toute cette expérience "terrain".<br />

Construits de manière pédagogique et pragmatique, ces cours permettent à vos<br />

collaborateurs de mettre en pratique dans leur contexte d'<strong>entreprise</strong>, toute la connaissance<br />

acquise pendant la formation.<br />

…et une veille technologique constante<br />

Notre équipe vous garantit leur passion et leur curiosité à l’égard des nouvelles<br />

technologies.<br />

Chaque nouveau produit, chaque nouvelle technologie enseignés sont préalablement<br />

testés et analysés, ceci nous permet de vous proposer des formations fiables sur les<br />

outils de demain.<br />

2


La formation le Transfert de compétences<br />

Une équipe d’Experts/formateurs, spécialistes de la prestation<br />

de service et de la formation, capitalisant plus de 15 ans<br />

d’expérience professionnelle chacun.<br />

o Des interventions variées : conseil, expertise, intégration,<br />

migration, développement, transfert de compétences,<br />

assistance technique<br />

Des moyens logistiques adaptés<br />

o Ordinateurs puissants et renouvelés régulièrement<br />

o Salles connectées en réseau & Internet à haut-débit<br />

o Utilisation systématique d’un Vidéo-projecteur<br />

o Maintenance par mail gratuite pendant 1 an<br />

Des principes pédagogiques simples et éprouvés<br />

o Formations en petit groupe<br />

o Exercices pratiques nombreux<br />

o Evaluations « à chaud » et « à froid »<br />

Des cursus complets <strong>avec</strong> une approche en mode projet.<br />

Site de Formation à Mérignac<br />

Salle de Formation pour un groupe de personnes<br />

3


TechnoWide<br />

Parc Innolin<br />

3 rue du Golf<br />

33700 MERIGNAC<br />

R.C.S. : 484 986 393<br />

Renseignements<br />

ATOS<br />

ARMEE DE TERRE (RTSO)<br />

CELM DE BISCAROSSE<br />

C.R.N.A. (AVIATION CIVILE)<br />

CESNAC (AVIATION CIVILE)<br />

CNRS AQUITAINE/LIMOUSIN<br />

CREDIT AGRICOLE<br />

DASSAULT SYSTEMES<br />

FORD AQUITAINE INDUSTRIES<br />

FRANCE TELECOM<br />

GAZ DE BORDEAUX<br />

GROUPE VINCI<br />

HENNESSY<br />

INRA<br />

Comment nous joindre ?<br />

Service Commercial Bordeaux : Guillaume SIMON<br />

Portable : 06 89 17 94 94<br />

Fax : 09 51 76 06 88<br />

organisme de formation N° 72 33 06815 33<br />

SIRET : 484 986 393 00011<br />

TVA : FR 284 849 863 93<br />

Quelques références<br />

4<br />

guillaume.simon@technowide.fr<br />

JOURNAL SUD-OUEST<br />

LECTRA<br />

LOGICA<br />

ORANGE FRANCE<br />

ONAYA<br />

POUEY INTERNATIONAL<br />

SERV. INFORMATION AERONAUTIQUE<br />

SMURFIT KAPPA COMPTOIR DU PIN<br />

SMURFIT KAPPA CELLULOSE DU PIN<br />

STERIA<br />

STGA<br />

SYSTONIC<br />

UNIVERSITÉS DE BORDEAUX…


Filière <strong>Développement</strong><br />

Sommaire<br />

Introduction à la programmation 3 jours<br />

Initiation à la programmation objet 2 jours<br />

MS Project: Gérer un projet 3 jours<br />

Conduite de projet informatique <strong>avec</strong> UP, Cycle en Y-2TUP et XP 3 jours<br />

SOA : Architecture Orientée Services 3 jours<br />

Integration continue 4 jours<br />

Stratégie de test, vérification et validation 3 jours<br />

Recueil du besoin et gestion des tests (Test Driven Requirement) 2 jours<br />

Initiation UML 4 jours<br />

UML 2, analyse et conception 4 jours<br />

UML : Méthodes RUP et UML pour chef de projet 3 jours<br />

Introduction à XML (cours pratique) 3 jours<br />

XML et l'objet pour les administrateurs systèmes 2 jours<br />

XML : Transformations XSL (XSL-T, XPath, XSL-FO) 4 jours<br />

Corba 3, Architecture et mise en oeuvre 4 jours<br />

Programmation en C 5 jours<br />

Programmation Objet en C++ 5 jours<br />

C++ Programmation efficace et avancée 5 jours<br />

Développer <strong>avec</strong> Visual Basic 5 jours<br />

Visual Basic, perfectionnement accès aux données, composants, Web 4 jours<br />

Delphi - Programmation 5 jours<br />

Filière JEE/.NET<br />

Le langage C# (.NET) 5 jours<br />

Le langage C# 3.0 pour les développeurs .NET 1.1 2 jours<br />

Programmation en C# 2.0 pour développeur expérimenté 4 jours<br />

Visual Basic .NET 5 jours<br />

Visual Basic .NET perfectionnement 5 jours<br />

Visual Basic .NET pour développeur Visual Basic 5 jours<br />

Visual Basic .NET <strong>avec</strong> visual studio 2005 5 jours<br />

<strong>Développement</strong> d’applications Web <strong>avec</strong> Visual Studio 2005 et ASP .NET 2.0 5 jours<br />

Visual Studio 2008, concevoir et développer des applications <strong>avec</strong> le framework .net 3.5 5<br />

jours<br />

ASP.NET 3.5, pour développeur ASP.net 2.0 2 jours<br />

ASP.NET 3.5, développer des applications WEB <strong>avec</strong> Visual Studio 2008 5 jours<br />

Visual Studio 2008 et C# 3.0 : <strong>Développement</strong> d'applications Windows Forms 5 jours<br />

WPF, Développer des applications graphiques <strong>avec</strong> Visual Studio 3 jours<br />

Silverlight prise en main 2 jours<br />

Silverlight perfectionnement 2 jours<br />

WCF, Développer des applications distribuées <strong>avec</strong> Visual Studio 8 3 jours<br />

WF, Développer des applications Workflow Foundation <strong>avec</strong> Visual Studio 8 2 jours<br />

LINQ et ADO.net pour gérer les données sous le framework 3.5 2 jours<br />

La plate-forme <strong>J2EE</strong> 1 jour<br />

Développer un projet <strong>Java</strong> EE5 <strong>avec</strong> l'offre OpenSource 2 jours<br />

<strong>Développement</strong> Web Services 3 jours<br />

5<br />

Page 11<br />

Page 12<br />

Page 13<br />

Page 14<br />

Page 15<br />

Page 16<br />

Page 17<br />

Page 18<br />

Page 19<br />

Page 20<br />

Page 21<br />

Page 22<br />

Page 23<br />

Page 24<br />

Page 25<br />

Page 26<br />

Page 27<br />

Page 28<br />

Page 29<br />

Page 30<br />

Page 31<br />

Page 32<br />

Page 34<br />

Page 35<br />

Page 36<br />

Page 37<br />

Page 38<br />

Page 39<br />

Page 40<br />

Page 41<br />

Page 42<br />

Page 43<br />

Page 44<br />

Page 45<br />

Page 46<br />

Page 47<br />

Page 48<br />

Page 49<br />

Page 50<br />

Page 51<br />

Page 52<br />

Page 53<br />

Page 54


Développer des applications <strong>J2EE</strong> (Servlets, JSP, JDBC, XML) 5 jours<br />

Enterprise <strong>Java</strong>Beans (Développer des EJB <strong>avec</strong> Eclipse/JBoss) 5 jours<br />

Administration d'un serveur TOMCAT 3 jours<br />

Développer des EJB3 (Eclipse/NetBeans Jboss 4/ GlassFish) 5 jours<br />

Administration Jonas 5 jours<br />

Administration Jboss 3 jours<br />

Administration Websphère 5 jours<br />

Administration Websphère avancée 4 jours<br />

Websphère Tuning - Optimiser les applications 2 jours<br />

<strong>Développement</strong> JEE <strong>avec</strong> WebSphere 5 jours<br />

Conception JEE <strong>avec</strong> les Design Patterns 4 jours<br />

Filière Langage <strong>Java</strong><br />

Architecture d'<strong>entreprise</strong> <strong>avec</strong> <strong>Java</strong> EE 4 jours<br />

La plate-forme <strong>Java</strong> EE 5 2 jours<br />

Développer des applications web d’<strong>entreprise</strong> <strong>avec</strong> <strong>Java</strong> EE (JEE, Servlets, JSP) 5 jours<br />

<strong>Java</strong> sans connaître l'objet 5 jours<br />

<strong>Java</strong> pour développeur Objet 5 jours<br />

Programmation avancée en <strong>Java</strong> 5 jours<br />

Extrême <strong>Java</strong> 4 jours<br />

<strong>Java</strong>, programmation graphique <strong>avec</strong> swing 4 jours<br />

<strong>Développement</strong> d'un client riche <strong>avec</strong> SWT et Eclipse RCP 3 jours<br />

<strong>Java</strong> et XML 2 jours<br />

Concevoir <strong>avec</strong> les Design Patterns 5 jours<br />

Programmer <strong>avec</strong> les aspects et les Design Patterns (POA) 3 jours<br />

Hibernate, framework Open Source 3 jours<br />

Gestion avancée de la persistance <strong>avec</strong> Hibernate 2 jours<br />

Programmation pilotée par les tests en <strong>Java</strong> (Test Driven Devlopement) 3 jours<br />

Sécurité <strong>Java</strong> 2 jours<br />

<strong>Java</strong> Temps Réel et Embarque - <strong>Java</strong> Micro Edition 2 jours<br />

Tests unitaires des applications <strong>Java</strong> 3 jours<br />

Filière Open Source<br />

Les logiciels libres, synthèse technique 2 jours<br />

Virtualisation <strong>avec</strong> Xen 2 jours<br />

Administrer un Site Web Open Source, LAMP 4 jours<br />

Administration Apache, l'essentiel 2 jours<br />

Apache, Administrer un Serveur Web 3 jours<br />

Apache, Administrer un Serveur Web perfectionnement 3 jours<br />

Postfix, administrer un serveur de messagerie 2 jours<br />

Samba : Partages de services entre Linux/Unix et Windows 2 jours<br />

Administration d'un annuaire LDAP (Open LDAP) 2 jours<br />

Langage Perl : Scripts Unix Linux Windows 4 jours<br />

Python 4 jours<br />

ZOPE: Création d'une application web <strong>avec</strong> Zope 3 jours<br />

Eclipse, créer son environnement de développement intégré 2 jours<br />

Développer des applications Web <strong>avec</strong> Struts 3 jours<br />

6<br />

Page 55<br />

Page 56<br />

Page 57<br />

Page 58<br />

Page 59<br />

Page 60<br />

Page 61<br />

Page 62<br />

Page 63<br />

Page 64<br />

Page 65<br />

Page 67<br />

Page 68<br />

Page 69<br />

Page 70<br />

Page 71<br />

Page 72<br />

Page 73<br />

Page 74<br />

Page 75<br />

Page 76<br />

Page 77<br />

Page 78<br />

Page 79<br />

Page 80<br />

Page 81<br />

Page 82<br />

Page 83<br />

Page 84<br />

Page 86<br />

Page 87<br />

Page 88<br />

Page 89<br />

Page 90<br />

Page 91<br />

Page 92<br />

Page 93<br />

Page 94<br />

Page 95<br />

Page 96<br />

Page 97<br />

Page 98<br />

Page 99


Filière Oracle/SQL Server/MySQL/PostgreSQL<br />

SQL : Interroger les bases de données 3 jours<br />

Introduction Technique à Oracle 1 jour<br />

Introduction complète à Oracle 5 jours<br />

SQL pour Oracle 3 jours<br />

Développer en PL/SQL 3 jours<br />

Oracle, optimisation des applications 3 jours<br />

Oracle et <strong>Java</strong> 5 jours<br />

Architecture ORACLE pour développeurs 3 jours<br />

Exploitation Oracle 4 jours<br />

Administration Oracle 10g 5 jours<br />

Administration Oracle10g Expertise (Sauvegarde, Optimisation, Haute Disponibilité) 5 jours<br />

Administration Oracle 11g 5 jours<br />

Oracle 11g – Pour Administrateur Oracle Confirmé 2 jours<br />

RMAN Sauvegarde et Restauration 3 jours<br />

Tuning d'une base Oracle 3 jours<br />

Oracle 9i/10g AS, administration 5 jours<br />

Administration Oracle 10gAS Avancé 2 jours<br />

ORACLE Développer des applications graphiques <strong>avec</strong> Forms 5 jours<br />

ORACLE Forms fonctionnalités avancées 2 jours<br />

ORACLE: Developper REPORTS 3 jours<br />

Transact SQL 2 jours<br />

Mise en oeuvre de SQL Server 2005 5 jours<br />

Administrer une base de données SQL Server 2005 5 jours<br />

Optimisation d'une base SQL Server 2005 5 jours<br />

SQL Server 2005 - Sécurité 2 jours<br />

SQL Server 2005 Intégration Services (SSIS) - Administration 3 jours<br />

SQL Server 2005 Reporting Services (SSRS) -Publication et gestion de rapports 3 jours<br />

SQL Server 2005 Analysis Services (SSAS) - Mise en oeuvre 3 jours<br />

De SQL Server 2005 à SQL server 2008 pour Administrateur 3 jours<br />

Administration SQL server 2008 5 jours<br />

Administration SQL Server 2008 perfectionnement 2 jours<br />

Optimisation SQL Server 2008 3 jours<br />

Programmation d'une base de données Microsoft SQL Server 2008 5 jours<br />

Administration de la base de données PostGreSQL 3 jours<br />

PostgreSQL Developpement 2 jours<br />

Administration PostgreSQL Avancée – Tuning, Réplication, Cluster, Optimisation 4 jours<br />

MySQL Prise en main et développement 2 jours<br />

MySQL Administration 3 jours<br />

MySQL Administration avancée, Optimisation et Cluster 2 jours<br />

7<br />

Page 101<br />

Page 102<br />

Page 103<br />

Page 104<br />

Page 105<br />

Page 106<br />

Page 107<br />

Page 108<br />

Page 109<br />

Page 110<br />

Page 111<br />

Page 112<br />

Page 113<br />

Page 114<br />

Page 115<br />

Page 116<br />

Page 117<br />

Page 118<br />

Page 119<br />

Page 120<br />

Page 121<br />

Page 122<br />

Page 123<br />

Page 124<br />

Page 125<br />

Page 126<br />

Page 127<br />

Page 128<br />

Page 129<br />

Page 130<br />

Page 131<br />

Page 132<br />

Page 133<br />

Page 134<br />

Page 135<br />

Page 136<br />

Page 137<br />

Page 138<br />

Page 139


Filière Internet Apache PHP<br />

HTML L'essentiel 3 jours<br />

CSS - Cascading Style Sheets 2 jours<br />

Dreamweaver site statique prise en main 5 jours<br />

Dreamweaver site statique perfectionnement 2 jours<br />

Dreamweaver site dynamique 5 jours<br />

<strong>Java</strong>Script, Développer en HTML dynamique 3 jours<br />

Ajax 2 jours<br />

SPIP Développeur 2 jours<br />

SPIP Administration et <strong>Développement</strong> 3 jours<br />

Flash CS3, prise en main 4 jours<br />

Flash Bannière 3 jours<br />

Flash Programmation ActionScript 2 5 jours<br />

Flex : Maitriser le développement d'application <strong>avec</strong> Adobe Flex 3 5 jours<br />

Flex 2 et ActionScript 3 perfectionnement 3 jours<br />

L’essentiel de PHP - Pour non développeur 3 jours<br />

PHP 5 , développer un site Web dynamique 4 jours<br />

PHP 5 perfectionnement 5 jours<br />

PHP Extensions : Fonctions avancées & Modules Externes 2 jours<br />

Optimisation PHP 4 jours<br />

PHP Sécurité 3 jours<br />

Ajax et PHP 3 jours<br />

Administrer un intranet sécurisé <strong>avec</strong> IIS 6 3 jours<br />

IIS 7 : Administration et Dépannage de IIS 7.0 sous windows server 2008 3 jours<br />

8<br />

Page 141<br />

Page 142<br />

Page 143<br />

Page 144<br />

Page 145<br />

Page 146<br />

Page 147<br />

Page 148<br />

Page 149<br />

Page 150<br />

Page 151<br />

Page 152<br />

Page 153<br />

Page 154<br />

Page 155<br />

Page 156<br />

Page 157<br />

Page 158<br />

Page 159<br />

Page 160<br />

Page 161<br />

Page 162<br />

Page 163


Filière Microsoft<br />

Ecriture de scripts pour Windows (WSH) 3 jours<br />

Powershell - Ecriture de script système pour Windows 3 jours<br />

Exchange 2003 Server - Installation et Administration 5 jours<br />

Exchange 2007 Server pour les administrateurs Exchange 2003 3 jours<br />

Exchange 2007 : Administration 5 jours<br />

Exchange Server 2007 :Sécurité 1 jour<br />

Exchange Server 2007 :Sauvegarde et Restauration 1 jour<br />

Windows 2003 Server, Administration 5 jours<br />

Windows 2003 Server, Administration perfectionnement 3 jours<br />

ISA Server 2006 - Mise en oeuvre 4 jours<br />

Sécurité réseaux sous Windows 2003 5 jours<br />

Windows XP Professionnel Installation et Administration 5 jours<br />

Support Technique Windows XP (Aspect OS) 3 jours<br />

Windows Vista Installation et Administration 4 jours<br />

Vista : Assurer le support grand public 2 jours<br />

Vista Déploiement 3 jours<br />

Windows Seven – Administration et Déploiement<br />

SharePoint Services 3.0 Mise en oeuvre 2 jours<br />

SharePoint 2007 : conception et création de sites 2 jours<br />

SharePoint Server 2007 Mise en oeuvre 3 jours<br />

Administration avancée de Sharepoint 2007 et WSS 3.0 5 jours<br />

Développer des applications <strong>avec</strong> WSS 3.0 et MOSS 2007<br />

Sharepoint 2007, développement avancé 5 jours<br />

Windows server 2008 : Evaluer les apports de la plate-forme 4 jours<br />

Administration Windows 2008 server 5 jours<br />

Active directory Windows 2008 server 5 jours<br />

Terminal server, administration sous Windows 2008 2 jours<br />

Plan d'Accès TECHNOWIDE<br />

Bon de Commande<br />

Conditions Générales de Vente<br />

9<br />

Page 165<br />

Page 166<br />

Page 167<br />

Page 168<br />

Page 169<br />

Page 170<br />

Page 171<br />

Page 172<br />

Page 173<br />

Page 174<br />

Page 175<br />

Page 176<br />

Page 177<br />

Page 178<br />

Page 179<br />

Page 180<br />

Page 181<br />

Page 182<br />

Page 183<br />

Page 184<br />

Page 185<br />

Page 186<br />

Page 187<br />

Page 188<br />

Page 189<br />

Page 190<br />

Page 191<br />

Page 192<br />

Page 193<br />

Page 194


Filière <strong>Développement</strong><br />

10


Introduction à la<br />

programmation<br />

3 jours<br />

Objectifs<br />

Comprendre les fondements de la programmation et de<br />

l’algorithmique.<br />

Le but de cette formation initiation programmation est de vous<br />

donner de solide base en<br />

programmation pour pouvoir aborder n’importe quel langage<br />

de programmation.<br />

Tous les aspects essentiels de la programmation seront<br />

abordés.<br />

De la programmation procédurale à la programmation<br />

événementielle, et la programmation<br />

objet.<br />

Participants<br />

Cette formation initiation programmation est destinée à<br />

toute personne ayant à programmer dans un langage<br />

structuré, objet ou de script et désirant acquérir les<br />

bases de la programmation indépendamment d’une<br />

syntaxe particulière.<br />

Contenu<br />

Du besoin utilisateur au programme<br />

La chaîne globale<br />

Nécessité de paliers entre la pensée humaine et<br />

les séquences binaires 01010001…<br />

Les différentes phases : sources, compilation,<br />

binaire<br />

Le cas particulier d’un interpréteur<br />

Ne pas tout réécrire (bibliothèques, éditions de<br />

liens, et exécutables)<br />

Algorithme<br />

Les « atomes » pour s’exprimer<br />

Apprendre à formuler un traitement (rien ne<br />

s’invente)<br />

Utilisation d’un pseudo langage<br />

Exemples d’algorithme bien conçu, « mal »<br />

conçu, et … faux !<br />

Les composants d’un programme<br />

Variables et types de données<br />

Pourquoi typer les variables ?<br />

Exemples de type (entier, réel, caractères, …)<br />

Exemples de problèmes liés aux types<br />

Les opérateurs disponibles (+, -, /, */ %, …)<br />

Le confort des tableaux et des structures<br />

La « grammaire » d’un langage<br />

Les blocs de programme (début … fin)<br />

Le test d’une expression (si … alors … sinon …)<br />

La boucle (tant que …)<br />

Les conforts syntaxiques<br />

Un premier programme<br />

Présentation de l’environnement de développement<br />

Un premier programme simple en <strong>Java</strong>.<br />

Compilation et exécution.<br />

Bien écrire ses programmes.<br />

Structurer son programme<br />

La nécessité d’utiliser des procédures ou des<br />

fonctions<br />

Différences conceptuelles et syntaxiques entre<br />

les deux<br />

Passer des arguments à une fonction (prototype,<br />

code retour)<br />

Passages par valeur et par adresse dans une<br />

fonction<br />

Les bibliothèques<br />

Ne pas réécrire ce qui existe déjà (librairies)<br />

Ecrire ses propres librairies<br />

Comment les utiliser dans d’autres programmes ?<br />

L’importance de la présentation<br />

Les bonnes habitudes pour anticiper les erreurs<br />

Les commentaires utiles<br />

11<br />

L’accès aux données<br />

Les SGBD (Systèmes de Gestion de Bases<br />

de Données)<br />

Fonctions spécifiques d’un SGBD par rapport au<br />

système d’exploitation.<br />

Quelques acteurs : EXCEL, Access, ORACLE,<br />

SQL Server, MySQL, ….<br />

Les traitements offerts par le SGBD (stockage,<br />

extraction, …)<br />

Que signifie Client/Serveur ?<br />

Comment récupérer les données d’une base<br />

dans un programme ?<br />

Comment écrire les données d’un programme<br />

dans une base ?<br />

Les bases du SQL (Structured Query Language)<br />

« Parler » <strong>avec</strong> les bases de données en SQL<br />

Créer une table<br />

Stocker des données dans une table (insert)<br />

Les modifier (update)<br />

Les supprimer (delete)<br />

Extraire les données (requêtes select simples)<br />

Communiquer <strong>avec</strong> les fichiers<br />

Le cycle classique : ouvrir, lire ou écrire ou<br />

modifier, puis fermer.<br />

Le cas particulier du clavier et de l’écran<br />

L’environnement de développement<br />

Savoir utiliser son environnement<br />

Peut-on développer sous un traitement de texte<br />

quelconque ?<br />

Les apports de tel ou tel atelier (Visual Studio,<br />

Eclipse, …)<br />

L’aide en ligne<br />

Utilisé un debbugeur.<br />

Fonctionnement d’un debbugeur.<br />

Les points d’arrêts (breakpoint)<br />

Connaître la valeur des variables pendant<br />

l’exécution.<br />

Les différents types de langage<br />

Les langages de programmation procédurale<br />

Pourquoi parle-t-on de procédurale ?<br />

Les exemples du C, Cobol, …<br />

Leurs limites et l’apport de l’objet<br />

Les langages de programmation objet<br />

Que signifie « Programmer objet « ?<br />

La « discipline» imposée par la programmation<br />

objet<br />

Liens entre classes, instances, et objets<br />

Méthodes et propriétés d’une classe<br />

Exemples de programmes objets en java<br />

L’approche objet de la programmation par composants<br />

(services)<br />

Les langages de programmation événementielle<br />

Associer des traitements à des événements<br />

(clic, drag and drop, …)<br />

Problématiques spécifiques (gestion du<br />

contexte)<br />

Les langages de programmation de script.<br />

Rôle de l’interpréteur<br />

L’exemple des shellscripts d’exploitation<br />

(powershell, bash)<br />

Le WEB <strong>avec</strong> javascript.<br />

Synthèse<br />

Quels langages sont utilisés selon les natures<br />

des projets (WEB, scientifique, gestion, multimédia,<br />

) ?<br />

Panorama de leurs intérêts/inconvénients respectifs<br />

(expressivité, performances, sécurité, …)<br />

Les langages de demain<br />

Travaux pratiques<br />

Ce stage contient plus de 60% de travaux pratiques.


Initiation à la<br />

programmation objet<br />

2 jours<br />

Objectifs<br />

Cette formation Objet vous permettra de:<br />

Maîtriser les concepts Objet et les mettre en oeuvre via un<br />

langage (<strong>Java</strong>, C#, VB .Net, C++, ...).<br />

Manipuler un outil de développement (Eclipse, Visual Studio, ...).<br />

Participants<br />

Développeurs, concepteurs, chefs de projet.<br />

Contenu<br />

Les concepts Objet<br />

Les objectifs du monde Objet.<br />

Les classes et les objets.<br />

Les attributs.<br />

Les méthodes (constructeurs, destructeurs et accesseurs).<br />

L'encapsulation.<br />

L'instanciation.<br />

La représentation UML.<br />

Traduction des concepts Objet en langage<br />

Les packages et les espaces de noms, les classes.<br />

Les méthodes et leur visibilité.<br />

Les attributs et leur visibilité.<br />

L'instanciation.<br />

L'appel de méthodes et la référence aux variables.<br />

Outil de développement<br />

Présentation.<br />

Création d'un projet de développement.<br />

Affichage des résultats. T.P.Définir une classe Produit en<br />

respectant l'encapsulation, faire la représentation UML. Faire un<br />

programme pour tester le Produit.<br />

Liens entre les classes<br />

L'agrégation ou la composition.<br />

Des concepts au code.<br />

T.P.: Reprendre la définition du composant Produit et mettre en<br />

place un agrégat, faire la représentation UML.<br />

Outil de développement (suite)Présentation du debug.<br />

Les références.<br />

Les recherches.<br />

T.P.: Reprendre l'exécutable et mettre en place des points<br />

d'arrêts pour lancer le debug.<br />

Liens entre les classes (suite)-Généralisation spécialisation :<br />

Définition, héritage simple.<br />

Le polymorphisme.<br />

La surcharge.<br />

Traduction des concepts Objet en langage<br />

L'héritage simple.<br />

Le polymorphisme.<br />

Les références à l'objet en cours.<br />

T.P.: Définir des objets Produits Spécialisés héritant de Produit et<br />

mettre en place le polymorphisme.<br />

Liens entre les classes<br />

L'héritage multiple.<br />

La représentation UML.<br />

Traduction des concepts Objet en langage<br />

T.P.: Mettre en oeuvre un héritage multiple.<br />

12


MS Project: Gérer un projet<br />

3 jours<br />

Objectifs<br />

La gestion des projets peut parfois s'avérer extrêmement<br />

complexe : multiplicité des acteurs, des tâches, gestion et respect<br />

des délais, des imprévus... Microsoft Project permet de planifier et<br />

d'effectuer un suivi d'activités de façon rapide et efficace. En trois<br />

jours, les participants à cette formation MS project apprendront à<br />

concevoir, à suivre et à contrôler les différentes étapes d'un projet<br />

à l'aide du produit référence : Microsoft Project.<br />

Participants<br />

Chefs de projet<br />

Membres de l'équipe projet chargés de la gestion, de la<br />

planification et du suivi<br />

Travaux pratiques<br />

De nombreux travaux pratiques illustreront les concepts<br />

présentés tout au long de cette formation MS project.<br />

Contenu<br />

Introduction à MS project<br />

Rappels sur la gestion de projets<br />

Présentation de Microsoft Project<br />

Manipulations particulières à Project<br />

Utilisation de l'aide<br />

Présentation des options<br />

Création d'un plan de projet<br />

Saisie des données du projet<br />

Saisie du détail des tâches et de leurs durées<br />

Structuration du plan<br />

Définition des liaisons entre les différentes tâches<br />

Affectation des ressources et des coûts associés<br />

Résolution des problèmes de sur utilisation<br />

Sauvegarde de la planification initiale<br />

Pilotage et suivi du projet<br />

Communication des informations aux différents intervenants<br />

Impression et sauvegarde du résultat final<br />

Les éléments du projet - MS project<br />

Les tâche : champs utilisables, types de contraintes et familles de<br />

tâches<br />

La planification : objectifs, impacts, fractionnement des tâches<br />

Les structures hiérarchiques : objectifs et application aux vues<br />

d'utilisation<br />

13<br />

Le mode multi projets : enjeux, possibilités offertes pas MS<br />

Project et la planification des projets insérés pour le suivi des<br />

éventuels sous traitants<br />

Les calendriers : applications de nouveaux calendriers au projet<br />

Les ressources : affectation, tableau des disponibilités,<br />

accumulation des coûts, tableau d'utilisation et ressources<br />

matérielles, les bibliothèques de ressources<br />

Les coûts : heures supplémentaires, sur utilisation et audit<br />

Le pilotage et le suivi <strong>avec</strong> MS project<br />

Audit des ressources: identification des ressources sur utilisées<br />

Le suivi de l'avancement du projet<br />

Les options de calcul affectant l'avancement<br />

Pilotage du projet par le travail<br />

Pilotage du projet par la durée<br />

Pilotage par la valeur acquise<br />

Génération de rapports et exportation des données<br />

Identification des rapports clés<br />

Personnalisation des rapports<br />

Impression des rapports<br />

Import de données depuis une application externe<br />

Export de données vers d'autres applications<br />

Présentation des fonctionnalités offertes par la version 2007.


Conduite de projet<br />

informatique <strong>avec</strong> UP,<br />

Cycle en Y-2TUP et XP<br />

3 jours<br />

Objectifs<br />

Une fois la formation terminée, vous pourrez :<br />

- Piloter un projet informatique<br />

- Comprendre la démarche méthodologique du processus unifié<br />

(UP)<br />

- Appliquer les bonnes pratiques de l'eXtreme Programming<br />

Participants<br />

Développeurs, chefs de projet, concepteurs désirant utiliser une<br />

méthode et un formalisme Objet pour le développement de<br />

projets<br />

Pré-requis<br />

Connaissance de base UML<br />

Contenu<br />

Définition et objectif d'un processus de développement<br />

logiciel<br />

Du modèle en V à l'itératif<br />

Les fondements du processus unifié<br />

Un processus piloté par les cas d'utilisation<br />

Un processus centré sur l'architecture<br />

Un processus itératif et incrémental<br />

Le pilotage du recueil des besoins<br />

La découverte des besoins fondamentaux<br />

Identifier les processus métier primaires et secondaires<br />

Identifier les flux d'entrées/sorties majeurs<br />

Organiser en grands domaines de besoins<br />

La validation des besoins fondamentaux<br />

La documentation projet <strong>avec</strong> UML<br />

Le dictionnaire métier<br />

Les cas d'utilisation fonctionnels<br />

Les cas d'utilisation secondaires<br />

Les diagrammes de collaboration<br />

Les diagrammes de package niveau domaines de besoins<br />

La capture des besoins techniques<br />

Le recensement des exigences techniques<br />

L'étude des points critiques<br />

L'élaboration de l'architecture matérielle et logicielle<br />

La documentation projet <strong>avec</strong> UML<br />

Le dictionnaire technique<br />

Le diagramme de déploiement de l'architecture technique<br />

Le diagramme de package de l'architecture logicielle<br />

Le pilotage de l'analyse<br />

L'analyse des besoins fonctionnels<br />

Description des scénarios<br />

Le pilotage de la conception<br />

La conception générique<br />

La conception détaillée<br />

Le pilotage de l'implémentation<br />

Le tableau de bord du chef de projet<br />

La politique de test unitaire<br />

Les bonnes pratiques XP<br />

14


SOA : Architecture<br />

Orientée Services<br />

3 jours<br />

Objectifs<br />

Face au changement, nos applications doivent évoluer de plus en<br />

plus souvent et rapidement. L'architecture étant leur squelette,<br />

elle nécessite un soin particulier. Sachant que de bons principes<br />

permettent d'assurer une évolutivité à notre système<br />

d'information, il faut donc non seulement les connaître, mais aussi<br />

savoir les appliquer tant au niveau des métiers qu'au niveau<br />

technique.<br />

Dans cette formation SOA, vous verrez où se place la SOA parmi<br />

les autres architectures, les bons principes qui la sous-tendent et<br />

comment les appliquer, ce que sont les services et comment faire<br />

leur qualification. Une étude de cas vous permettra de roder la<br />

démarche de passage à la SOA. Vous modéliserez un processus<br />

métier, vous le déclinerez techniquement en BPEL et le<br />

déploierez sur un orchestrateur pour tester sa bonne exécution.<br />

Contrairement aux discours théoriques sur la SOA ce cours a<br />

donc une indéniable vocation technique.<br />

Ce cours est destiné à ceux qui se posent les questions suivantes<br />

: "Qu'y a-t-il réellement derrière le terme SOA ?", "Qu'est-ce qu'un<br />

service et comment créer de bons services ?", "Quelles sont les<br />

motivations à l'utilisation de la SOA ?", "Quels sont les bons<br />

principes ?", "Plus que la connaissance du vocabulaire, comment<br />

obtenir une vision claire de la SOA ?".<br />

Cette formation SOA vous permettra de:<br />

- Différencier les atouts de SOA vis-à-vis des autres architectures<br />

- Expliquer la place de SOA dans l'<strong>entreprise</strong><br />

- Évaluer le rôle du BPM, des Web Services et des ESB dans<br />

l'architecture SOA<br />

- Montrer une démarche concrète de passage à la SOA<br />

- Mettre en pratique les logiciels type constituant une SOA<br />

Participants<br />

Chefs de projet, architectes techniques et fonctionnels, analystes<br />

et décideurs informatiques<br />

Pré-requis<br />

Notions de XML et XML schéma Habitude de travail <strong>avec</strong> des<br />

environnements intégrés (modélisation, exécution)<br />

Travaux pratiques<br />

Eclipse WTP, Intalio Designer / Server, Service Mix et Spagic<br />

15<br />

Contenu<br />

Cas d'utilisation<br />

Intégration B2B<br />

Portails Web 2.0<br />

Pilotage par les processus métier<br />

Intégration d'applications hétérogènes<br />

Définition de SOA<br />

Processus métier<br />

Service<br />

Les 4 couches SOA<br />

Catégories de service<br />

Contrat de service<br />

Business Process Modeling (BPM)<br />

Business Process Modeling Notation (BMPN)<br />

L'offre SOA / BPM<br />

Business Process Execution Language (BPEL)<br />

Mapping BPMN / BPEL<br />

Webservices<br />

Rappels XML (NS / XPATH / XSLT / XML Schema)<br />

Web Services : définition<br />

Soap<br />

WSDL<br />

UDDI<br />

Les standards des Web Services<br />

Enterprise Service Bus (ESB)<br />

ESB et SOA<br />

Les fonctionnalités d'un ESB<br />

<strong>Java</strong> Business Integration (JBI)<br />

Exemple de plug-in Eclipse : Spagic<br />

Service Mix<br />

Service Mix et les Patterns d'intégration (EIP)<br />

L'offre ESB<br />

Approche pour l'élaboration d'une SOA<br />

Approche Top-Down<br />

Approche Bottom-Up<br />

Rôle de l'ESB<br />

Aspects transverses<br />

Qualité de service<br />

Administration et supervision<br />

Business Activity Monitoring (BAM)<br />

L'offre BAM<br />

Sécurité<br />

Performance<br />

SCA


Intégration continue<br />

4 jours<br />

Objectifs<br />

Cette formation a pour objectif de vous :<br />

présenter le principe de l’intégration continue.<br />

permettre de prendre en main chaque outil constituant la chaîne<br />

d’intégration continue.<br />

présenter la mise en place une chaîne complète d’intégration<br />

continue.<br />

Participants<br />

Développeurs, testeurs, qualificateurs, intégrateurs.<br />

Pré-requis<br />

Avoir des notions de <strong>Java</strong> et une connaissance globale de <strong>J2EE</strong><br />

est un plus.<br />

Contenu<br />

Intégration continue<br />

Processus de construction de logiciels<br />

Intégration continue<br />

Bénéfices<br />

Les acteurs<br />

Outils<br />

Familles de tests<br />

Environnements<br />

La chaîne de l'intégration continue<br />

Processus (et variantes)<br />

Les besoins de la qualification<br />

IC et qualification des applications<br />

Obligations imposées par l'IC<br />

Faire accepter les contraintes auprès des développeurs<br />

Protocole manuel de contrôle de l'intégration<br />

Bonnes pratiques<br />

Les outils<br />

Gestionnaire de contrôle des versions<br />

Principe<br />

Dépôt<br />

Administration<br />

Accès<br />

Stratégie sans verrou<br />

Règles<br />

Branches et étiquettes<br />

Sécurité<br />

Scripts d'intégration<br />

Principe<br />

Script<br />

Propriétés<br />

Tâches<br />

Assemblage des scripts<br />

Tests automatisés<br />

Tests unitaires<br />

Tests fonctionnels<br />

Tests d'interfaces client lourd et client Web<br />

Tests en base de données<br />

Gestion des dépendances<br />

Principe<br />

Mécanisme de gestion des dépendances<br />

Le dépôt des jars<br />

Dépôts partagé, public, local, d'<strong>entreprise</strong><br />

Intégration continue automatisée<br />

Configuration<br />

Administration<br />

Planification de tâches<br />

Notification des résultats<br />

Production de rapports<br />

Forge de développement<br />

Chaîne d'intégration<br />

Atelier pratique de mise en place d'une chaîne complète.<br />

16


Stratégie de test,<br />

vérification et validation<br />

3 jours<br />

Objectifs<br />

L'objectif de cette formation Test programmation est de démontrer<br />

que le processus de test / vérification / validation peut être<br />

parfaitement maîtrisé à condition de l'articuler <strong>avec</strong> le processus<br />

de développement et de l'étendre par d'autres techniques pour<br />

définir un "processus de recherche des défauts". Une bonne<br />

"stratégie de recherche des défauts", puis de correction des<br />

défauts, permet de s'assurer que le système développé est, d'une<br />

part, "conforme aux exigences initiales" (vérification) et, d'autre<br />

part, qu'il répond au "besoin du client" (validation).<br />

Cette formation Test programmation est destinée à ceux qui se<br />

demandent : "Quelles sont les stratégies possibles de test ?",<br />

"Comment organiser mon projet pour que les tests ne soient pas<br />

faits au dernier moment ?", "Quelles sont les techniques<br />

modernes de test ?".<br />

Vous allez apprendre à:<br />

- Définir, instancier et suivre une stratégie de test<br />

- Connaître les différentes techniques de test, de vérification et de<br />

validation<br />

- Introduire des revues de pairs dans vos processus de<br />

développement<br />

Participants<br />

Chefs de projet, responsables de test, responsables de MOE et<br />

de MOA ayant à définir la stratégie, donner les moyens ou mettre<br />

en oeuvre des processus de test<br />

Pré-requis<br />

Avoir des notions de gestion de projet est un plus<br />

Contenu<br />

Pourquoi une stratégie de vérification et validation<br />

Problème de l'élimination et de l'injection des défauts<br />

Qu'est ce qu'un défaut ?<br />

La gestion des exigences<br />

Le test<br />

Améliorer le processus de détection<br />

Améliorer le processus de développement<br />

Quelle stratégie, à quel niveau (itération, projet, organisation) ?<br />

Etat de l'art<br />

Les pratiques acceptées<br />

Les pratiques issues de UP, XP, RP<br />

Rôles et Responsabilités (R&R)<br />

R&R de l'équipe de management du projet<br />

R&R de l'équipe de test<br />

R&R de la MOE<br />

R&R de la MOA<br />

R&R de l'exploitation<br />

R&R des utilisateurs<br />

Survol des techniques de test<br />

Test fonctionnel<br />

Test technique<br />

Test boîte blanche<br />

Test boîte noire<br />

17<br />

Organisation des vérifications et validations<br />

Organisation des revues de pairs<br />

Définition des niveaux de test<br />

Test de déploiement<br />

Test d'installation<br />

Remarques sur les outils<br />

Bâtir une stratégie de vérification et validation<br />

Compromis entre exigences "à tester" et exigences "de test"<br />

La gestion des données de test<br />

La non-régression<br />

Le respect des engagements : coûts, délais et qualité<br />

FAT, SAT, VABF et VSR<br />

Suivi de l'avancement<br />

Passage des tests<br />

Etat des anomalies<br />

Correction et livraison des correctifs<br />

Avancement de la vérification<br />

Avancement de la validation<br />

Gérer les défauts<br />

Cycle de vie d'un défaut<br />

Processus de gestion des défauts<br />

Intégration dans le processus de développement<br />

Les outils<br />

Compléments optionnels<br />

Vérification et validation dans le Processus Unifié (UP)<br />

Vérification et validation dans CMMI<br />

Vérification et validation dans Six Sygma<br />

Vérification et validation dans Itil


Recueil du besoin et<br />

gestion des tests<br />

2 jours<br />

Objectifs<br />

L'objectif de cette formation est de montrer que l'on peut aller très<br />

loin dans l'intégration de ces deux activités en supprimant la<br />

frontière entre l'analyse et les tests. Vous apprendrez à éviter la<br />

déperdition d'informations dans le processus de recueil de<br />

besoins en appliquant les principes du développement dirigé par<br />

les tests aux activités de spécifications et d'analyse. Au travers de<br />

techniques innovantes, vous apprendrez à écrire des dossiers de<br />

spécifications efficaces et interprétables automatiquement par des<br />

outils de validation. Vous apprendrez également les éléments<br />

essentiels à mettre en place dans votre organisation pour tirer le<br />

meilleur bénéfice d'une telle approche.<br />

Cette formation Test <strong>Java</strong> est destinée à ceux qui se posent les<br />

questions suivantes : "Peut-on tester fonctionnellement un logiciel<br />

sans en attendre le déploiement et sans passer par l'interface<br />

graphique ?", "Comment écrire les dossiers de spécifications pour<br />

faciliter les tests de vérification et validation ?", "Peut-on<br />

réellement substituer un dossier de spécifications par des cas de<br />

test d'acceptance ?", "Quels sont les risques et les limites de<br />

cette pratique ?".<br />

Vous allez apprendre à:<br />

- Découvrir les principes du pilotage par les exigences<br />

- Evaluer l'impact sur le fonctionnement d'un projet<br />

- Découvrir les outils accompagnant cette démarche<br />

- Suivre une méthodologie appliquée sur de nombreux projets<br />

- Comprendre comment cette activité s'insère dans une démarche<br />

agile<br />

Participants<br />

Chefs de projet ou d'équipe, analystes fonctionnels, testeurs,<br />

développeurs<br />

Pré-requis<br />

Connaissance des concepts objet. La connaissance d'un langage<br />

objet (<strong>Java</strong>) est un plus<br />

Contenu<br />

Introduction sur l'agilité<br />

Les cycles de développement<br />

Les méthodes agiles et l'importance des tests<br />

Que sont les principes Lean ?<br />

Recueil du besoin et gestion des tests<br />

Les techniques de recueil du besoin<br />

Le cycle de tests<br />

Pourquoi aller plus loin ?<br />

Liens entre tests fonctionnels et tests unitaires<br />

Qu'est-ce que le Test Driven Development ?<br />

Impact sur la conception<br />

Parallèle <strong>avec</strong> le Test Driven Requirement (TDR)<br />

Impact sur l'analyse et la gestion de projet<br />

Comment faire du TDR ?<br />

Les grandes étapes<br />

Les principales techniques<br />

Model Based Testing<br />

Storytest Driven Development<br />

Outils et mise en oeuvre<br />

Tour d'horizon des solutions du marché<br />

Utilisation de FIT et FitNess<br />

Création des classes de test<br />

Changements d'organisation à prévoir<br />

Quelques critères pour choisir la technique TDR adaptée<br />

Quelles modifications par rapport à l'existant ?<br />

Quels rapprochements au sein des équipes ?<br />

18


Initiation UML<br />

UML, Expression des besoins et conception<br />

4 jours<br />

Objectifs<br />

Soutenu par une étude de cas de taille réelle, cette formation<br />

UML approfondi vous apprendra à appliquer une démarche de<br />

modélisation itérative et incrémentale, pilotée par les cas<br />

d'utilisation. Vous découvrirez les techniques indispensables à la<br />

modélisation des exigences ainsi qu'à l'analyse statique et<br />

dynamique d'un système informatique.<br />

Cette formation UML est destinée à ceux qui se posent les<br />

questions suivantes : "Comment utiliser UML pour la modélisation<br />

des exigences et la spécification ?", "Comment réaliser<br />

efficacement les diagrammes correspondants ?", "Comment<br />

positionner ces techniques par rapport au Processus Unifié<br />

(UP) ?".<br />

Vous allez apprendre à:<br />

- Maîtriser les concepts et les diagrammes UML pour l'expression<br />

des besoins et l'analyse<br />

- Comprendre les fondements du Processus Unifié<br />

- Utiliser la technique des cas d'utilisation pour définir et gérer les<br />

besoins<br />

- Appliquer une démarche d'analyse itérative pilotée par les cas<br />

d'utilisation<br />

- Utiliser les notations objet d'UML pour modéliser les concepts du<br />

domaine<br />

- Réaliser des diagrammes de classes d'analyse<br />

- Réaliser des diagrammes d'états pour certaines classes<br />

d'analyse<br />

- Structurer le modèle d'analyse suivant les principes de<br />

l'architecture logique<br />

- Appréhender la frontière entre analyse et conception<br />

Participants<br />

Analystes système et chefs de projet. Egalement architectes et<br />

concepteurs devant participer à l'expression des besoins et à<br />

l'analyse d'un système informatique<br />

Pré-requis<br />

Aucun<br />

19<br />

Contenu<br />

UML pour la gestion des exigences<br />

Qu'est-ce que la gestion des exigences ?<br />

Qu'est-ce que le Processus Unifié (UP) ?<br />

Qu'est-ce que UML ?<br />

UML pour la modélisation des exigences<br />

Elaborer un modèle de cas d'utilisation ?<br />

La démarche proposée<br />

Acteurs et cas d'utilisation<br />

Les frontières du système<br />

Les bases du diagramme de cas d'utilisation<br />

Identifier les bons cas d'utilisation<br />

Décrire les cas d'utilisation ?<br />

Les différents types de description<br />

Plan-type de description textuelle<br />

Rédaction efficace des cas d'utilisation<br />

Les diagrammes dynamiques UML<br />

Le diagramme de séquence système<br />

Les bases du diagramme d'activité<br />

Quel type de diagramme choisir ?<br />

Affiner le modèle de cas d'utilisation ?<br />

Les relations entre cas d'utilisation<br />

La généralisation d'acteurs<br />

Les Packages<br />

Amélioration des diagrammes<br />

Informations complémentaires<br />

Les diagrammes de contexte<br />

UP : un processus guidé par les cas d'utilisation<br />

Les autres artefacts de gestion des exigences<br />

UML pour l'analyse<br />

L'approche orientée objet<br />

Qu'est-ce que l'analyse ?<br />

Les concepts objets statiques<br />

Objet et lien<br />

Classe, attribut et association<br />

Généralisation - spécialisation<br />

Les bases du diagramme de classes<br />

Les classes d'analyse du RUP<br />

Les concepts objets dynamiques Message et événement<br />

Etat et transition<br />

Condition et activité<br />

Les bases du diagramme d'états<br />

Des besoins à l'analyse<br />

Réalisation de cas d'utilisation<br />

Diagrammes de classes participantes<br />

Diagrammes d'interactions d'analyse<br />

Architecture logique<br />

Comment affiner le modèle statique ?<br />

Compléments sur les attributs<br />

Contraintes<br />

Agrégation et composition<br />

Compléments sur la généralisation<br />

Classe d'association et qualificatif<br />

Comment affiner le modèle dynamique ?<br />

Compléments sur les diagrammes d'interactions<br />

Compléments sur les diagrammes d'états<br />

Liens <strong>avec</strong> le modèle statique<br />

Informations complémentaires<br />

Les Patterns d'analyse<br />

Outils de modélisation UML<br />

Liens entre les disciplines


UML, Modélisation Objet<br />

Informaticiens, tirez le meilleur parti d'UML<br />

4 jours<br />

Objectifs<br />

UML (Unified Modeling Language) devient le langage commun de<br />

tous les acteurs du projet.<br />

Le potentiel de précision et de finesse d'UML repose sur la<br />

maîtrise des diagrammes fondamentaux et des règles associées.<br />

UML contribue ainsi à améliorer la qualité des logiciels.<br />

Cette formation UML vous permettra d'apprendre à:<br />

- Lire et utiliser la notation UML.<br />

- Produire des modèles d'analyse ou de conception qui<br />

respectent les principes Objet et aident à l'amélioration de la<br />

qualité des logiciels.<br />

Participants<br />

Cette formation UML s'adresse aux chefs de projet informatique,<br />

analystes, concepteurs, développeurs.<br />

Pré-requis<br />

non<br />

Travaux pratiques<br />

Fil rouge : des mises en situation pour restituer UML dans un<br />

contexte de projet (échanges, itérations, validations).<br />

Contenu<br />

Introduction à la modélisation orientée Objet<br />

La modélisation.<br />

Le paradigme Objet.<br />

UML : historique.<br />

Le contenu de la notation UML et la présentation générale des<br />

diagrammes.<br />

Les cas d'utilisation<br />

La place des cas d'utilisation et des scénarios dans la<br />

modélisation.<br />

Les acteurs.<br />

Le diagramme des cas d'utilisation et les relations entre les cas.<br />

La modélisation de la dynamique : les premiers diagrammes<br />

La description de la dynamique du système.<br />

Le diagramme de séquence.<br />

Le diagramme de communication.<br />

La modélisation statique<br />

Les buts et les moyens de la modélisation structurelle.<br />

Le diagramme de classes :- concepts de base,<br />

- concepts avancés.<br />

La modélisation statique<br />

Le diagramme de classes : compléments.<br />

Organiser le diagramme de classes <strong>avec</strong> les paquetages.<br />

Le diagramme d'objets.<br />

La modélisation de la dynamique<br />

L'expression des contraintes portant sur les objets du modèle.<br />

Les invariants de classe, les pré et les post-conditions.<br />

Le diagramme d'états-transitions.<br />

Le diagramme d'activités.<br />

TP : Etude de cas (première phase).<br />

La modélisation de l'architecture<br />

Les éléments pour la conception des systèmes d'information.<br />

Les aspects de l'architecture et leurs articulations.<br />

Le diagramme des composants.<br />

Le diagramme de déploiement.<br />

Le passage à la réalisation<br />

Design Patterns.<br />

La transformation de la modélisation logique vers le schéma<br />

physique des données.<br />

Les diagrammes UML au service de la conception détaillée.<br />

Positionner les diagrammes dans une démarche<br />

TP : Etude de cas (seconde phase).<br />

20


UML 2 : Analyse et<br />

conception<br />

4 jours<br />

Objectifs<br />

Analyser et concevoir un projet Objet <strong>avec</strong> le formalisme UML<br />

Comprendre la représentation et l’intérêt d’utilisation de chaque<br />

diagramme<br />

Savoir progresser de l’analyse à la conception et assimiler un<br />

raisonnement itératif et incrémental basé sur les cas d’utilisation.<br />

Ce cours permettra de traiter les points suivants :<br />

• Positionnement des méthodes, méthodologies et ateliers de<br />

génie logiciel dans une démarche de production de logiciel.<br />

• La notation UML et les différents diagrammes. Représentation<br />

des diagrammes les plus importants et les plus pertinents.<br />

• Concepts avancés de cette notation de type framework, analysis<br />

and design patterns…<br />

• Pratique de l’analyse conception <strong>avec</strong> UML et l’art d’une<br />

utilisation cohérente et harmonieuse des différents diagrammes.<br />

• Démarche objet <strong>avec</strong> progression itérative et incrémentale<br />

basée sur les cas d’utilisation.<br />

Participants<br />

Analyste, concepteur, architecte logiciel et technique, chef de<br />

projet, développeur, responsable du management de la DSI,<br />

responsable des services fonctionnels de la DSI, consultant en<br />

SI, architecte SI, urbaniste des systèmes d’information, expert<br />

méthodes/qualité/sécurité/données, facilitateur, Administrateur de<br />

sites Web.<br />

Pré-requis<br />

De bonnes connaissances en informatique et en conception –<br />

Une sensibilisation à la technologie objet peut être un plus<br />

appréciable pour mieux comprendre le raisonnement objet.<br />

Travaux pratiques<br />

50% de travaux pratiques<br />

Enseignement qui alterne théorie et pratique, basé sur des<br />

exemples réels <strong>avec</strong> pédagogie participative et progression en<br />

spirale.<br />

Un cas pratique sera traité en petits groupes <strong>avec</strong> une correction<br />

très enrichissante du travail de chaque groupe.<br />

Contenu<br />

Le diagramme fonctionnel<br />

Diagramme de cas d'utilisation<br />

Comment élaborer un modèle des besoins ?<br />

Définition des acteurs<br />

Définition des cas d'utilisation<br />

Délimitation du système<br />

Description des cas d'utilisation<br />

La structuration du diagramme des cas d'utilisation<br />

Les meilleures pratiques pour élaborer un modèle des besoins<br />

Les diagrammes structurels<br />

Diagramme de classes<br />

Diagramme d'objets<br />

Diagramme de composants<br />

Diagramme de déploiement<br />

Diagrammes de packages (UML V2.0)<br />

Diagrammes de structures composites (UML V2.0)<br />

Passage du modèle des besoins au diagramme de classes<br />

Concept de classe, d'attribut, d'association, d'opération<br />

Héritage, généralisation et spécialisation<br />

Agrégation et composition<br />

Attribut de lien, classe d'association<br />

Association qualifiée, rôle, contrainte<br />

Autre méthode pour modéliser le diagramme de classes<br />

Relever les classes potentielles<br />

Définir les concepts<br />

Relever les attributs<br />

Définir les associations et les multiplicités<br />

Structurer le modèle (héritage, agrégations, compositions)<br />

Vérifier les chemins d'accès<br />

21<br />

Les diagrammes comportementaux<br />

Diagramme de séquence<br />

Diagramme d'état<br />

Diagramme de communication (nom UML V2.0 anciennement<br />

appelé diagramme de collaboration)<br />

Diagramme d'activités<br />

Diagrammes de Vue d'ensemble des interactions (UML V2.0)<br />

Diagrammes de timing (UML V2.0)<br />

Concepts des diagrammes dynamiques<br />

Message et événement<br />

Etat, transition, entry, exit<br />

Action, activité, contrainte, argument<br />

Diagramme de séquence<br />

Construction<br />

Signification<br />

Diagramme d'état<br />

Construction<br />

Signification<br />

Diagramme d'activité<br />

Construction<br />

Signification<br />

Diagramme de collaboration ou appelé de communication<br />

Construction<br />

Signification<br />

Retour au diagramme de classes et complément des opérations<br />

Démarche objet de type UP « Unified Process »<br />

Préparation à la progression dans une démarche objet et<br />

sensibilisation à la pratique itérative et incrémentale.<br />

Elaborer les packages<br />

Mise en place des incréments<br />

Application de la démarche itérative<br />

Réutilisation des composants<br />

Les design patterns les plus connus<br />

Comment faire le passage du diagramme de classes au modèle<br />

logique de la base de données.<br />

Indications pour l'utilisation d'outils comme PowerAMC, Rose<br />

2000 ou Poseidon.


UML : Méthodes RUP et<br />

UML pour chef de projet<br />

3 jours<br />

Objectifs<br />

Le langage UML s'est imposé comme un standard de<br />

modélisation permettant une communication performante au sein<br />

d'un projet informatique. Les participants à cette formation UML<br />

acquerront les connaissances théoriques et méthodologiques qui<br />

permettent de faire d'UML un atout pour la réussite d'un projet.<br />

USDP ou plus simplement UP (Unified Process) est une méthode<br />

générique dont les principes guident la plupart des méthodes<br />

actuelles (par exemple RUP).<br />

Cette formation UML vous permettra de:<br />

- Savoir mener un projet de l'analyse à la conception <strong>avec</strong><br />

UP/UML<br />

- Connaitre les type de diagrammes UML 2.0<br />

- Être capable de mettre en pratique UP <strong>avec</strong> UML 2.0<br />

Participants<br />

- Maître d'ouvrage<br />

- Chefs de projet<br />

- Architectes<br />

- Urbanistes<br />

Pré-requis<br />

Maîtriser les concepts objets<br />

Travaux pratiques<br />

Ce stage est en grande partie consacré aux travaux dirigés basés<br />

sur de petits exemples pour chaque notion et concept nouveaux<br />

et chaque type de diagrammes.<br />

Contenu<br />

Présentation d'UML<br />

Les origines d'UML<br />

UML un standard incontournable<br />

Le diagrammes et leurs utilisations<br />

Présentation d'UP<br />

Genèse du processus unifié<br />

Cycle de vies en objet<br />

Vocabulaires: Phases, Itérations, Artefacts et Rôles<br />

Les méthodes agiles UPUP ou USDP<br />

Méthode de développement générique<br />

Méthode guidée par les besoins<br />

Méthode itérative<br />

Méthode incrémentale<br />

Processus centré sur l'architecture<br />

Les activités<br />

Expression des besoins et cas d'utilisation<br />

Analyse<br />

Conception<br />

Implémentation<br />

Les phases du processus<br />

Phase de création ou inception<br />

Phase d'élaboration<br />

Phase de construction<br />

Phase de transition<br />

UP et ses adaptations<br />

RUP, 2TUP<br />

Mettre en pratique UP <strong>avec</strong> UML 2.0<br />

Etude préliminaire<br />

Capture des besoins fonctionnels<br />

Capture des besoins techniques<br />

Etude des dépendances et découpage du projet<br />

<strong>Développement</strong> du modèle statique<br />

<strong>Développement</strong> du modèle dynamique<br />

Conception générique<br />

Conception préliminaire<br />

Conception détaillée<br />

22


Introduction à XML<br />

3 jours<br />

Objectifs<br />

Cette formation XML intensive de 3 jours vous permettra<br />

d’acquérir une bonne maîtrise de XML et de comprendre la place<br />

que ce format universel de données occupe dans les applications<br />

d’<strong>entreprise</strong>. Tous les aspects essentiels du langage sont<br />

abordés. Des cas d’utilisation typiques dans les différents<br />

domaines d’application sont présentés et des travaux pratiques<br />

vous permettront de les implémenter.<br />

A l’issue de ce cours, vous serez amène d’intégrer le standard<br />

XML dans vos systèmes d’information.<br />

Participants<br />

Ce cours XML s’adresse à tout développeur, chef de projet ou<br />

architecte désireux d’utiliser XML dans leur application ou leur<br />

S.I.<br />

Pré-requis<br />

Aucun. HTML et ou une expérience de développement sont un<br />

plus.<br />

Travaux pratiques<br />

Des postes de travail sous Windows . Ce cours de<br />

programmation est fait <strong>avec</strong> un éditeur HTML non wysiwyg afin<br />

de comprendre les subtilités du langage<br />

Contenu<br />

Introduction à XML (formation XML)<br />

Les bases d'XML<br />

Document XML bien formé<br />

Les éléments<br />

Les attributs<br />

Structuration d'un document XML<br />

Les bases d'une vision objet d'un document XML<br />

DTD et validation (formation XML)<br />

La syntaxe des DTD<br />

Document XML valide<br />

Structuration des données<br />

Limites des DTD<br />

Les espaces de noms: namespaces (formation XML)<br />

Règles d'écriture des espaces de noms<br />

Utilisation des espaces de noms<br />

Identifier les différents langages XML dans un document<br />

complexe<br />

XML schéma (formation XML)<br />

Le langage XML schéma<br />

La validation par les schémas<br />

Modèle UML et XML schéma<br />

Utilité des schémas XML<br />

Création de schémas XML<br />

Structuration des schémas<br />

XSL (formation XML)<br />

Le langage de programmation XSLT<br />

Cas d'utilisation de XSLT<br />

Utilisation de XPath <strong>avec</strong> XSLT<br />

Transformation de langages XML par XSLT<br />

Adresser et manipuler des éléments XML <strong>avec</strong> XPath<br />

Utilité de XPath<br />

Parcours des données à l'aide de XPath<br />

Requêtes XPath<br />

Les principes de base de XSLT<br />

XSLT un vrai langage de programmation<br />

Transformation et restructuration de documents XML<br />

Les extensions de XSLT<br />

Structuration de programmes XSLT<br />

Mise en page et formatage avancés<br />

Les éléments de base d'un document XSL<br />

Transformation XSL - pdf<br />

23<br />

XQuery (formation XML)<br />

Interroger un fichier de données XML comme une base<br />

relationnelle<br />

XPath 2, XSLT 2 et XQuery<br />

Utilité de XQuery<br />

Requêtes XQuery<br />

Exemples de processeurs


XML et de l'objet pour les<br />

administrateurs système<br />

2 jours<br />

Objectifs<br />

Les éditeurs de logiciels font aujourd'hui appel au langage XML<br />

pour l'ensemble de leurs fichiers de configuration.<br />

XML surgit donc dans le paysage de l'administrateur système.<br />

Cette formation XML de 2 jours vous permettra de:<br />

Démystifier la technologie XML<br />

Identifier les forces du langage et ses multiples applications<br />

pratiques<br />

Récupérer les usages d'XML pour les plate forme Microsoft ou<br />

Open Source<br />

Être autonome <strong>avec</strong> les concepts Objet<br />

Employer ses connaissances Objet pour faire un meilleur usage<br />

des scripts système comme WSH, PowerShell, WMI ou Perl<br />

Participants<br />

Administrateurs systèmes<br />

Pré-requis<br />

Une expérience de l'administration des systèmes,<br />

aucune connaissance en développement n'est nécessaire<br />

Contenu<br />

Découvrir le XML<br />

Les origines du XML<br />

Les avantages du XML dans la famille des langages à balises<br />

Les éléments du méta langage<br />

Les recommandations du W3C indispensables à la<br />

compréhension et l'utilisation d'XML<br />

Les termes : XSLT, XPath, DOM, SCAD...<br />

Rédiger un document XML valide<br />

Création d'un document XML valide<br />

Règles d'écriture d'un DTD<br />

Règles de validation pour un XML "bien formé"<br />

Se repérer dans les espaces de noms<br />

Identifier les différentes balises XML dans un document complexe<br />

Découvrir l'utilisation de DOMDOM : un modèle Objet de<br />

documents<br />

SAX : une API de traitement évènementiel des documents<br />

DOM et SAX, inséparables<br />

Utilisation de XML Schéma XML<br />

Schéma : rôle et intérêt par rapport aux DTD<br />

Le typage des données<br />

La syntaxe des schémas : les listes, les unions, les séquences et<br />

les choix<br />

Configurer les systèmes <strong>avec</strong> XML<br />

XML et la plate forme Microsoft : Vista, Windows Server 2008,<br />

IIS...<br />

XML et la plate forme Linux : LAMP, Tomcat, JBoss,...<br />

Situer l'évolution des concepts vers l'Objet<br />

Des langages machines aux langages Objet<br />

L'Objet, une évolution et non une révolution<br />

Identifier les avantages de l'Objet<br />

Quels sont les apports de l'Objet ?<br />

Une analyse plus simple, facilitée par une forte similitude <strong>avec</strong> le<br />

monde réel<br />

Des concepts puissants : abstraction, encapsulation, héritage,<br />

polymorphisme<br />

Vers une plus grande flexibilité<br />

Repérer les principaux concepts Objet<br />

Les classes<br />

Les objets<br />

L'héritage<br />

Le polymorphisme<br />

Automatiser les taches d'administration <strong>avec</strong> l'Objet<br />

Découvrir l'Objet dans WSH, WMI, PowerShell, Perl...<br />

24


XML : Transformations<br />

XSL<br />

XSL-T, XPath, XSL-FO<br />

4 jours<br />

Objectifs<br />

Cette formation XML intensive de 4 jours comportant de<br />

nombreux travaux pratique a pour objectif de former des<br />

développeur XSL. Après une rapide introduction rappelant les<br />

cas d’utilisation des transformations XSL, ce cours propose de<br />

balayer tous les aspects de XSL-T et de XPath, il fournit<br />

également une introduction conséquente à XSL-FO.<br />

A l’issue de ce cours, vous serez amène de mettre en pratique et<br />

de développer des feuilles de styles XSL-T ou XSL-FO pour vos<br />

applications Web.<br />

Participants<br />

Ce cours s’adresse à tout développeur, chef de projet ou<br />

architecte désireux d’utiliser XML dans leur application ou leur<br />

S.I.<br />

Pré-requis<br />

HTML et développement Web.<br />

Contenu<br />

XSL : La feuille de style des documents XML<br />

Rappel du rôle du CSS pour HTML, Application d'un CSS à un<br />

document XML, Limitations du CSS<br />

Le rôle de XSL et de ses 3 composants principaux XSL-T, XPath<br />

XSL-FO,<br />

Les possibilités de XSL et ses cas d'utilisation. XSL une<br />

recommandation W3C<br />

XSL-T comment ca marche, principe de transformation, utilisation<br />

côté client, les navigateurs qui le supportent, utilisation côté<br />

serveur, les différents moteurs de transformation disponibles.<br />

Déclaration de style dans les documents XML<br />

XPath : comment référencer un nœud, les différents axes, les<br />

expressions, les fonctions<br />

XSL-FO, formatage de page, principe de génération de fichiers<br />

PDF, outils à disposition.<br />

L'outil XML-spy<br />

Travaux pratiques Exercices d'expression XPath, exemples<br />

simples de XSL, exemples de XSL-FO, Appliquer une feuille de<br />

style <strong>avec</strong> XML-spy, générer du PDF.<br />

XSL-T et les templates<br />

Entêtes des fichiers XSL<br />

Principe des templates, application des template par le moteur<br />

utilisation, syntaxe, définition des attributs match,mode et name,<br />

règles de priorité entre templates<br />

Les expressions de base XPath, l'utilisation du '/', Le caractère<br />

joker, Notion de chemin et , comportement du moteur, syntaxe,<br />

les paramètres, les variables<br />

Approfondissement de XPath<br />

Spécification des attributs, désignation d'un élément selon la<br />

valeur d'un de ses attributs<br />

Désigner un élément <strong>avec</strong> des indices, les fonctions position(),<br />

last(), count()<br />

Combiner des expressions XPath <strong>avec</strong> l'opérateur |<br />

Les différents axes, (enfants, parents, descendants, ancêtres, etc<br />

..)<br />

Les fonctions sur les chaînes de caractères<br />

Travaux pratiques : Pour chaque item, des exemples sont<br />

discutés et de petits exercices sont proposés.<br />

25<br />

XSL-T<br />

La répétition, , le tri, les différents modes, le sens de tri<br />

La création d'éléments et d'attributs, , ,<br />

Le traitement conditionnel ,<br />

Génération de nombre et formatage , les opérations sur les<br />

nombres, les fonctions sum(), ceiling(), mod, ...<br />

Les variables locales et les variables globales, les paramètres<br />

Comment définir son format de sortie,<br />

Combiner les feuilles de style <strong>avec</strong> , , comment organiser<br />

correctement ses feuilles de style.<br />

Eléments divers : ajouter des commentaires, générer des ids,<br />

récupérer les espaces de nommage, manipuler les espaces,<br />

ajouter des zones de textes, ...Travaux pratiques<br />

Génération dans XML-spy de plusieurs pages HTML faisant<br />

intervenir les différents instructions présentées. Génération d'une<br />

page HTML/javascript complexe<br />

XSL-FO<br />

XSL-FO comment ca marche<br />

Architecture utilisée pour générer du PDF <strong>avec</strong> XSL<br />

Eléments principaux de XSL-FO, la notion de block, de séquence<br />

de pages, de layout, le formatage de texte<br />

Gestion des listes et des tableaux, comment insérer des<br />

graphiques ou des images<br />

Gestion des index, des marqueurs, des favoris, pied de page et<br />

numérotation des pages<br />

Difficulté de XSL-FO, les outils disponibles<br />

Travaux pratiques Génération d'un ficher PDF dans XML-spy<br />

Transformations XSL : mise en pratique<br />

XSL-T côté client : le support par les navigateurs actuels, les<br />

tendances, les limitations, utilisation du <strong>Java</strong>script <strong>avec</strong> XSL, les<br />

ActiveX <strong>avec</strong> IE<br />

XSL-T côté serveur : rappel des avantages d'une solution serveur<br />

Les alternatives pour une plate-forme <strong>J2EE</strong>, Xalan, TrAX<br />

Les alternatives pour une plate-forme .NET<br />

Réaliser une transformation XSL dans un environnement php<br />

Travaux pratiques<br />

Mise en pratique sur les différentes plates-formes.


CORBA 3 Architecture et<br />

mise en oeuvre<br />

4 jours<br />

Objectifs<br />

CORBA représente un standard défini par l' O.M.G. pour<br />

développer des applications distribués. Vous comprendrez à<br />

l'issu de ce cours l'architecture de CORBA, le langage IDL, la<br />

programmation d'un client CORBA, d'un serveur CORBA,<br />

comment implémenter les différents services CORBA, réaliser<br />

des applications intranet/internet, et le nouveau modèle de<br />

composant CCM de CORBA 3.<br />

Pré-requis<br />

Connaissance du langage C++ et/ou <strong>Java</strong><br />

Travaux pratiques<br />

Les travaux dirigés représentent 50% du cours.<br />

Contenu<br />

Introduction<br />

Présentation des architectures distribuées<br />

Problématiques des systèmes répartis<br />

L’ancêtre « Remote Procedure Call »<br />

Interopérabilité et intégration<br />

Architecture multi tiers, client/serveur<br />

La solution CORBA : motivation, historique, les versions<br />

CORBA 3.0, introduction de CCM le modèle composant<br />

L'architecture CORBA<br />

L'Object Management Group<br />

CORBA : spécification technique<br />

Les ORBS, les implémentations de la norme<br />

Architecture de base<br />

Le protocole de communication GIOP, IIOP<br />

Langage IDL, génération des codes STUB et SKELETON<br />

CORBA et les langages d’implémentation<br />

CORBA et le monde de l’embarqué, modèle<br />

« L’ Object Adapter », Le « BOA », le « POA »<br />

L’IOR « interoperable object reference »<br />

Approche d’invocations dynamiques : DII et DSI<br />

Les APIs normalisées de CORBA<br />

CORBA et DCOM de Microsoft<br />

L'IDL CORBA<br />

Présentation de « Interface Definition Language »<br />

« Mapping » d’IDL sur les autres langages<br />

Le rôle d’IDL dans la génération des codes associés<br />

Notion d'interface et de modules<br />

Contenu d'un fichier IDL<br />

Les types de base, les types primitifs<br />

Les types complexe, abstrait, les structures<br />

Les interfaces<br />

Les exceptions, les unions, les enums<br />

Travaux Pratiques : Rédaction d’un contrat IDL cohérent dans<br />

une approche client serveur<br />

Programmation des serveurs CORBA<br />

Implémentation des serveurs et des clients CORBA<br />

Les objets CORBA nommés et transitoires<br />

Création des fichiers IDL, compilation IDL<br />

Développer le client CORBA<br />

Les méthodes de localisation des objets serveurs<br />

Implémenter le serveur CORBA en héritage sur le SKELETON<br />

Implémentation des serveurs ou clients en C++, utilisation des «<br />

smarts pointers »<br />

Les héritages d’interface, problème du multi héritage<br />

Serveur en approche « TIE », par délégation<br />

Approche multi-threads dans un serveur CORBA<br />

Travaux PratiquesDévelopper un client serveur CORBA en <strong>Java</strong><br />

Développer un client serveur CORBA en C++<br />

Implémentation d’un serveur « TIE »<br />

26<br />

Programmations des clients CORBA<br />

Principe du client CORBA<br />

Les APIs CORBA pour le client<br />

Les différentes techniques de localisation d’objets<br />

Liaison <strong>avec</strong> les objets serveurs<br />

Travail <strong>avec</strong> l’IOR « Interoperable Object Reference »<br />

Invocation dynamique d'interfaces : " DII "Travaux Pratiques<br />

<strong>Développement</strong> d’un client CORBA<br />

Le service de Nom<br />

Fonctionnement du service de nom et enjeux<br />

Initialisation du service, localisation<br />

Les contextes de noms, système hiérarchique<br />

Attachement d’un objet CORBA<br />

Résolution d’une référence sur un objet<br />

Les utilitaires graphiques de visualisation du service<br />

Les APIs du service de noms, contrat IDL<br />

Travaux Pratiques : Utilisation du service de noms en réseau et<br />

implémentation<br />

Le service d'événements<br />

Fonctionnement du service d'événements<br />

Organisation des canaux d’événements<br />

Le système des proxys<br />

Approche synchrone et asynchrone<br />

Comparaison du service <strong>avec</strong> les « CALLBACKS »<br />

Exemple d’implémentations à base de « callbacks »<br />

Serveur et clients en modèle " push " ou « pull »<br />

Implémentation, exemples de codes<br />

Travaux PratiquesRéalisation d’un système de bourses de<br />

valeurs, communication par événements<br />

Les autres services CORBA<br />

Liste des services existants<br />

Les services de sécurité et de transactions<br />

Les services de Trading, Relations, LifeCycle, etc<br />

CORBA et l' Internet<br />

Principe des applications CORBA en Internet ou Intranet<br />

Les problèmes de communication liés au Firewall<br />

L’approche « tunnelling », le procotole HTTP<br />

Exemple d’architectures à base de servlets et applets<br />

Les " applets" CORBA sur Internet<br />

Travaux Pratiques : Réalisation d’un application CORBA «<br />

minimaliste » en environnement internet<br />

Le modèle Composant CCM<br />

Introduction au modèle CCM<br />

Comparaison <strong>avec</strong> les architectures .Net et EJB<br />

Le modèle abstrait des composants CORBA<br />

Les « facettes » et les « réceptacles »<br />

Processus d’archivage et d’assemblage des composants<br />

Processus de déploiement des composants<br />

CCM, le futur de CORBA ?


Programmation en C<br />

5 jours<br />

Objectifs<br />

Ce stage intensif vous permettra d'acquérir une connaissance<br />

réellement opérationnelle du langage. Il vous expliquera le<br />

fonctionnement des différents mécanismes et vous montrera leur<br />

mise en œuvre grâce à de nombreux exercices pratiques. A<br />

l'issue de ce stage, vous serez en mesure d'écrire des<br />

programmes C robustes et portables.<br />

Participants<br />

Les ingénieurs et les informaticiens qui souhaitent acquérir une<br />

formation complète et opérationnelle sur le langage C.<br />

Pré-requis<br />

Les participants doivent avoir des connaissances générales en<br />

informatique et maîtriser au moins un langage de programmation.<br />

Travaux pratiques<br />

Des machines sous système Unix ou Windows (PC) seront mises<br />

à la disposition des participants de manière à mettre en pratique<br />

les notions présentées.<br />

Contenu<br />

Première approche pratique<br />

Organisation d'un programme<br />

Composants de base du langage.<br />

Types et constantes de base.<br />

Stockage et passage de paramètres.<br />

Variables globales et locales.<br />

Arguments de fonction : passage par valeur.<br />

Code de retour des fonctions.<br />

Opérateurs d'adressage.<br />

Passage d'arguments par adresse.<br />

Entrées/sorties formatées.<br />

Utilisation élémentaire de la chaîne de production.<br />

Mécanismes<br />

Opérateurs, expressions numériques et opérations sur les<br />

nombres<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 de base et expressions logiques<br />

Instruction d'affectation.<br />

Instruction while.<br />

Mécanismes de fonctionnement des expressions logiques.<br />

Opérateurs de comparaison.<br />

Gestion du flux d'entrée/sortie standard.<br />

Prototype de filtre.<br />

Instruction if.<br />

Opérateurs logiques.<br />

Opérations numériques : rappels et compléments<br />

Les types numériques composés. Règle de conversion dans les<br />

expressions mixtes.<br />

Initialisation des variables.<br />

Arithmétique sur les adresses.<br />

Formats d'entrée/sortie associés aux types numériques.<br />

Tableaux, pointeurs et chaînes de caractères<br />

Définition et utilisation classique des tableaux.<br />

Equivalences pointeurs/tableaux.<br />

Chaînes de caractères.<br />

Initialisation des tableaux.<br />

Exemples de manipulation de chaînes de caractères.<br />

Rappels et compléments sur for, while et l'opérateur ",".<br />

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 />

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 />

complément à 1.<br />

27<br />

Règle de visibilité.<br />

Cas des fonctions.<br />

Compléments sur les fonctions et les initialisations.<br />

Opérateurs travaillant au niveau du bitET, OU, OU exclusif,<br />

Décalages.<br />

Compléments<br />

Compléments sur les opérateurs et les instructions<br />

Opérateur ternaire d'alternative.<br />

L'instruction switch.<br />

L'instruction do while.<br />

Instructions associées aux boucles.<br />

Les structures<br />

Généralités.<br />

Les structures emboîtées.<br />

Les structures chaînées.<br />

Les champs de bits.<br />

Les unions.<br />

Les énumérations.<br />

Le macro processeur, la portabilité<br />

Les directives de compilation : constantes symboliques, macros,<br />

inclusions, compilation conditionnelle.<br />

Construction de surtypes : typedef.<br />

Conversion explicite de types : casting.<br />

Maîtrise des types complexes.<br />

Les entrées/sorties de la bibliothèque<br />

Généralités.<br />

Ouverture et fermeture de fichiers.<br />

Entrées et sorties : caractères, lignes, enregistrements.<br />

Outils généraux.<br />

Accès direct.<br />

Gestion des entrées/sorties par les appels système<br />

Généralités.<br />

Opérations classiques.<br />

Accès direct.<br />

Destruction.<br />

Etude de cas.<br />

Outils associés à la chaîne de production


Programmation objet<br />

en C++<br />

5 jours<br />

Objectifs<br />

Ce stage intensif a deux objectifs : initier les participants aux<br />

méthodes et réflexes de la programmation par objet ; leur<br />

apporter une maîtrise opérationnelle complète du langage C++. Il<br />

est le fruit d'une longue expérience en matière de développement<br />

en C++ et il est construit selon une pédagogie rigoureuse<br />

reposant sur des travaux pratiques nombreux et progressifs.<br />

Participants<br />

Ce cours s'adresse aux ingénieurs qui souhaitent acquérir une<br />

formation à l'approche objet et aux spécificités du langage C++. A<br />

l'issue de ce cours, ils sauront utiliser ce langage comme un<br />

véritable outil de programmation objet.<br />

Pré-requis<br />

Il est essentiel que les participants aient une bonne maîtrise du<br />

langage C.<br />

Travaux pratiques<br />

Des stations de travail disposant des langages Visual C++ (sous<br />

Windows) et gcc (sous Unix) seront à la disposition des<br />

participants pendant toute la durée du cours.<br />

Contenu<br />

Approche orientée Objet<br />

Notion d'approche objet.<br />

Vocabulaire de l'approche objet.<br />

Démarche.<br />

Exemple de programme C++.<br />

Présentation de l'environnement de développement.<br />

Différences C/C++<br />

Données : définition, initialisation, type de données (enum, struct,<br />

etc.).<br />

Expressions : notion de référence.<br />

Opérateurs et priorité (::, new, delete, mécanisme de cast).<br />

Instructions.<br />

Différences entre les fonctions<br />

Passage de paramètres par référence.<br />

Prototypage.<br />

Appel aux fonctions C.<br />

‘inline' et valeurs par défaut.<br />

Redéfinition de fonction et substantypage.<br />

Classes<br />

Définitions.<br />

Données privées/publiques.<br />

Fonctions membres.<br />

Constructeur de copie.<br />

Notion de pointeur ‘this'.<br />

Données statiques : forme de déclaration et accès.<br />

Fonctions membres statiques.<br />

Fonctions amies d'une classe et classes amies.<br />

Initialisation des vecteurs d'instance de classe.<br />

28<br />

Surcharge des opérateurs<br />

Principe de la surcharge.<br />

Surcharge des opérateurs binaires.<br />

Surcharges des opérateurs indice et fonction.<br />

Surcharges des opérateurs de gestion de mémoire.<br />

Surcharges des opérateurs de conversion/constructeurs de<br />

surcharges.<br />

Surcharge des opérateurs ‘‘.<br />

Dérivation et héritage<br />

Principe de la dérivation.<br />

Contrôle des accès et dérivation (notion de données protected).<br />

Pointeurs et classes dérivées.<br />

Conversion implicite et explicite.<br />

Fonctions membres dans les classes dérivées amies de la classe<br />

de base.<br />

Dérivation multiple.<br />

Classe abstraite.<br />

Classe de base virtuelle.<br />

Constructeur et destructeur virtuel.<br />

Conception Orientée Objet<br />

Conception orientée objet et la programmation orientée objet.<br />

Méthodes de conception orientées objets : UML, méthode Booch,<br />

OMT, évolutions des méthodes classiques.<br />

Impact de la conception objet sur l'analyse du système.<br />

Constitution de librairies de classes<br />

Portée des identificateurs.<br />

Constitution d'une librairie.<br />

Compilation séparée : organisation des modules, déclarations,<br />

etc.<br />

Méthodes et conseils d'organisation des développements.<br />

Librairie de classe<br />

Gestion des entrées/sorties (iostream).<br />

Bibliothèques complémentaires.<br />

Classes standard.<br />

Modèles et patron<br />

Modèles de classe.<br />

Modèles de fonction.<br />

Les modèles et les mécanismes de dérivation.<br />

Gestion des exceptions<br />

Principe de gestion.<br />

Exception et dérivation.<br />

Environnement de développement<br />

Outil de mise au point (debugger).<br />

" Browser " de classe.<br />

Outils complémentaires de développement.<br />

Conclusion<br />

Cycle de vie du logiciel : test, intégration, méthode de mise en<br />

production.<br />

Interaction <strong>avec</strong> les autres environnements.<br />

Evolution de C++.<br />

Autres environnements objets.<br />

Travaux pratiques :<br />

Toutes les techniques présentées seront mises en œuvre par les<br />

participants sur leurs stations de travail.


C++ Programmation<br />

efficace et avancée<br />

5 jours<br />

Objectifs<br />

Cette formation C++ avancée explicite la syntaxe de<br />

constructions C++ avancées, l'utilisation de la bibliothèque<br />

standard (STL) et présente de nombreuses expressions<br />

idiomatiques permettant de mettre en oeuvre une conception<br />

efficace et robuste ainsi qu'une implémentation plus directe des<br />

Design Patterns.<br />

Il permettra aux participants de répondre aux questions suivantes<br />

: "Comment utiliser la STL ?", "Pourquoi et comment appliquer<br />

les Design Patterns en utilisant <strong>avec</strong> profit les possibilités offertes<br />

par le C++ ?", "Comment synthétiser les conceptions afin de bâtir<br />

des implémentations robustes, faciles à modifier et à<br />

administrer ?", "Comment utiliser la RTTI à bon escient ?",<br />

"Comment tirer profit de la programmation générique ?", "Quels<br />

sont les avantages et inconvénients de l'héritage multiple ?".<br />

Vous allez apprendre à:<br />

- Élaborer des fonctions et des classes templates<br />

- Mettre en pratique la gestion des exceptions<br />

- Utiliser des opérateurs et des pointeurs pour implémenter<br />

l'indirection<br />

- Réutiliser les classes conteneurs et les algorithmes de la<br />

bibliothèque standard<br />

- Exercer le paradigme de la "programmation générique"<br />

- Explorer l'expression idiomatique : "l'acquisition des ressources,<br />

c'est l'initialisation"<br />

- Étendre votre utilisation des flux d'entrée / sortie (E/S)<br />

- Débattre de l'usage et de l'abus des requêtes de types à<br />

l'exécution (RTTI)<br />

- Maîtriser les aspects avancés de l'héritage (multiple - privé)<br />

- Mettre en oeuvre des stratégies spécifiques au C++ pour<br />

améliorer les performances<br />

Participants<br />

Développeurs C++ souhaitant approfondir leurs connaissances<br />

dans ce langage<br />

Pré-requis<br />

Trois mois d'expérience de la programmation <strong>avec</strong> C++<br />

Contenu<br />

Les espaces de noms<br />

Pourquoi utiliser les espaces de noms<br />

Déclarations et définitions combinées<br />

Définitions discontinues<br />

Les bonnes pratiques<br />

Les opérateurs<br />

Opérateurs binaires et unaires<br />

Opérateurs et réutilisation<br />

Les foncteurs<br />

Les opérateurs pointeur et type<br />

29<br />

Programmation dynamique <strong>avec</strong> RTTI<br />

Utilisation de typeid() et type_info<br />

Static_cast(), reinterpret_cast(), const_cast() et dynamic_cast()<br />

Les templates<br />

Le pré-processeur et les macros<br />

Syntaxe<br />

Fonction template<br />

Classe template<br />

Utilisation des templates<br />

La bibliothèque STL<br />

Les conteneurs<br />

Les itérateurs<br />

Les algorithmes<br />

Les auto_ptr<br />

Gérer la mémoire dynamique<br />

Encapsuler un pointeur<br />

Constructeurs et exceptions<br />

Gérer la propriété de la mémoire<br />

Initialiser et transmettre des auto_ptr<br />

Pointeurs sur fonctions membres<br />

Comparaison <strong>avec</strong> les pointeurs sur fonction en C<br />

Syntaxe<br />

Utilisation de Typedef<br />

Les entrées / sorties<br />

Cout, cin et cerr<br />

Utilisation des fichiers<br />

Les opérateurs de Streaming<br />

La programmation générique<br />

Révision des templates<br />

Réification de fonctions<br />

Les algorithmes de la STL<br />

Gestion efficace des exceptions<br />

Lever et relancer des exceptions<br />

Capturer les exceptions<br />

Hiérarchiser vos exceptions<br />

Gérer les ressources <strong>avec</strong> les auto_ptr<br />

Les bonnes pratiques<br />

Utilisation avancée de l'héritage<br />

Héritage privé, protégé et contrôle d'accès<br />

Héritage multiple (IM)<br />

IM et classes de base répliquées<br />

Ambiguïté potentielle et résolution par la clause Using<br />

Héritage virtuel et règles de dominance<br />

Casting et héritage virtuel<br />

Performance<br />

Gérer efficacement les dépendances de compilation<br />

Du bon usage de l'Inlining<br />

Profiling, anticipation et mise en cache<br />

Recyclage des objets et mise en Pool<br />

Ecriture d'allocateurs de mémoire


Développer <strong>avec</strong> Visual<br />

Basic<br />

5 jours<br />

Objectifs<br />

Cette formation Développer <strong>avec</strong> Visual Basic vous permettra de<br />

maîtriser pleinement les fonctionnalités et les capacités de Visual<br />

Basic. Tous les aspects essentiel du langage sont abordés :<br />

Programmation objet, Interaction <strong>avec</strong> les bases de données,<br />

ActiveX Data Objects, Utilisation de COM.<br />

Participants<br />

Ce cours s'adresse à tous ceux qui désirent développer sous<br />

Visual Basic 6.<br />

Pré-requis<br />

Il est nécessaire de connaître au moins un langage de<br />

programmation et d’avoir une bonne pratique du système<br />

Windows.<br />

Contenu<br />

L'environnement de développement<br />

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 />

Améliorer la conception des applications <strong>avec</strong> la programmation<br />

orientée objetClasses et objets<br />

Les objets graphiques : formes, contrôles<br />

Propriétés, méthodes, événements<br />

La programmation événementielle<br />

La plate-forme de développement Visual Basic<br />

Les principes récurrents<br />

Fenêtres, barre de menu, 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 />

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 />

Les procédures<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<br />

Les structures de contrôle<br />

30<br />

Fenêtres, menus, et boîtes de dialogue<br />

MDI (multiple document interface), formes et contrôles<br />

Chargement et affichage<br />

Les formes modales<br />

Principaux événements, méthodes et propriétés<br />

Menus, popup menus<br />

Les formes prédéfinies<br />

Les fonctions msgbox et inputbox<br />

Les composants graphiques (contrôles)<br />

Contrôles standards, contrôles active X<br />

Saisie et affichage : label, text box, masked edit<br />

Les boutons : command button, check box, option button<br />

Les listes : list box, combo box<br />

Présentation : tool bar, status bar, image list, scroll bar, progress<br />

bar<br />

Les boîtes de dialogue standard : common dialog<br />

La minuterie : timer<br />

Le Drag and Drop (glisser déplacer)<br />

Objet source et objet cible<br />

Les événements souris<br />

Les propriétés de la source<br />

Les événements sur la cible<br />

Travaux Pratiques Gestion d'un formulaire de saisie, contrôles de<br />

validité. Manipulation des listes. Lancement de procédures en<br />

arrière-plan.<br />

Travaux Pratiques Déplacement d'un contrôle sur une forme.<br />

Déplacement d'un élément d'une liste dans une autre liste.<br />

Gestion d'un formulaire de saisie, contrôles de validité.<br />

Manipulation des listes. Lancement de procédures en arrièreplan.<br />

La gestion des erreurs<br />

Traitement des erreurs logiques : le débogage<br />

Les points d'arrêt<br />

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 des erreurs<br />

Les gestionnaires d'erreurs<br />

L'objet Err<br />

L'accès aux données<br />

La manipulation des Fichiers<br />

Accès séquentiel, direct, binaire<br />

Ouverture, fermeture<br />

Les instructions de lecture<br />

Les instructions d'écriture<br />

Les bases de données<br />

Architecture et objets des bases de données relationnelles<br />

Le langage SQL<br />

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<br />

Le Data Environment<br />

Le Data Control<br />

Data Report<br />

Data Form Designer<br />

Les contrôles dépendants des données<br />

Data Grid, Hierarchical Flex Grid<br />

Data List, Data Combo<br />

Touche finale<br />

Les fichiers de ressource<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 création et utilisation d'un fichier de ressources<br />

Utilisation de la base de registre pour conserver des paramètres<br />

dynamiques<br />

Déploiement d'une application


Visual Basic,<br />

perfectionnement accès<br />

aux données, composants,<br />

Web<br />

4 jours<br />

Objectifs<br />

Ce stage vous apportera toutes les techniques de<br />

développement efficace pour les applications client/serveur ou<br />

multi-tiers. Il insiste sur les accès aux bases de données (ADO),<br />

la création de composants COM et la création d’applications Web<br />

dynamiques. L'ensemble des fonctionnalités de Visual Basic sera<br />

utilisé pour développer des applications professionnelles de<br />

qualité.<br />

Pré-requis<br />

Il est nécessaire d'avoir des connaissances sur les bases de<br />

données d'une part, et une expérience de Visual Basic d'autre<br />

part. La participation au stage Visual Basic 6 est un bon prérequis.<br />

Travaux pratiques<br />

Les exercices pratiques représentent 50% de la durée du cours.<br />

Les outils seront Visual Basic 6, différents SGBD et Internet<br />

Explorer.<br />

Contenu<br />

L'accès aux bases de données<br />

Les fournisseurs d'accès : ODBC et OLE-DB.<br />

Les objets d'accès aux données : ADO (Active X Data Objects).<br />

Les contrôles dépendant des données<br />

Pour y accéder (Data Environnement, Data Control).<br />

Pour les présenter (Data Grid, Hierarchical Flex Grid, Data List,<br />

Data Combo).<br />

Quand utiliser l'un plutôt que l'autre ?<br />

Travaux Pratiques : Utilisation des outils d'accès aux données.<br />

Les objets ADOLe modèle objet ADO.<br />

Connexion à une source de données.<br />

Les commandes.<br />

Récupération de données : le Recordset.<br />

Types et positionnement des Recordset.<br />

Mise à jour, recherche, tri.<br />

Recordset déconnecté, Recordset dynamique.<br />

Intégrité des données : les transactions.<br />

Intégrité des données : les verrous.<br />

Exécution des procédures stockées<br />

Travaux Pratiques : Création d'un formulaire de saisie accédant à<br />

une base SQL Server.<br />

Récupération des données provenant de l'exécution d'une<br />

procédure stockée.<br />

Validation et invalidation d'une transaction d'écriture dans la base<br />

de données.<br />

Création d'un recordset déconnecté.<br />

31<br />

La création des composants Com<br />

Le modèle COM<br />

L'approche composants : réutilisabilité, simplification,<br />

optimisation.<br />

Le modèle objet COM.<br />

Les interfaces standard, choix du type de composant.<br />

Utilisation des composants<br />

Création d'une application cliente.<br />

Référencement du composant, la bibliothèque de types.<br />

Variables objet, instanciation d'objets.<br />

Manipulation des objets : l'Automation.<br />

Composants « in-process » et « out-of-process » : dll et exe.<br />

Les modules de classe.<br />

Définitions des propriétés, méthodes, événements.<br />

Enumérations et constantes nommées.<br />

Le déclenchement des erreurs.<br />

COM et ADO : les composants liés aux données.<br />

La propriété instancing des modules de classe.<br />

La création d'un modèle objet, les collections.<br />

La création d'interfaces.<br />

Compilation et enregistrement des composants.<br />

La compatibilité des versions.<br />

Travaux Pratiques : Création et test d'un composant COM<br />

Dll de services bancaires.<br />

Création d'un composant de connexion à une base de données<br />

<strong>avec</strong> ADO.<br />

Exemple de composant COM : les contrôles ActiveX<br />

Création de contrôles Active X, l'assistant.<br />

User Control et contrôles constitutifs.<br />

Propriétés, méthodes, événements.<br />

Les pages de propriétés.<br />

Création d'un contrôle dépendant des données.<br />

Le contrôle Data Repeater.<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.<br />

Création d'un contrôle Active X fournisseur de données <strong>avec</strong><br />

ADO.<br />

Architecture client-serveur et architecture multitiers : Com+<br />

L'architecture multitiers, approche méthodologique.<br />

Encapsulation des objets Ado.<br />

COM+ et MTS.<br />

Transaction multi-objets : le « double commit ».<br />

Le « just in time activation » et l'optimisation des ressources.<br />

COM+ et la sécurité.<br />

Travaux PratiquesGestion d'une transaction en « double commit<br />

».<br />

Visual Basic et le développement Internet<br />

<strong>Développement</strong>s côté serveur et côté client.<br />

Utilisation du contrôle WebBrowser.<br />

Les documents Active X.<br />

Visual Basic et Vbscript .<br />

Les applications DHTML (dynamic Html).<br />

Les applications IIS : l'ASP.<br />

L'implémentation des composants COM dans les pages ASP.<br />

Sites Web, composants COM et ADO.<br />

Travaux Pratiques : Création d'un navigateur sur une forme<br />

Visual Basic.<br />

Création d'un projet Document Active X s'exécutant dans Internet<br />

Explorer.<br />

Se préparer à Visual Basic.NET<br />

La plateforme .NET, architecture.<br />

Nouveautés de Visual Basic.NET.<br />

Architecture des applications <strong>avec</strong> VB.NET.<br />

ADO.NET.<br />

Le nouvel outil de développement Visual Studio 7 (ou .NET).


Delphi – Programmation<br />

5 jours<br />

Objectifs<br />

Cette formation montre aux participants la prise en charge de<br />

l'environnement Delphi pour concevoir, réaliser et déployer une<br />

application.<br />

Participants<br />

Cette formation est réservée aux débutants Delphi connaissant<br />

un autre outil de développement ou aux chefs de projet désireux<br />

de se familiariser <strong>avec</strong> l'outil<br />

Pré-requis<br />

Il est préférable de connaître un autre outil de développement.<br />

Contenu<br />

EDI<br />

Contextes de travail, nouvelles options de débogage, nouvel<br />

inspecteur d'objet (catégories), liste des "à faire", mise en oeuvre<br />

de TeamSource, nouveaux experts : application et module<br />

panneaux de configuration<br />

Bases de données : nouveau concepteur de modules de<br />

données<br />

Delphi : vue d'ensemble, IDE, inspecteur d'objets<br />

Le concepteur de fiches<br />

Les menus<br />

La structure d'un programme et la portée<br />

La librairie de composants VCL<br />

Exceptions<br />

Aperçu du moteur de bases de données Borland<br />

Création d'applications de bases de données<br />

Utilisation du composant Tfield<br />

InterBase Local<br />

Utilisation du moniteur SQL<br />

Utilisation du composant TDatabase<br />

DLL et API Windows<br />

TDatasets avancés<br />

Threading<br />

Les packages<br />

Nouveaux composants<br />

Cadres (TFrame), évènements d'applications<br />

(TApplicationEvent), nouvelle visionneuse HTML (browser IE),<br />

nouveaux ensembles de données : ADO, introduction à<br />

"IBExpress", nouveaux composants serveurs MS OfficeProjets,<br />

unités et fiches<br />

Exemples de composants<br />

Le langage Pascal Objet<br />

La programmation orientée Objet en Delphi<br />

Utilisation du débogueur<br />

Programmation événementielle<br />

Explorateur SQL<br />

Utilisation des experts bases de données<br />

Manipulation des Datasets<br />

Migration vers le modèle client;serveur<br />

Utilisation du composant TQuery<br />

L'interface utilisateur<br />

Pascal Objet avancé<br />

Techniques avancées de gestion des exceptions<br />

Création de composants à l'exécution<br />

InstallShield Express<br />

32


Filière JEE/.NET<br />

33


Le langage C# (.NET)<br />

5 jours<br />

Objectifs<br />

Cette formation C# vous permettra de maîtriser les fondamentaux<br />

du langage C# et l’environnement de programmation Visual<br />

Studio 2005/2008. Au delà du langage la plate forme .NET 3.5<br />

vous sera également présentée afin de bien comprendre<br />

l’environnement global sur lequel repose le langage C#.<br />

Concrètement à l’issue de la formation vous serez capable de :<br />

- Comprendre les principes du développement objet (classe,<br />

méthode, héritage, …)<br />

- Comprendre le rôle du framework .NET 3.5 et savoir utiliser ses<br />

classes<br />

- Configurer et utiliser Visual Studio2005/2008<br />

- Programmer en langage C# tout en disposant des bons réflexes<br />

- Maîtriser la syntaxe du langage C#.<br />

- Utiliser ADO.NET et LINQ pour accéder aux données d'une<br />

base et les manipuler<br />

- Créer des applications Windows riches en fonctionnalités<br />

(Winforms)<br />

- Utiliser des services Web XML dans une application C#.<br />

- Tester des fonctionnalités avancées de C#.<br />

Participants<br />

Développeurs débutants. Développeurs maîtrisant la<br />

programmation mais ayant acquis leurs connaissances à<br />

l'université en utilisant un langage non graphique. Développeurs<br />

d'applications d'<strong>entreprise</strong>.<br />

Pré-requis<br />

Pour suivre cette formation c#, les participants doivent disposer<br />

des connaissances suivantes : -Être familiarisés <strong>avec</strong> les<br />

fonctions de base de système d'exploitation et les maîtriser,<br />

notamment la manipulation de fichiers ;-Maîtriser les notions de<br />

base de programmation structurée, notamment des concepts<br />

(contrôle de flux, variables et paramètres et appels de fonction);<br />

Un minimum d'expérience en concepts de programmation<br />

orientée objet est préférable.<br />

Contenu<br />

Introduction à .Net<br />

Qu’entend-on par plateforme (framework) .net ?<br />

Pourquoi parle-t-on parfois indifféremment de C# ou VB .net ?<br />

La place de C# dans l’architecture globale de .NET 3.5<br />

Les nouveautés du Framework 3.0/3.5<br />

Comparaisons de C# <strong>avec</strong> d’autres langages (<strong>Java</strong>, C++, …)<br />

La conception Objet<br />

Qu’est-ce qui caractérise un programme « objet » ?<br />

Vocabulaire et concepts de base (classes, instances)<br />

Pourquoi l’encapsulation est-elle fondamentale ?<br />

Le cycle de vie d’un objet (constructeur, destructeur)<br />

Savoir réutiliser les traitements et les données (héritage)<br />

Donner le même nom à des traitements différents<br />

(polymorphisme)<br />

Exemples de mauvaises conceptions<br />

T.P.Conception orientée Objet d'une étude de cas<br />

Les bases de C#<br />

Espace de nom, types énumérés.<br />

Gestion des références, typage.<br />

Différents modes de passages de paramètres<br />

Méthodes à nombre d'arguments variable.<br />

Surcharge d'opérateurs.<br />

Notion d'attribut, pointeurs.<br />

T.P Premiers exemples progressifs en C# mettant en avant les<br />

points importants et/ou difficiles du langage.<br />

34<br />

La programmation en C#<br />

Le modèle Objet <strong>avec</strong> le langage C#.<br />

Classes et objets : notion de méthode.<br />

Code géré et gestion de la mémoire.<br />

Héritage, surcharge et polymorphisme.<br />

Propriétés, indexeurs et énumérateurs.<br />

Les nouveautés de C# 3.0: expression d'initialisation, types<br />

anonymes, propriétés automatiques, méthodes d'extension,<br />

méthodes partielles et lambda expressions<br />

Utilisation des "Generics"<br />

T.P. Réalisation des programmes de la veille.<br />

La programmation avancée<br />

Exceptions : gestion centralisée des erreurs, classes d'exceptions<br />

personnalisées, exceptions non- .Net.<br />

Délégués : délégués et événements, les délégués comme<br />

alternative au polymorphisme.<br />

Structure de l'architecture .Net : assembly, processus et domaine,<br />

support multi-langage en .Net, sécurité.T.P.<br />

Gérer les tests <strong>avec</strong> les exceptions. Réaliser une application <strong>avec</strong><br />

les délégués. Mettre en oeuvre l'interaction inter-langages.<br />

Les classes incontournables du framework<br />

Classe mathématiques, structures usuelles, gestion des dates.<br />

Gestion du formatage des chaînes.<br />

Filtrer l’information grâce aux expressions régulières.<br />

Conteneurs classiques : listes, listes triées, piles et tables de<br />

hashage.<br />

T.P. Tirer parti de la puissance du framework .Net pour réaliser<br />

rapidement des applications de gestion.<br />

Les entrées / sorties<br />

Notion de flux, FileStream/StreamWriter/StreamReader.<br />

Convertisseurs de formats de texte (Unicode, ANSI, ...).<br />

Gestion des entrées/sorties synchrones/asynchrones, callback<br />

sous forme de délégué.<br />

T.P. Génération d'un index à partir de fichiers texte.<br />

Les principes d'ADO.<br />

.Net<br />

Notion de classe client / classe fournisseur en C#<br />

Choisir d’accéder aux données <strong>avec</strong> DataReader ou DataSet ?<br />

Liaison de données <strong>avec</strong> le Framework .Net 3.0/3.5<br />

La nouvelle philosophie de LINQ (LINQ to ADO, LINQ to SQL).<br />

T.P. Mettre en oeuvre une application fenêtrée interrogeant une<br />

base de données via OLEDB ou SQL Server.<br />

Fenêtres, menus, et composants <strong>avec</strong> les Windows Forms<br />

Les spécificités de ce type de programmation<br />

Différents types de contrôles, menus contextuels (popup), le<br />

presse-papier.<br />

Assemblies de ressources.<br />

Application multilingue<br />

T.P. Gestion des événements des fenêtres et boîtes de dialogue.<br />

Réalisation d'un convertisseur euro/devises multilingue.<br />

Les champs d'application de .Net<br />

Qu’est-ce qu’une application ASP .Net ?<br />

Principes des Web Services<br />

Exemples de Web Services en C#<br />

DotGNU : l’implémentation Opensource de .net<br />

T.P. Gestion des événements des fenêtres et boîtes de dialogue.<br />

Réalisation d'un convertisseur euro/devises multilingue.


Le langage C# 3.0 pour les<br />

développeurs .NET 1.1<br />

2 jours<br />

Objectifs<br />

Cette formation C# 3.0 présente l’intérêt et l’usage des<br />

nouveautés apportées à C# <strong>avec</strong> la version 3 et permet d’acquérir<br />

les connaissances nécessaires pour les exploiter sous Visual<br />

Studio 2008.<br />

Participants<br />

Cette formation s’adresse aux développeurs maîtrisant déjà le C#.<br />

Elle reprendra les concepts introduits dans C# 2.0 nécessaires à<br />

la bonne compréhension des nouveautés de C# 3.0<br />

Pré-requis<br />

Maîtrise du C#<br />

Contenu<br />

Mise à jour vers C# 2.0<br />

Classes partielles<br />

Generics<br />

Classes génériques<br />

Méthodes génériques<br />

Interfaces génériques<br />

Ie numerable<br />

Délégués<br />

Délégués « classiques »<br />

Délégués anonymes<br />

Comprendre C# 3.0 – les simplifications d’écriture<br />

Object initializers<br />

Collection initializers<br />

Local variable type inferences<br />

Implicitly typed arrays<br />

Lambda expressions<br />

Comprendre C# 3.0 – le code généré automatiquement<br />

Automatic properties<br />

Anonymous types<br />

Comprendre C# 3.0 – les nouveaux concepts<br />

Extension methods<br />

Méthodes partielles<br />

LINQ To Object<br />

35


Programmation en C# 2.0<br />

pour développeur<br />

expérimenté<br />

5 jours<br />

Objectifs<br />

Cette formation intensive vous permettra de maîtriser le langage<br />

C# et d’acquérir les compétences et connaissances nécessaires<br />

au développement orienté objet <strong>avec</strong> C# 2.0 et Visual Studio<br />

2005.<br />

Participants<br />

Ce cours s’adresse aux développeurs professionnels et<br />

expérimentés.<br />

Pré-requis<br />

Ce cours s’adresse à des développeurs C++, <strong>Java</strong> ou autres<br />

langages , souhaitant se former à la programmation en C# 2.0.<br />

Contenu<br />

Introduction<br />

L'infrastructure .NET<br />

L'objet, le composant et le service<br />

Visual Studio 2005<br />

Présentation des nouveautés de Visual Studio 2005<br />

Utilisation des outils de gain de productivité<br />

La technologie « ClickOnce »<br />

Le langage C# 2.0, les fondamentaux syntaxiques<br />

Les types de bases et les tableaux<br />

Boucles et branchements<br />

Les classes, structures et énumérations<br />

Les accesseurs<br />

Les propriété, méthodes et événements<br />

Les opérateurs et les indexeurs<br />

Les « délégués »<br />

Les interfaces et le développement orienté composants<br />

Gestion des exceptions<br />

Les nouveautés du langage C# 2.0<br />

Le mot clé global et la notion de « namespace »<br />

Les types « annulables »<br />

Les propriétés et les accesseurs<br />

Les classes partielles<br />

Les types génériques ou paramétrés<br />

Intérêts et usages<br />

Syntaxe générale des paramètres et leurs contraintes<br />

Les classes génériques<br />

Les interfaces génériques<br />

Les méthodes génériques<br />

Les « délégués » génériques<br />

L'héritage et les classes génériques<br />

Les différences par rapport aux « templates » du C++<br />

Les classes génériques de la bibliothèque .NET<br />

Dictionnaire<br />

Liste et liste chaînée<br />

Pile et file d'attentes<br />

Les intérateurs<br />

Intérêts et usages<br />

Syntaxe générale<br />

Itérateurs et types génériques<br />

36<br />

Construction d'applications .NET <strong>avec</strong> C#<br />

Description de la librairie de classes .NET<br />

Redéfinir les méthodes de la classe Objet<br />

Formater les chaînes de caractères et les nombres<br />

Utiliser les flots et les fichiers<br />

Travailler <strong>avec</strong> la sérialisation<br />

Utilisation de ADO .NET pour l'accès aux données<br />

L'architecture ADO .NET<br />

Créer une application qui utilise ADO .NET pour accéder à une<br />

base de données<br />

Utiliser les objets Dataset<br />

Utiliser les contrôles liés aux données<br />

Modifier les enregistrements d'une base de données<br />

Création d'applications évoluées<br />

Créer un menu principal<br />

Créer et utiliser les fenêtres de dialogue usuelles<br />

Créer et utiliser des fenêtres de dialogue personnalisées<br />

Créer et utiliser les barres d'outils<br />

Créer une barre d'état<br />

Imprimer à partir d'une application<br />

Implémenter la fonctionnalité glisser - déplacer<br />

Utilisation des services Web XML dans une application C#<br />

Utiliser un service Web XML<br />

Construire un service Web XML<br />

Création d'une application Web<br />

Créer une feuille Web<br />

Accéder aux données à partir d'une application Web<br />

Configurer ASP .NET<br />

Déploiement d'applications C#<br />

Configurer une application<br />

Déployer une application


Visual Basic .NET<br />

5 jours<br />

Objectifs<br />

Avec cette formation Visual Basic .NET vous allez développer,<br />

installer et maintenir des applications Windows <strong>avec</strong> Visual<br />

Basic .Net.<br />

Participants<br />

Analystes, développeurs d'applications.<br />

Pré-requis<br />

Connaitre un langage de programmation.<br />

Avoir des notions de programmation orienté objet et sur les bases<br />

de données.<br />

Contenu<br />

Introduction à .Net<br />

Périphériques, serveurs, framework.<br />

Les nouveautés du Framework 2.0.<br />

La conception Objet<br />

Classes et instances.<br />

Notions de construction et de destruction.<br />

Héritage et polymorphisme.<br />

T.P. Conception orientée Objet d'une étude de cas.<br />

Les bases de VB .Net<br />

Rappels des points communs <strong>avec</strong> VB6.<br />

Les nouveautés : espace de nom, typage, énumérés, tableaux,<br />

modes de passages de paramètres, méthodes à nombre<br />

d'arguments variable, attributs. T.P. Nombreux exercices mettant<br />

en avant les différences les plus sensibles entre VB6 et VB .Net.<br />

La programmation Objet en VB .Net<br />

Application du modèle Objet <strong>avec</strong> le langage VB.Net.<br />

Classes et objets : notion de méthode.<br />

Code géré et gestion de la mémoire.<br />

Héritage, surcharge et polymorphisme.<br />

Propriétés, indexeurs et énumérateurs.<br />

Les nouveautés de VB.Net.<br />

Utilisation des « Generics ».<br />

T.P. Réalisation des programmes conçus au chapitre "La<br />

conception Objet".<br />

La programmation avancée<br />

Exceptions : gestion centralisée des erreurs, classes d'exception<br />

personnalisées, exceptions non-.Net.<br />

Délégués : délégués et événements, les délégués comme<br />

alternative au polymorphisme.<br />

Structure de l'architecture .Net : assembly, processus, domaine,<br />

support multi-langage en .Net, sécurité.<br />

T.P. Gérer les tests <strong>avec</strong> les exceptions. Réaliser une application<br />

à l'aide de délégués. Mettre en oeuvre l'interaction inter-langages.<br />

Les classes incontournables du framework<br />

Classes mathématiques, structures usuelles, gestion des dates.<br />

Gestion du formatage des chaînes.<br />

Expressions régulières.<br />

Conteneurs classiques : listes, listes triées, piles et tables de<br />

hashage.<br />

T.P. Tirer parti de la puissance du framework .Net pour réaliser<br />

rapidement des applications de gestion.<br />

Les Entrées / Sorties<br />

Notion de flux, FileStream/StreamWriter/StreamReader.<br />

Convertisseurs de formats de texte (Unicode, ANSI, ...).<br />

Gestion des entrées/sorties synchrones/asynchrones, callback<br />

sous forme de délégué.<br />

T.P. Génération d'un index à partir de fichiers texte.<br />

37<br />

Les principes d'ADO.Net<br />

Notion de classe client / classe fournisseur.<br />

DataReader, DataSet.<br />

Liaison de données <strong>avec</strong> le Framework .Net 2.0.<br />

T.P. Mettre en oeuvre une application fenêtrée interrogeant une<br />

base de données via OLE DB ou SQL Server.<br />

Programmation fenêtrée : Windows Forms<br />

Différents types de contrôles, menus contextuels, le pressepapier.<br />

Assemblies de ressources.<br />

Application multi-lingue.<br />

T.P. Gestion des événements des fenêtres et boîtes de dialogue.<br />

Réalisation d'une application multilingue.<br />

Généralisation : les champs d'application de .Net<br />

ASP.Net, les Web Services, DotGNU.


Visual Basic .NET<br />

perfectionnement<br />

5 jours<br />

Objectifs<br />

À la fin de ce cours Visual Basic .NET, les Participants seront à<br />

même d'effectuer les tâches suivantes :<br />

- Créer, remplir organiser des contrôles sur des formulaires<br />

Windows ;<br />

- créer des menus ;<br />

- ajouter du code à un formulaire et contrôler des procédures<br />

événementielles dans une application ;<br />

- créer des applications MDI , utiliser des boîtes de dialogue ;<br />

- créer et utiliser des contrôles utilisateur dans une application ;<br />

- créer des licences pour les contrôles ;<br />

- lier des applications Windows à plusieurs sources de données.<br />

Participants<br />

Ce cours s'adresse aux développeurs<br />

Pré-requis<br />

Le cours suppose que les Participants disposent des<br />

connaissances suivantes :<br />

Connaissances en programmation Visual Basic .NET/C# ;<br />

Expérience en matière de conception d'applications ;<br />

Avoir suivi le cours VS2560—Introduction à la programmation<br />

dans Microsoft Visual Basic .NET ou avoir des connaissances<br />

équivalentes.<br />

Contenu<br />

Présentation de Windows Forms<br />

Création d'un formulaire<br />

Ajout de contrôles à un formulaire<br />

Création d'un formulaire hérité<br />

Organisation de contrôles dans un formulaire<br />

Création d'applications MDI<br />

Travaux Pratiques Création de formulaires Windows<br />

Création d'un nouveau formulaire Windows<br />

Héritage d'un nouveau formulaire à partir d'un formulaire<br />

Windows existant<br />

Utilisation des contrôles<br />

Création d'un gestionnaire d'événements pour un contrôle<br />

Utilisation des contrôles de formulaires Windows<br />

Boîtes de dialogue<br />

Validation des entrées des utilisateurs<br />

Création de contrôles lors de l'exécution<br />

Création de menus Travaux Pratiques Utilisation des contrôles<br />

Création et utilisation de contrôles<br />

Création de contrôles<br />

Options pour la création de contrôles<br />

Ajout de fonctionnalités aux contrôles<br />

Ajout de prise en charge Design-time pour les contrôles<br />

Octroi de licence à un contrôle<br />

Travaux Pratiques Création de contrôles<br />

Déclaration et exécution d'un événement à partir d'un contrôle<br />

étendu<br />

Création d'un contrôle composite<br />

Ajout de prise en charge Design-Time<br />

38<br />

Utilisation des données dans des applications Windows<br />

Forms<br />

Ajout d'objets ADO.NET à une application Windows Forms<br />

Accès aux données et modification des données via des groupes<br />

de données<br />

Liaison de données et de contrôles<br />

Utilisation du contrôle DataGrid<br />

Vue d'ensemble des services Web XML<br />

Création d'un client de services Web XML simple<br />

Travaux Pratiques Accès aux données via ADO.NET<br />

Création, remplissage et persistance de groupes de données<br />

Appel d'un service Web XML<br />

Interopérabilité <strong>avec</strong> des objets COM<br />

Utilisation de composants .NET et COM dans une application<br />

Windows Forms<br />

Appel d'API Win32 à partir d'applications Windows Forms<br />

Travaux Pratiques Interopérabilité <strong>avec</strong> des composants COM et<br />

appel d'API Win32<br />

Utilisation d'un composant COM dans une application .NET<br />

Génération d'états et impression dans des applications<br />

Windows Forms<br />

Création d'états via Crystal Reports<br />

Impression dans une application Windows Forms<br />

Boîtes de dialogue Aperçu avant impression, Mise en page et<br />

Imprimer<br />

Génération du contenu d'impression d'un document via GDI+<br />

Travaux Pratiques Impression de documents formatés<br />

Ajout de l'option d'impression à une application<br />

Création du document imprimé via GDI+<br />

Programmation asynchrone<br />

Modèle de programmation asynchrone .NET<br />

Modèle de conception du modèle de programmation asynchrone<br />

Comment effectuer des appels asynchrones de méthodes<br />

Appels asynchrones d'un service Web XML<br />

Conversion d'appels synchrones en appels asynchrones<br />

Optimisation des applications<br />

Ajout d'options d'accessibilité<br />

Ajout d'aide à une application<br />

Localisation d'une application<br />

Travaux Pratiques Optimisation d'une application<br />

Ajout d'options d'accessibilité<br />

Ajout d'aide à une application<br />

Ajout d'info-bulles à une application<br />

Localisation de l'interface utilisateur d'une application<br />

Localisation des ressources d'une application<br />

Déploiement d'applications Windows Forms<br />

Assemblages .NET<br />

Déploiement d'applications Windows Forms<br />

Travaux Pratiques Déploiement d'une application<br />

Conception et référencement d'un assemblage à nom fort<br />

Installation d'un assemblage à nom fort dans le cache<br />

d'assemblage global<br />

Déploiement d'une application .NET<br />

Utilisation d'un fichier de configuration d'application<br />

Sécurisation d'applications Windows Forms<br />

Sécurité dans l'environnement .NET Framework<br />

Sécurité d'accès par code<br />

Sécurité basée sur des rôles<br />

Travaux Pratiques Ajout et test de requêtes d'autorisation


Visual Basic .NET pour<br />

développeur Visual Basic<br />

5 jours<br />

Objectifs<br />

Ce cours a pour objectif de permettre aux développeurs utilisant<br />

Microsoft Visual Basic d'acquérir les connaissances et les<br />

compétences nécessaires pour développer des applications<br />

Microsoft .NET en utilisant Microsoft Visual Basic .NET version<br />

7.0. Visual Basic .NET constitue une mise à niveau importante de<br />

Visual Basic et comprend de nombreuses nouvelles<br />

fonctionnalités de l'architecture .NET. Ces modifications<br />

permettront aux développeurs Visual Basic de créer des<br />

applications d'<strong>entreprise</strong> pour la plate-forme .NET et des<br />

applications Visual Basic plus traditionnelles qui pourront tirer<br />

profit des améliorations apportées au langage.<br />

Participants<br />

Ce cours s'adresse aux développeurs.<br />

Pré-requis<br />

Pour suivre ce cours, les Participants doivent bien connaître le<br />

langage Visual Basic ‘4.0 ou ultérieur), ils doivent connaître<br />

également les concepts de base du développement orienté objet<br />

et du langage XML (eXtensible Markup Language)<br />

Contenu<br />

Vue d'ensemble de la plate-forme Microsoft .NET<br />

Qu'est-ce que la plate-forme Microsoft .NET?<br />

Qu'est-ce que la structure .NET?<br />

Quels sont les composants de la structure .NET?<br />

Quelles sont les options avancées de Visual Basic .NET?<br />

Fonctionnalités de l'environnement de développement<br />

Description de l'environnement de développement intégré<br />

Création de projets Visual Basic .NET<br />

Utilisation des fonctionnalités de l'environnement de<br />

développement<br />

Débogage des applications<br />

Compilation dans Visual Basic .NET.<br />

Optimisation du langage et de la syntaxe<br />

Types de données<br />

Utilisation des variables<br />

Fonctions, sous-routines et propriétés<br />

Gestion des exceptions<br />

Conception orientée objet pour Visual Basic .NET<br />

Conception de classes<br />

Concepts de programmation orientée objet<br />

Concepts avancés de programmation orientée objet via Microsoft<br />

Visio<br />

39<br />

Programmation orientée objet dans Visual Basic .NET<br />

Définition de classes<br />

Création et destruction d'objets<br />

Héritage<br />

Interfaces<br />

Utilisation des classes<br />

Utilisation de Windows Forms<br />

Pourquoi utiliser Windows Forms ?<br />

Structure de Windows Forms<br />

Utilisation de Windows Forms<br />

Utilisation de contrôles<br />

Héritage Windows Forms<br />

Création d'applications Web<br />

Présentation d'ASP.NET<br />

Création d'applications de formulaire Web<br />

Création de services Web<br />

Utilisation de services Web<br />

Utilisation d'ADO .NET<br />

Vue d'ensemble d'ADO .NET<br />

Fournisseurs de données .NET<br />

Objet DataSet<br />

Concepteurs de données et liaison de données<br />

Intégration XML<br />

<strong>Développement</strong> de composants dans Visual Basic .NET<br />

Vue d'ensemble des composants<br />

Création de composants pris en charge<br />

Création de classes de composants<br />

Création de contrôles Windows Forms<br />

Création de contrôles utilisateur de formulaires Web<br />

Ordonnancement de threads.<br />

Déploiement d'applications<br />

Description des assemblages<br />

Sélection d'une stratégie de déploiement<br />

Déploiement d'applications<br />

Mise à niveau vers Visual Basic .NET<br />

Décision de mise à niveau<br />

Options de mise à niveau<br />

Recommandations<br />

Mise à niveau


Visual Basic .NET <strong>avec</strong><br />

visual studio 2005<br />

5 jours<br />

Objectifs<br />

Visual Basic .NET est la version orientée Objet du standard Visual<br />

Basic. Le passage à la technologie Objet optimise la modélisation<br />

et l'utilisation des technologies ADO et ASP. Ceci permet d'utiliser<br />

les derniers développements de la technologie Internet pour créer<br />

des applications et des sites Web. Cette formation VB .NET de 5<br />

jours répond parfaitement aux attentes des développeurs Visual<br />

Basic qui souhaitent accéder à la technologie Objet <strong>avec</strong> Visual<br />

Basic.<br />

Participants<br />

Développeurs<br />

Pré-requis<br />

Expérience de développement d'applications.<br />

Travaux pratiques<br />

Au cours de cette formation, de nombreux ateliers permettront<br />

aux participants d'acquérir une expérience pratique en Visual<br />

Basic .Net sous Visual Studio 2005<br />

Contenu<br />

Vue d'ensemble de la plate-forme Microsoft .NET<br />

Vue d'ensemble<br />

Présentation de la plate-forme Microsoft .NET<br />

Présentation du .NET Framework<br />

Présentation des composants .NET Framework<br />

Présentation des améliorations de Visual Basic .NET<br />

Fonctionnalités de l'environnement de développement<br />

Vue d'ensemble<br />

Description de l'environnement de développement intégré<br />

Création de projets Visual Basic .NET<br />

Utilisation des fonctionnalités de l'environnement de<br />

développement<br />

Débogage d'applications<br />

Compilation en Visual Basic .NET<br />

Améliorations du langage et de la syntaxe<br />

Vue d'ensemble<br />

Types de données<br />

Les types unsigned<br />

Utilisation de variables<br />

Fonctions, sous-routines et propriétés<br />

L'opérateur IsNot<br />

Les blocks using<br />

Le mot clé continue<br />

Gestion des exceptions<br />

40<br />

Conception orientée Objet pour Visual Basic .NET<br />

Vue d'ensemble<br />

Conception de classes<br />

Application pratique : dérivation de classes à partir de cas<br />

d'utilisation<br />

Concepts de programmation orientée Objet<br />

Concepts avancés de programmation orientée Objet<br />

Utilisation de DSL VS 2005<br />

Programmation orientée Objet dans Visual Basic .NET<br />

Vue d'ensemble<br />

Définition de classes<br />

Création et destruction d'objets<br />

Les classes partielles<br />

Héritage<br />

Interfaces<br />

Utilisation de classes<br />

Les generics<br />

Utilisation de Windows Forms<br />

Vue d'ensemble<br />

Conditions d'utilisation de Windows Forms<br />

Structure de Windows Forms<br />

Utilisation de Windows Forms<br />

Les instances par défaut<br />

Utilisation de contrôles<br />

Présentation des nouveaux contrôles<br />

Héritage Windows Forms<br />

Création d'applications Web<br />

Vue d'ensemble<br />

Introduction à ASP .NET<br />

Création d'applications de formulaire Web<br />

Présentation des nouveaux contrôles<br />

Qu'est ce qu'une page maître ?<br />

Qu'est ce que page contenue ?<br />

Création de services Web<br />

Utilisation de services Web<br />

Présentation multimédia : fonctionnement des services Web<br />

Utilisation d'ADO .NET<br />

Vue d'ensemble<br />

Vue d'ensemble d'ADO .NET<br />

Fournisseurs de données .NET<br />

Objet DataSet<br />

Application pratique : utilisation des objets DataSet<br />

Concepteurs de données et liaison de données<br />

Intégration XML<br />

<strong>Développement</strong> de composants dans Visual Basic .NET<br />

Vue d'ensemble<br />

Vue d'ensemble des composants<br />

Création de composants de service<br />

Création de classes Component<br />

Création de contrôles Windows Forms<br />

Création de contrôles utilisateur Web Forms<br />

Modèle de thread<br />

Déploiement d'applications<br />

Vue d'ensemble<br />

Description des assemblies<br />

Sélection d'une stratégie de déploiement<br />

Déploiement d'applications<br />

Click Once<br />

Mise à niveau vers Visual Basic .NET<br />

Vue d'ensemble<br />

Détermination de la nécessité d'une mise à niveau<br />

Options de mise à niveau<br />

Recommandations<br />

Exécution de la mise à niveau


<strong>Développement</strong><br />

d’applications Web <strong>avec</strong><br />

Visual Studio 2005 et<br />

ASP .NET 2.0<br />

5 jours<br />

Objectifs<br />

Cette formation ASP.NET est dédiée au développement<br />

d'applications Web en environnement Microsoft .Net. Les<br />

développeurs qui participeront à cette formation apprendront à<br />

mettre en oeuvre la technologie ASP .Net 2 .0 afin de créer des<br />

applications structurées selon l'architecture 3-tiers, en sachant<br />

utiliser une base de données ainsi que le format XML.<br />

Participants<br />

Développeurs d'applications qui désirent approfondir certaines<br />

technologies dans le développement d'applications Web<br />

Pré-requis<br />

Maîtrise d’un langage .NET (VB, C#)<br />

Connaissances élémentaires de XML et d'HTML<br />

Travaux pratiques<br />

Les travaux pratiques sont centrés sur les interfaces utilisateur, la<br />

structure du site Web et ses fonctionnalités, et sur des détails de<br />

mise en oeuvre qui exploitent des fonctionnalités avancées d'ASP<br />

.Net 2.0 et de Visual Studio 2005<br />

Contenu<br />

Introduction<br />

<strong>Développement</strong> Web ASP.Net<br />

Composants du framework.Net : CLR, bibliothèque de classes<br />

Visual Studio 2005<br />

L'environnement de développement<br />

Création d'une page Web simple<br />

Génération de l'application<br />

Fichiers de configuration<br />

TP : Réaliser une application ASP.Net sous Visual Studio .Net.<br />

Configuration d'une application Web Programmer une<br />

application Web<br />

Gestion des événements<br />

Passage d'information entre pages<br />

Regroupement des procédures événementielles<br />

Détection des fonctionnalités du navigateur<br />

Gestion d'erreur<br />

Ajout et configuration des contrôles serveurs<br />

Contrôles serveur Web, HTML serveur, Navigation<br />

Modèle Postback des pages ASP.Net<br />

Post à partir d'une autre page TP : Construire une interface<br />

utilisateur. Programmer des contrôles serveur Web.<br />

Pages maîtres, thèmes et personnalisation<br />

Page maître, page de contenu<br />

Personnalisation de thèmes ASP .Net<br />

Profils ASP.Net.<br />

Gestion de l'état dans une application Web<br />

Option de gestion de l'état coté client et serveur<br />

Propriétés Viewstate, ControlState<br />

L'objet Application, Session<br />

L'objet Cache<br />

TP : Mettre en oeuvre la gestion d'état<br />

Accès et affichage des données<br />

Présentation de ADO.Net<br />

Connections aux bases de données et fichier Web.Config<br />

Données relationnelles, données XML, et contrôles DataSource<br />

Utilisation en mode non connecté<br />

Génération de datasets typés<br />

Architecture du « Simple Data Binding »<br />

Architecture du « Complex Data Binding »<br />

Liaison de données <strong>avec</strong> le Framework .Net 3.0/3.5 : LINQ to<br />

ADO et LINQ to SQL<br />

41<br />

Introduction aux Services Web XML<br />

Appel d'un service Web XML à l'aide de http<br />

Utilisation d'un proxy pour appeler un service Web XMLTP :<br />

Développer un Web Service<br />

Mise à jour des données<br />

Requête et mise à jour d'une base de données<br />

Réaliser des opérations déconnectées<br />

TP : Accèder aux données<br />

Contrôle de l'accès aux applications Web<br />

Authentification et autorisation dans les applications Web<br />

Système d'adhésion à un site en utilisant Membership<br />

Administration de la sécurité<br />

Déploiement d'une application Web<br />

Publication de site Web<br />

Package d'installation


Visual Studio 2008,<br />

concevoir et développer<br />

des applications <strong>avec</strong> le<br />

framework .net 3.5<br />

5 jours<br />

Objectifs<br />

Cette formation Visual studio 2008 présente l’intérêt et l’usage<br />

des nouveautés de l’infrastructure .NET 3.5 et de Visual Studio<br />

2008 et permet d’acquérir les connaissances en matière de<br />

conception d’applications distribuées <strong>avec</strong> .NET 3.5.<br />

Participants<br />

Architectes, développeurs<br />

Pré-requis<br />

Bonnes connaissances d'un langage .NET (VB ou C#)<br />

Contenu<br />

Technologie .NET : présentation<br />

Pourquoi .NET ?<br />

Fondement du framework .NET<br />

Les différentes versions du Framework<br />

Conception et développement <strong>avec</strong> la technologie .NET 3.5<br />

Les fondements du CLR<br />

CLS et CTS<br />

Les assemblages<br />

Signature et GAC<br />

Utilisation de la bibliothèque de classes .NET<br />

Les Espaces de Nom (Namespaces)<br />

Langages . NET<br />

Les différents langages<br />

Microsoft Intermediate Langage<br />

L’essentiel du C# 3.0<br />

L’essentiel de VB .NET 9.0 (2008)<br />

Outils de développement Visual Studio 2008<br />

Création de Projets<br />

Compilation et Débogage<br />

Outils tierces<br />

Présentation du développement d’applications Windows<br />

FormsArchitecture et développement de clients riches<br />

Les contrôles Windows<br />

Les données dans une application Windows<br />

La liaison des données et l’IHM<br />

La gestion multi langue et les ressources<br />

Installation <strong>avec</strong> « ClickOnce »<br />

Sync Framework<br />

<strong>Développement</strong> à base de Composants<br />

Présentation de Web Services<br />

Le Remoting<br />

Introduction à WCF<br />

Accès aux données <strong>avec</strong> ADO. NET<br />

Introduction à ADO.NET<br />

Modes connecté et déconnecté<br />

Accès à une base de données<br />

Interaction SQL Server – ADO.NET<br />

Introduction à LINQ<br />

Présentation de LINQ<br />

LINQ to SQL<br />

Présentation du développement de clients web <strong>avec</strong> Visual<br />

Studio 2008<br />

Le développement d’applications Web<br />

Du HTML à ASP .NET<br />

Le rôle de IIS<br />

Le rôle d’ASP .NET<br />

Le modèle de compilation d’ASP .NET<br />

Le modèle d’exécution d’ASP .NET<br />

42


ASP.net 3.5, pour<br />

développeur ASP.net 2.0<br />

2 jours<br />

Objectifs<br />

La productivité des équipes de développement reste au coeur des<br />

préoccupations des DSI. En réponse à cette problématique,<br />

Microsoft franchit une nouvelle étape <strong>avec</strong> Visual Studio 2008 qui<br />

permet de créer des applications Internet plus riches <strong>avec</strong><br />

SilverLight, qui simplifie l'utilisation des CSS et d'AJAX et qui<br />

renforce la prise en charge des applications pour les mobiles. Au<br />

cours de cette formation ASP .NET 3.5, les participants<br />

découvriront comment développer une application web<br />

dynamique <strong>avec</strong> Visual Studio 2008.<br />

Cette formation ASP .NET 3.5 vous permettra de:<br />

- Acquérir les compétences pour créer des applications web<br />

dynamiques<br />

- Acquérir les connaissances pour configurer et déployer des<br />

applications web ASP .Net 3.5<br />

- Savoir mettre en oeuvre Ajax <strong>avec</strong> ASP .Net<br />

- Savoir mettre en oeuvre des pages et contrôles s'adaptant au<br />

monde de la mobilité<br />

Participants<br />

Développeurs web expérimentés travaillant sur le framework 2.0<br />

Pré-requis<br />

Maîtriser un langage .Net (C# ou VB)<br />

Avoir suivi le stage SDAV : "Visual Studio 2005 - Développer des<br />

applications Web ASP .Net 2.0" ou connaissances équivalentes<br />

Maîtrise de la programmation orientée objet, des Web Services et<br />

de Visual Studio<br />

Travaux pratiques<br />

Les différents travaux pratiques proposés durant cette formation<br />

vous permettront de :<br />

- prendre en main rapidement le nouvel environnement Visual<br />

Studio 2008<br />

- se familiariser <strong>avec</strong> les nouveaux Wizards et outils<br />

- apprendre à développer <strong>avec</strong> le framework 3.5<br />

Contenu<br />

Introduction à ASP .Net 3.5<br />

Structure d'une application ASP .Net 3.5<br />

Caractéristiques d'ASP .Net 3.5<br />

Configurer des applications ASP .Net<br />

Consommer et créer des contrôles serveur ASP .Net<br />

Consommation de contrôles dans les pages web<br />

Création de "Custom Controls"<br />

Afficher et manipuler des données dans ASP .Net 3.5<br />

Accéder aux données en utilisant ADO .Net 3.5<br />

Accéder aux données venant de services<br />

Affichage de données dans les contrôles ASP .Net<br />

Améliorer la réactivité des pages ASP .Net<br />

Création de mise à jour partielle <strong>avec</strong> Ajax<br />

Les scripts d'action côté client<br />

Créer des applications mobiles en ASP .Net<br />

Le rendu des pages en fonction des capacités de la cible mobile<br />

Les contrôles Web pour mobile<br />

Débugger et déployer des applications ASP .Net<br />

Dépannage et débogage d'applications ASP .Net<br />

Déploiement d'applications ASP .Net<br />

43


ASP.NET 3.5, développer<br />

des applications WEB <strong>avec</strong><br />

Visual Studio 2008<br />

5 jours<br />

Objectifs<br />

Le monde du développement semble aujourd'hui s'orienter<br />

principalement vers la création d'applications Web qui offrent de<br />

réels avantages en termes de facilité de déploiement et<br />

permettent de fournir aux utilisateurs des interfaces maintenant<br />

plus riches que par le passé. Au cours de cette formation ASP<br />

.NET 3.5 destinée aux nouveaux développeurs .Net, les<br />

participants apprendront à utiliser Visual Studio 2008 pour<br />

développer des applications web structurées selon l'architecture<br />

3-tiers <strong>avec</strong> ASP .Net 3.5.<br />

Cette formation ASP .NET 3.5 vous permettra de:<br />

- Développer une application web<br />

- Maîtriser la technologie ASP .Net<br />

- Comprendre l'interchangeabilité du langage de développement<br />

de la plate-forme .Net : C# ou VB .Net<br />

- Savoir structurer une application 3 tiers<br />

Participants<br />

- Développeurs Web débutants<br />

- Développeurs ASP<br />

- Programmeurs Visual Basic<br />

Pré-requis<br />

- Connaissance HTML ou DHTML, scripting VB et ou JScript /<br />

<strong>Java</strong>Script<br />

- Maîtriser un langage .Net (C# ou VB .Net)<br />

- Maîtrise de la programmation orientée objet et de Visual Studio<br />

Travaux pratiques<br />

Les exercices proposés pendant la formation ASP .NET 3.5<br />

amèneront les participants à mettre concrètement en oeuvre la<br />

technologie ASP .NET 3.5 pour créer des applications Web<br />

structurées.<br />

Contenu<br />

Le framework Microsoft .Net<br />

Introduction au framework .Net<br />

Introduction à ASP .Net<br />

Créer des applications web (ASP.NET) <strong>avec</strong> Visual Studio<br />

2008Présentation de Visual Studio 2008<br />

Création d'applications web ASP .Net<br />

Présentation des langages .Net<br />

Création d'un composant en utilisant Visual Studio 2008<br />

Créer un formulaire Web ASP .Net<br />

Création d'un formulaire<br />

Ajouter un control server<br />

Création de master pages<br />

Ajouter du code à une web form<br />

Implémentation du code behind<br />

Ajout d'évènements dans les contrôles web server<br />

Envoi d'évènements<br />

44<br />

Gérer des traces dans les applications web ASP .Net<br />

Tracer et les objets de trace<br />

Débogage à distance<br />

Valider des entrées utilisateurs<br />

Introduction à la validation des contrôles utilisateurs<br />

Validation des contrôles<br />

Validation des pages<br />

Créer et implémenter des contrôles utilisateurs<br />

Ajout des contrôles utilisateurs web ASP .Net<br />

Création de User Controls<br />

Accéder aux données <strong>avec</strong> ADO .Net et Visual Studio 2008<br />

Introduction à ADO .Net<br />

Connexion à la base de données<br />

Accéder aux données<br />

Accéder à de multiples tables<br />

Définir et utiliser des tâches complexes d'accès aux données<br />

Introduction sur les procédures stockées<br />

Appel aux procédures stockées<br />

Accès aux données <strong>avec</strong> LINQ to SQL<br />

Lire et écrire des données XML<br />

Introduction à XML dans une architecture ASP .Net<br />

XML et les Dataset<br />

Manager les données XML<br />

Accéder aux données XML en utilisant le contrôle serveur XML<br />

Créer une application Ajax<br />

Introduction à ASP .Net Ajax<br />

Création d'une application ASP .Net Ajax en utilisant les<br />

extensions ASP .Net Ajax<br />

Étendre une application en utilisant ASP .Net<br />

Ajax Control Toolkit<br />

Créer des contenus dynamiques <strong>avec</strong> Microsoft Silverlight<br />

Introduction à Microsoft Silverlight<br />

Création d'une application Silverlight <strong>avec</strong> Visual Studio 2008<br />

Créer et consommer des Services Web XML<br />

Introduction aux Services Web XML<br />

Appel de Services Web XML<br />

Création d'un Service Web XML<br />

Manager les états<br />

Les états<br />

Variables d'applications et de sessions<br />

Cookies et cookieless sessions<br />

Configurer, optimiser et déployer des applications Web<br />

ASP .Net<br />

Implémentation de l'objet cache<br />

ASP .Net Output Caching<br />

Configuration d'une application ASP .Net<br />

Déploiement d'une application ASP .Net<br />

Sécuriser une application web ASP .Net<br />

Introduction à la sécurité des applications web<br />

Authentification Windows Based<br />

Authentification Forms Based


Visual Studio 2008 et C#<br />

3.0 : <strong>Développement</strong><br />

d'applications Windows<br />

Forms<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Visual Studio 2008 permet d’acquérir les<br />

compétences et les connaissances nécessaires au<br />

développement d’applications Winforms <strong>avec</strong> Visual Studio 2008<br />

et C# 3.0.<br />

A la fin de cette formation Visual Studio 2008, vous serez capable<br />

de :<br />

- utiliser Visual Studio 2008 pour créer des applications Winforms<br />

- créer des contrôles et des composants réutilisables<br />

- mettre en place une programmation objet C# dans vos<br />

applications .NET afin d’optimiser vos développements et vos<br />

évolutions<br />

- créer des applications multilingues et configurables<br />

- accéder à des données relationnelles et XML<br />

- mettre en place des technologies d’installation évoluées<br />

(Windows installer et Click Once)<br />

Participants<br />

Cette formation Visual Studio 2008 s’adresse à des développeurs<br />

désireux de maitriser les fondements de la programmation<br />

d’applications Winforms 3.5<br />

Pré-requis<br />

Connaissance d’un langage de programmation type C/C++, VB 6,<br />

<strong>Java</strong>, etc.<br />

Contenu<br />

Introduction au framework .NET<br />

Motivations pour .NET<br />

Fondements du framework .NET<br />

Les assemblages<br />

Les langages<br />

Présentation du langage C#<br />

Introduction au langage C#<br />

Utilisation des variables simples<br />

Utilisation des instructions<br />

Utilisation des tableaux<br />

Programmation Orientée Objet<br />

Introduction à la programmation objet<br />

Mise en place de l'héritage en C#<br />

Utilisation du polymorphisme<br />

Introduction aux évènements et aux délégués<br />

Gestion des Erreurs et Exceptions<br />

Utilisation des structures Try/Catch<br />

Utilisation de la classe Exception<br />

Fonctionnalités évoluées du langage C# 3.0<br />

Utilisation des classes partielles, des generics et des indexeurs<br />

Utilisation de l'Interface IDispose<br />

Utilisation de types anonymes<br />

Principales APIs du Framework 3.0<br />

Collections<br />

Text et expressions régulières<br />

Entrées sorties<br />

Réseaux<br />

Multithreading<br />

Les Formulaires et les contrôles 1/2<br />

Création de formulaires Winforms 3.0<br />

Utilisation des contrôles<br />

Revue des principaux contrôles disponibles<br />

Les Formulaires et les contrôles 2/2<br />

Création de formulaires hérités<br />

Création de contrôles personnalisés<br />

Création de contrôles utilisateurs<br />

45<br />

Introduction à LINQ<br />

Présentation de LINQ<br />

Utilisation de LINQ to SQL<br />

Introduction à « Client Application Services »<br />

Présentation de « Client Application Services »<br />

Utilisation du service d’authentification<br />

Configuration et Déploiement<br />

Configuration de l'application<br />

Mise en place d'un paramétrage utilisateur<br />

Régionalisation d'une application Winforms<br />

Utilisation de Windows Installer<br />

Utilisation de ClickOnce


WPF, Développer des<br />

applications graphiques<br />

<strong>avec</strong> Visual Studio<br />

Durée 3 jours<br />

Objectifs<br />

Bien que les tendances actuelles semblent montrer une<br />

orientation forte vers le développement d'applications web,<br />

certaines organisations, pour répondre à des contraintes<br />

techniques ou fonctionnelles, font le choix du développement<br />

d'applications Windows. Pour accompagner les évolutions<br />

techniques proposées par Windows Vista, Microsoft a intégré à<br />

Visual Studio 2008 une évolution majeure dans le domaine du<br />

design d'interfaces : Windows Presentation Foundation (WPF).<br />

Les participants découvriront comment utiliser WPF pour<br />

implémenter des interfaces graphiques utilisateur évoluées.<br />

Cette formation WPF vous permettra de:<br />

- Être capable de créer des interfaces utilisateur WPF utilisant les<br />

capacités graphiques de Windows Vista<br />

- Apprendre à utiliser le nouveau langage déclaratif XAML, utilisé<br />

pour le développement d'interfaces Windows Vista<br />

- Être en mesure de configurer et déployer des applications WPF<br />

Participants<br />

- Développeurs expérimentés travaillant sur le framework .Net<br />

Pré-requis<br />

- Bonnes connaissances de C# ou VB.net, Visual Studio.<br />

- Connaître le framework .net 1.1 ou 2.0<br />

Travaux pratiques<br />

Cette formation WPF permet aux développeurs expérimentés<br />

d'applications Windows de réaliser de bout en bout une<br />

application "fil rouge" (durant les 3 jours). Ils seront donc amenés<br />

à mettre en pratique toutes les fonctionnalités de l'environnement<br />

Visual Studio 2008 pour créer une application WPF.<br />

Contenu<br />

Créer des applications WPF<br />

Introduction à WPF<br />

Création d'application simple WPF<br />

Gestion des évènements<br />

Navigation entre pages<br />

Créer des interfaces utilisateur<br />

Définition d'un Layout de page<br />

Ajouter des contrôles conteneurs<br />

Utiliser les contrôles WPF et Winform<br />

Personnaliser l'apparence<br />

Gestion des ressources dans les applications<br />

Utilisation des styles<br />

Utilisation des template de contrôles<br />

Utilisation des animations et triggers<br />

Le DataBinding<br />

Rappel sur le DataBiding<br />

Création de DataBiding<br />

Implémentation des notifications de changement de propriété<br />

Conversion et validation des données<br />

DataBiding de Collections<br />

Biding de Collections d'Objets<br />

Création d'interface Master Détail<br />

Utilisation de template de données<br />

Créer de nouveaux contrôles<br />

Introduction sur les contrôles<br />

Création de contrôles utilisateurs<br />

Création de custom control<br />

46<br />

Manager les documents<br />

Travailler <strong>avec</strong> les documents fixes<br />

Travailler <strong>avec</strong> les documents flottants<br />

Packaging de documents<br />

Impression de documents<br />

Graphique et multimédia<br />

Affichage et création de graphique 2D<br />

Affichage d'images<br />

Affichage et création de graphique 3D<br />

Support du multimédia<br />

Configurer et déployer des applications WPF<br />

Option de déploiement<br />

Déploiement d'une application WPF Standalone<br />

Déploiement d'une application XPAB<br />

Configuration des options de sécurité


Silverlight prise en main<br />

Durée 2 jours<br />

Objectifs<br />

Présenté comme le concurrent direct de Flash, Silverlight est la<br />

nouvelle technologie Microsoft en vogue pour développer des RIA<br />

(Rich Internet Applications). Orienté multimédia, cette technologie<br />

multi navigateurs et multi plates-formes permet de développer,<br />

très simplement, des applications proposant des fonctionnalités<br />

interactives et vidéos.<br />

Cette formation Silverlight vous présente la technologie Silverlight<br />

2.<br />

Participants<br />

Développeurs<br />

Pré-requis<br />

connaissances en C#/.NET et idéalement en WPF et LINQ<br />

Contenu<br />

Présentation de Silverlight et du XAML<br />

Présentation des RIA : Avantages, inconvénients, etc.<br />

Qu'est-ce que Silverlight ?<br />

Architecture de Silverlight<br />

Les évolutions futures : support de Windows Mobile, des OS<br />

Symbian, etc.<br />

Les différentes versions : Silverlight 1.0 et Silverlight 2<br />

Pourquoi 2 versions de Silverlight ?<br />

Les pré-requis nécessaires<br />

Comparaison entre WPF et Silverlight<br />

Le XAML<br />

Qu'est ce que le XAML ?<br />

Quels sont ses avantages ?<br />

Créer une interface simple<br />

Les contrôles de contenu<br />

Les contrôles conteneur<br />

Les contrôles d'affichage de texte<br />

Les autres contrôles<br />

Gestion du positionnement des contrôles<br />

Le Canvas<br />

Le StackPanel<br />

La Grid<br />

Etendre votre interface<br />

Silverlight 2 et la communication réseau Exécution d'une requête<br />

Web (HttpWebRequest/WebClient)<br />

Ecriture et consommation de Web Services (WCF)Manipuler du<br />

XML <strong>avec</strong> Silverlight<br />

Les styles<br />

Le DataBinding<br />

Aller plus loin <strong>avec</strong> son interface (silverlight)<br />

Les User Controls<br />

Les Templates<br />

Animations<br />

Transformations<br />

Gestion du multimédia (silverlight)<br />

L'objet MediaElement<br />

Contrôler le MediaElement par code<br />

Gestion des Timeline/Markers<br />

47


Silverlight<br />

perfectionnement<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Silverlight permet aux participants d'approfondir<br />

leurs connaissances de Silverlight, afin de développer des<br />

applications Silverlight complètes et performantes. Ce stage est<br />

la suite de la formation réf. SSPM - Silverlight prise en main.<br />

Participants<br />

Développeurs d'applications<br />

Pré-requis<br />

Pour tirer le meilleur parti de cette formation silverlight, il convient<br />

de :<br />

- posséder des connaissances en développement<br />

d'applications .NET<br />

- avoir suivi la formation SSPM - Silverlight prise en main ou<br />

posséder les connaissances équivalente à cette formation<br />

Contenu<br />

Tour d'horizon de Silverlight 1.0<br />

Les outils nécessaires<br />

La méthode findName<br />

La méthode createFromXaml<br />

Interaction DOM HTML et <strong>Java</strong>script<br />

La gestion des évènements<br />

Quand utiliser Silverlight 1.0 ?<br />

(Migration ASP.NET => Silvelight; Intégration d'une petite partie<br />

de SL type bannière, etc.)<br />

Introduction à Silverlight 2<br />

Introduction à C# 3 et aux Generics<br />

Aperçu des classes disponibles<br />

Introduction à LINQ To Object et LINQ To XML<br />

Les principes de WPF appliqués à Silverlight<br />

Les DependencyProperty<br />

Les évènements routés (Routed Events)<br />

Gestion du multimédia (Silverlight 2)<br />

L'objet MediaElement<br />

Contrôler le MediaElement par code<br />

Gestion des Timeline/Markers<br />

Création de contrôles personnalisés (Silverlight 2)<br />

Définition de l'interface graphique<br />

Implémentation des fonctionnalités<br />

Ajout et déclenchements d'évènements<br />

Interaction DOM/Code Managé<br />

Interop Silverlight 2 / WPF<br />

La sécurité (Silverlight 2)<br />

Le bac à sable (« Sandbox »)<br />

Isolated Storage<br />

FileUpload & OpenFileDialog<br />

Exécution de tâches asynchrones<br />

Le BackgroundWorker<br />

Silverlight et les langages dynamiques<br />

La « Dynamic Language Runtime »<br />

Comment développer une application Silverlight en utilisant un<br />

langage dynamique ?<br />

48


WCF, Développer des<br />

applications distribuées<br />

<strong>avec</strong> Visual Studio 8<br />

(Windows Communication<br />

Foundation)<br />

Durée 3 jours<br />

Objectifs<br />

Apparues il y a quelques années, les architectures distribuées,<br />

également appelées SOA (applications orientées services), font<br />

l'objet d'un intérêt croissant de la part des éditeurs et des<br />

<strong>entreprise</strong>s, notamment au regard de leurs apports en termes de<br />

flexibilité et de réactivité du SI. Le nouveau Framework .Net 3.5<br />

met l'accent sur la simplification d'utilisation de ses briques, donc<br />

sur la rapidité de mise en oeuvre et l'implémentation de solutions<br />

distribuées. Destiné à un public expérimenté, ce programme<br />

constitue un complément idéal aux compétences traditionnelles<br />

d'un développeur .Net.<br />

Cette formation WCF vous permettra de:<br />

- Acquérir les compétences de création de service WCF<br />

- Acquérir les compétences de déploiement de service WCF<br />

- Acquérir les connaissances autour de la configuration et de la<br />

sécurisation des services WCF<br />

- Acquérir les compétences de mise en place de service WCF<br />

transactionnel<br />

Participants<br />

- Développeurs expérimentés travaillant sur le Framework .Net<br />

2.0 et ayant des connaissances sur les Web Services<br />

Pré-requis<br />

- Bonnes connaissances de C# ou VB.net dans l'environnement<br />

Visual Studio<br />

- Bonnes connaissances du framework .Net 2.0 et des web<br />

services.<br />

Travaux pratiques<br />

Cette formation WCF permet aux développeurs expérimentés<br />

d'applications Windows de réaliser de bout en bout une<br />

application "fil rouge" (durant les 3 jours). Ils seront donc amenés<br />

à mettre en pratique toutes les fonctionnalités de l'environnement<br />

Visual Studio 2008 pour créer une application WCF.<br />

Contenu<br />

Introduction à Windows Communication Foundation<br />

Architecture d'applications SOA pour WCF<br />

Introduction à l'architecture de WCF<br />

Création de service WCF <strong>avec</strong> Visual Studio 2008<br />

Consommation de service WCF <strong>avec</strong> Visual Studio 2008<br />

Configurer et héberger des services WCF<br />

Programmation d'une application hôte de service WCF<br />

Définition et paramètres de service en utilisant un fichier externe<br />

de configuration<br />

Déploiement de service<br />

Définir les points d'entrée et comportement<br />

Exposer plusieurs points d'entrée d'un service WCF<br />

Ajouter des comportements à un service et à un point d'entrée<br />

49<br />

Débugger et diagnostiquer des problèmes<br />

Message de log<br />

Traçage d'activités<br />

Implémenter et concevoir des contrats<br />

Design de contrat de service WCF<br />

Définition d'opérations pour un service<br />

Définition des data dans un contrat<br />

Gérer les erreurs<br />

Service level fault<br />

Définition des "fault information" dans un contrat de service<br />

Renvoi des exceptions de service au client<br />

Améliorer la qualité des services WCF<br />

Manager les instances des services WCF<br />

Les accès concurrents<br />

Améliorer les performances des services WCF<br />

Implémenter la sécurité WCF<br />

Introduction sur la sécurité dans WCF<br />

Les exigences de sécurité s'appliquant au Biding<br />

Travailler <strong>avec</strong> les informations de sécurité<br />

Implémenter les transactions<br />

Introduction sur les transactions<br />

Création d'opérations transactionnelles pour les services<br />

Mettre en place un flux de transactions du client vers le service


WF, Développer des<br />

applications Workflow<br />

Foundation <strong>avec</strong> Visual<br />

Studio 8<br />

Durée 2 jours<br />

Objectifs<br />

L'évolution des attentes relatives aux applications informatiques<br />

mène de plus en plus de développeurs à devoir intégrer des<br />

workflows dans leurs applications pour, par exemple, informer<br />

des managers ou utilisateurs d'une modification de données, ou<br />

encore pour soumettre une modification de contenu à<br />

l'approbation d'un responsable. Avec l'intégration de Windows<br />

Worflow Foundation dans Visual Studio 2008, il est dorénavant<br />

possible d'enrichir les applications de tels dispositifs. L'objectif de<br />

cette formation WF est de vous familiariser <strong>avec</strong> le modèle de<br />

développement de WF.<br />

Cette formation WF vous permettra de:<br />

- Comprendre la notion de Worflow et identifier les cas<br />

d'application<br />

- Installer, configurer et déployer Worflow Foundation<br />

- Intégrer Workflow Foundation dans le développement d'une<br />

application<br />

- Développer des Worflows séquentiels ou des automates à état<br />

Participants<br />

Développeurs et responsables de projets devant mettre en<br />

oeuvre des applications faisant appel à des workflows<br />

Pré-requis<br />

Connaissances du framework .net et pratique du langage C# ou<br />

VB.net<br />

Travaux pratiques<br />

Cette formation WF permet aux développeurs expérimentés<br />

d'applications Windows de réaliser de bout en bout une<br />

application "fil rouge" (durant les 2 jours). Ils seront donc amenés<br />

à mettre en pratique toutes les fonctionnalités de l'environnement<br />

Visual Studio 2008 pour créer une application WF.<br />

Contenu<br />

Créer et héberger des Worflows<br />

Introduction à Windows Worflow Foundation<br />

Création d'un Worflow séquentiel<br />

Création d'un Workflow "State Machine"<br />

Modification d'un Workflow au runtime<br />

Appliquer des règles et conditions<br />

Implémentation des branchements conditionnels<br />

Définition et exécution des jeux de règles<br />

Transfert de chaînage de règles<br />

Modification de règles au runtime<br />

Communiquer <strong>avec</strong> le Worflow<br />

Appel de méthode dans un processus hébergé<br />

Gestion des évènements dans un processus hébergé<br />

Consommation d'un service depuis un Workflow<br />

Publication d'un workflow sous forme de service<br />

Créer et configurer une activité personnalisée<br />

Création d'activités personnalisées<br />

Création d'une activité personnalisée composite<br />

Personnaliser la sérialisation d'une activité<br />

Créer et manager un service runtime<br />

Création d'un service runtime personnalisé<br />

Surveillance des workflows<br />

Suivi d'un service<br />

50<br />

Manager les erreurs, annulations, transactions et<br />

compensations<br />

Gestion des erreurs<br />

Gestion des annulations<br />

Gestion des transactions<br />

Gestion des compensations


LINQ et ADO.net pour<br />

gérer les données sous le<br />

framework 3.5<br />

Durée 2 jours<br />

Objectifs<br />

La majorité des applications d'<strong>entreprise</strong> actuelles doit pouvoir<br />

accéder à un volume important de données de nature<br />

hétérogènes afin d'en permettre l'accès aux utilisateurs. C'est<br />

pourquoi, en complément des compétences traditionnelles<br />

nécessaires aux développements d'applications web ou<br />

Windows, les développeurs doivent aujourd'hui maîtriser les<br />

briques ADO du Framework .Net garantissant un accès de qualité<br />

aux données, qu'elles soient stockées dans des bases de<br />

données, ou qu'elles proviennent de sources XML. Les<br />

participants à cette formation LINQ apprendront à utiliser ADO<br />

.Net 3.5.<br />

Cette formation LINQ vous permettra de:<br />

- Savoir se connecter à une base de données<br />

- Exécuter des requêtes via un objet de commande<br />

- UtiliserLINQ<br />

- Savoir faire des requêtes LINQ<br />

- Découvrir le "entity framework"<br />

Participants<br />

Développeurs expérimentés travaillant sur le framework .Net 2.0<br />

ayant des connaissances sur les Web Services<br />

Pré-requis<br />

Connaissances du framework .net et pratique du langage C#<br />

ou .net<br />

Contenu<br />

Introduction à ADO .Net 3.5<br />

La structure d'ADO .Net 3.5<br />

Connexion aux bases de données et récupération de données<br />

Les bonnes pratiques pour manager les connexions et faire des<br />

requêtes performantes<br />

Modifier des données en utilisant ADO .Net<br />

Insertion, modification et suppression de données<br />

Manager l'intégrité des données et les accès concurrents<br />

Utiliser un Dataset pour manipuler des données<br />

Création et utilisation d'un Dataset pour récupérer des données<br />

Mise à jour de base de données en utilisant un Dataset<br />

Utilisation occasionnelle d'un Dataset en mode connecté<br />

Utiliser DLINQ pour manipuler les données<br />

Utilisation de LINQ Query Expressions pour requêter en mémoire<br />

Utilisation de DLINQ pour récupérer les données<br />

Utilisation de DLINQ pour modifier les données<br />

Utiliser des services de synchronisation<br />

Comprendre Microsoft Synchronisation Services<br />

Downloader des données <strong>avec</strong> les services de synchronisation<br />

Uploader des données <strong>avec</strong> les services de synchronisation<br />

Implémenter "Entity Model" en utilisant l'Entity Framework<br />

d'ADO .NetCréation d'un "Entity Model" en utilisant ADO .Net<br />

Entity Framework<br />

51


La plate-forme <strong>J2EE</strong><br />

Durée 1 jour<br />

Objectifs<br />

Ce séminaire fournit une présentation concise mais exhaustive de<br />

la plateforme <strong>J2EE</strong>. Elle commence par expliciter les concepts<br />

fondateurs de cette spécification afin de clairement appréhender<br />

ses finalités. Ensuite, les technologies principales sont présentées<br />

en insistant sur les problématiques résolues, les cas d'utilisation<br />

et le panorama des offres du marché.<br />

À l’issue de cette journée de présentation, les participants seront<br />

capables de se repérer dans cette nébuleuse de standards et<br />

d'acronymes.<br />

Contenu<br />

Introduction<br />

<strong>J2EE</strong> : une spécification des implémentations, domaine<br />

d'application, l'aspect distribué et transactionnel<br />

Les finalités et les apports de <strong>J2EE</strong>, évolutivité des applications,<br />

portabilité, montée en charge, sûreté de fonctionnement,<br />

indépendance vis-à-vis des éditeurs, ...<br />

L'approche composant à toutes les étapes de production et<br />

d'exploitation des applications<br />

L'architecture n-tiers, description des différents tiers et des<br />

composants associés<br />

La notion de conteneurs, leurs rôles, leurs services<br />

Types de containers (Servlet, EJB, etc.), panorama de l'offre<br />

Le rôle particulier des web services, infrastructure disponible dans<br />

<strong>J2EE</strong><br />

Le packaging d'application, structure d'une archive .ear<br />

Les différents rôles dans le développement d'une application<br />

<strong>J2EE</strong>: Editeur de plate-forme, Développeurs de composants,<br />

assembleur, Déploiement et exploitation<br />

Définition des technologies et APIs disponibles : EJB, Servlet,<br />

JSP, JDBC, JMS, JNDI, JAAS, JAXP, ...<br />

Les applications Web<br />

Classification des applications : orientées présentation ou service,<br />

Modèle requête/réponse, rappels sur le protocole HTTP, cycle de<br />

vie d'une application web.<br />

Définition d'un module web, packaging, déploiement, mise à jour<br />

Configuration d'une application : mapping des URLs, paramètres<br />

d'initialisation, mapping des erreurs, déclaration des ressources<br />

Connections aux ressources, présentation de JNDI, JDBC, notion<br />

de DataSource et de pool de connections<br />

Le cas des bases de données, les connections à un serveur de<br />

mail ou une URL<br />

Les servlets<br />

Définition d'une servlet, technologie au cœur de <strong>J2EE</strong><br />

Cycle de vie d'une servlet, gestion des évènements, des erreurs<br />

Partage d'information et notion de périmètre (requête, session,<br />

etc.)<br />

Implémenter les services du servlet, récupération de paramètre,<br />

construction de réponse<br />

Les filtres de requête ou de réponses, propagation de requête,<br />

délégation<br />

Gestion de session utilisateur, <strong>avec</strong> ou sans cookies<br />

Panorama des conteneurs de servlet<br />

<strong>Java</strong> Server Page et JSF<br />

Pourquoi JSP ? Définition et exemple d'une page JSP<br />

Cycle de vie d'une page JSP<br />

Eléments de syntaxe, notion de scriptlet<br />

Définition d'un <strong>Java</strong>Bean, utilisation par une page JSP.<br />

Utilisation de librairies de balises, les librairies les plus communes<br />

(Struts, JSTL)<br />

Documents JSP: définition et apports. Panorama des<br />

compilateurs de JSP<br />

La spécification JSF, ses apports<br />

Modèle des composants d'interface<br />

Implémentation Apache MyFaces, Shale<br />

52<br />

Les EJBs<br />

Définition d'un Enterprise Bean, apport et cas d'utilisation, les<br />

différents types et leurs cas d'utilisation<br />

Client local et client distant, définition des interfaces pour les<br />

accès<br />

Cycle de vie des différents types d'EJB<br />

Etapes de développement d'un EJB et de son client, packaging et<br />

particularités de déploiement<br />

Les apports de EJB 3<br />

Les transactions, gestion des transactions par le conteneur ou par<br />

le bean, timeout, niveau d'isolation, mise à jour de plusieurs bases<br />

de données<br />

Panorama des conteneurs d'EJB<br />

Les Web Services<br />

Définition et cas d'utilisation<br />

Le format XML, Le protocole SOAP, Les formats WSDL et UDDI<br />

Construire des services Web <strong>avec</strong> JAX-RPC<br />

L'API SOAP pour <strong>Java</strong><br />

Le projet Axis<br />

La sécurité dans <strong>J2EE</strong><br />

La sécurité dans une application web, notions de royaume,<br />

groupe et utilisateurs<br />

L'authentification, les différents types disponibles, l'API JAAS<br />

Le support pour SSL, les certificats<br />

Sécurité et web services<br />

Implémenter la sécurité au niveau des EJBs


Développer un projet <strong>Java</strong><br />

EE5 <strong>avec</strong> l'offre Open<br />

Source<br />

Durée 2 jours<br />

Objectifs<br />

Ce séminaire a pour objectif de présenter l’offre Open Source<br />

dans tous les aspects du développement <strong>J2EE</strong>. Il permet aux<br />

stagiaires d’appréhender chaque offre et d’en comprendre son<br />

utilisation dans le développement d’application <strong>Java</strong> EE 5.<br />

Participants<br />

Ce cours s’adresse aux chefs de projet architectes ou DSI<br />

étudiant les alternatives du logiciel libre pour le développement<br />

d’application Web <strong>avec</strong> <strong>Java</strong>.<br />

Contenu<br />

Introduction<br />

Le modèle du libre<br />

Le modèle de développement.<br />

La communauté<br />

Les licences<br />

Les implications sur le modèle économique : exemples de<br />

réussite, exemple d’échecs<br />

Les enjeux du logiciel libre<br />

L’importance des standards ouverts<br />

La pérennité du système d’informations<br />

Les résultats de ce modèle : des logiciels libres devenus<br />

standards<br />

De l’utilisateur final au serveur d’applications<br />

Le projet Jakarta<br />

Enjeux et objectifs<br />

Organisation des projets<br />

Repositories de sources<br />

Présentation des projets<br />

Les outils<br />

L’IDE OpenSource Eclipse<br />

Présentation du projet Eclipse et du principe de plugins<br />

L’IDE : notion de workplace, workbench, perspectives<br />

Configurer son environnement<br />

Gestion de configurations<br />

La mise en place de projet <strong>Java</strong>, définition de la version du<br />

compilateur, définition du classpath, organisation des répertoires<br />

sources et de compilation.<br />

Les outils intégrés dans Eclipse : CVS, Ant, JUnit<br />

Le travail en équipe, l’intégration continue<br />

Panorama des plugins pour le développement <strong>Java</strong> EE<br />

Le travail en équipe<br />

Repository : CVS, Subversion<br />

Opérations de déploiement et Intégration continue : Ant, Maven<br />

Conformité du code source : CheckStyle<br />

Le test<br />

Tests unitaires <strong>avec</strong> JUnit et TestNG<br />

Tests fonctionnels : panorama de l’offre<br />

Test de charge : JMeter<br />

L’offre serveurs<br />

Introduction<br />

Serveur http, moteur de servlet et serveur <strong>J2EE</strong><br />

Responsabilités d’un serveur d’applications<br />

Critères de comparaison<br />

Le serveur http Apache<br />

Présentation, installation et configuration de base<br />

Les servlets ContainersTomcat et Jetty<br />

Intégration Apache/Tomcat, Load-balancing et clustering<br />

Serveurs d’application<br />

Rappels <strong>J2EE</strong> : Architecture multitiers distribuée, composants<br />

logiciels, architectures physiques classiques<br />

L’offre libre : JBoss, JoNas, Geronimo, Glassfich<br />

53<br />

Les frameworks de présentation<br />

Introduction<br />

Apports d’un framework<br />

Le modèle MVC, configuration externe du contrôleur, alternatives<br />

pour la vue, implémentation du modèle<br />

Frameworks de présentation et librairies d’extension<br />

Le framework Struts<br />

Historique<br />

Apports de Struts : contrôleurs, balises JSP,<br />

validation/conversion, gestion des erreurs, internationalisation<br />

Illustration <strong>avec</strong> une application réelle<br />

Autres framework MVC : Webwork, Velocity<br />

Spring<br />

Le pattern d’IoC, Aspect-Oriented Programming<br />

Les différentes utilisations de Spring<br />

Spring MVC<br />

Spring DAOFrameworks JSF<br />

Rappels JSF : Modèle de composants, spécification <strong>Java</strong> EE5,<br />

bénéfices attendus, intégration Ajax<br />

Apache MyFaces<br />

Le framework Shale<br />

JBoss Seam<br />

Architecture <strong>Java</strong> EE5 versus <strong>J2EE</strong> 1.4<br />

Modèle conversationnel de Seam<br />

Intégration Hibernate et EJB3.0<br />

Les bases de données OpenSource et <strong>Java</strong><br />

Objet Relational Mapping<br />

Introduction à la problématique de la persistance<br />

Caractéristiques d’une solution d’ORM<br />

Le framework Hibernate<br />

Configuration et Mapping <strong>avec</strong> Hibernate<br />

Hibernate et EJB3.0<br />

Les autres apports du framework, moteur de validation, requête<br />

full-text, bases de données multiples<br />

Bases de données<br />

Rappels JDBC, pools de connexions<br />

Critères de comparaison des bases de données<br />

MySQL<br />

Caractéristiques<br />

Distributions et versions<br />

Outils d’administration et clients<br />

PostgreSQL<br />

Caractéristiques<br />

Distributions et versions<br />

Outils d’administration et clients


<strong>Développement</strong> Web<br />

Services<br />

Durée 3 jours<br />

Objectifs<br />

Ce cours présente les WebServices en environnement <strong>Java</strong>.<br />

Une bonne connaissance du langage <strong>Java</strong>, des concepts de<br />

l'internet sont nécessaires.<br />

Participants<br />

Les chefs de projets et développeurs souhaitant concevoir et<br />

développer des web services.<br />

Pré-requis<br />

Savoir développer des applications utilisant les techniques des<br />

Web services.<br />

Contenu<br />

Introduction<br />

Historique. Définitions.<br />

Les différents éditeurs, et leurs produits.<br />

Architecture technique.<br />

Rappels sur XML.<br />

Le protocole SOAP<br />

Simple Object Access Protocol pour l'échange de messages<br />

XML.<br />

Structure d'un message.<br />

Les annuaires UDDI<br />

Universal Description, discovery and Integration pour la<br />

recherche des services web disponibles.<br />

Les annuaires publics.<br />

Structure des données.<br />

Travaux pratiques TP <strong>avec</strong> jUDDI.<br />

Les API <strong>Java</strong> XML<br />

JAXP, JAXB, SAAJ : pour le traitement des données XML<br />

JAX RPC, lancement de procédures distantes<br />

JAXM, messages XML; JAXR, identification de services web<br />

Le Langage WSDL<br />

Web Service Description Langage<br />

Mise en oeuvre<br />

WSDP : java Web Service Developper Pack, Axis.<br />

Travaux Pratiques<br />

Ecriture d'un service web.<br />

Sécurité<br />

Le besoin.<br />

Les solutions actuelles : authentification http, ws-security.<br />

54


Développer des<br />

applications <strong>J2EE</strong><br />

Servlets, JSP, JDBC, XML<br />

Durée 5 jours<br />

Objectifs<br />

Ce stage intensif de 5 jours présente l'ensemble du<br />

développement <strong>J2EE</strong>.<br />

Après une présentation du modèle d'applications distribuées de<br />

<strong>J2EE</strong>. Le cours passe en revue les différents tiers et les<br />

technologies associées. Des travaux pratiques progressifs<br />

permettent aux stagiaires de réaliser une application web<br />

complète.<br />

Participants<br />

Ce cours s’adresse à des programmeurs, développeurs, chefs de<br />

projet ayant besoin de maîtriser ou comprendre le développement<br />

d'application Web <strong>avec</strong> <strong>Java</strong>.<br />

Pré-requis<br />

<strong>Java</strong> impératif<br />

La connaissance de XML serait un plus, mais n'est pas<br />

nécessaire.<br />

Travaux pratiques<br />

Eclipse, serveur Tomcat et JBoss.<br />

Contenu<br />

Introduction à <strong>J2EE</strong><br />

Les applications multi-tiers distribuées :<br />

Les composants <strong>J2EE</strong><br />

Les clients<br />

Support pour les web services<br />

Les conteneurs <strong>J2EE</strong> :Services apportées par les conteneurs<br />

Les différents types de conteneurs<br />

L'offre libre et commerciale<br />

Packaging des applications <strong>J2EE</strong><br />

Modules et descripteurs de déploiement<br />

Les nouveautés de <strong>Java</strong> EE 5<br />

Les différents rôles de développement<br />

Présentation des APIs<br />

EJB, Servlet, JSP, JDBC, JAAS, ...<br />

Le rôle central de JNDI<br />

Tiers de présentation (Servlets, JSP et JSF)<br />

Les servlets<br />

Introduction, cycle de vie, mapping<br />

Les méthodes doGet, doPost et les objets HttpServlet<br />

Request et HttpServletResponse<br />

Les filtres, la délégation de requête<br />

Maintenir un état entre les requêtes, l'objet Http<br />

Session utilisateur<br />

Packaging en .war, et descripteur de déploiement<br />

<strong>Java</strong> Server Pages (JSP)Rapport <strong>avec</strong> les servlets, cycle de vie<br />

Création de contenu dynamique, les objets implicites<br />

Composants <strong>Java</strong> beans, Le scripting, L'expression language<br />

JSTL,<br />

Création de tags spécifiques<br />

L'architecture MVC, illustration <strong>avec</strong> le framework Struts<br />

<strong>Java</strong> Server Faces (JSF)Modèle des composants d'interface<br />

Modèle de navigation<br />

Les backing beans<br />

Cycle de vie d'une page JSF<br />

Patterns de développement des applications JSFApache<br />

MyFAces, JSF et Ajax<br />

Travaux Pratiques Mise en place progressive d'une architecture<br />

MVC<br />

55<br />

Tiers métier ( les EJB)<br />

Introduction aux Enterprise Beans<br />

Bénéfices des EJBs<br />

Les différents types d'EJB<br />

L'accès client via les interfaces<br />

Cycle de vie des différents types d'EJB<br />

Architecture du tiers métier.<br />

Différence entre EJB2.1 et EJB3.0<br />

Les beans Session stateless<br />

Caractéristique des stateless, les fonctions métier<br />

EJB 2.1 Interfaces et descripteur de déploiement<br />

EJB 3.0 Les annotations<br />

Les transactions<br />

Les beans Session stateful<br />

Caractéristique des stateless, la passivation, l'activation<br />

EJB 2.1 Interfaces et descripteur de déploiement<br />

EJB 3.0 Les annotations<br />

Packaging et déploiement<br />

Outil et IDE<br />

Tests unitaires<br />

Architecture en cluster<br />

Travaux Pratiques<br />

<strong>Développement</strong> et test d'un EJB stateless Convertisseur<br />

<strong>Développement</strong> et test d'un EJB statelful Caddie<br />

Le tiers de persistance (JDBC, Hibernate, EJB)<br />

JDBC<br />

Finalités de JDBC, notion de driver<br />

Etablir une connexion à une base<br />

Exécuter des requêtes SQL, les Prepared<br />

Statement, les procédures stockées, le pattern DAO<br />

Les DataSource et JNDI<br />

Framework de persistance, le cas Hibernate<br />

Historique, la problématique de l'ORMLe mapping, mapping de<br />

l'héritage, des associations<br />

Cache d'objets et syncronisation <strong>avec</strong> la base<br />

EJB Entités<br />

CMP ou BMP<br />

Mapping de l'héritage et des associations<br />

Transactions utilisateurs, détachement et réattachement d'entités<br />

EJB 2.1Interfaces et descripteur de déploiement<br />

EJB 3.0 Les annotations<br />

Travaux Pratiques : Pattern DAO<br />

Mapping Hibernate<br />

Transaction utilisateur <strong>avec</strong> EJB 3.0


Enterprise <strong>Java</strong>Beans<br />

Développer des EJB <strong>avec</strong> Eclipse/JBoss<br />

Durée 5 jours<br />

Objectifs<br />

Les EJBs représentent aujourd’hui la solution la plus avancée en<br />

matière d’architecture distribuée. Ils permettent de développer<br />

des composants métiers, adressables aussi bien par un service<br />

Web que par l’informatique “classique” de l’<strong>entreprise</strong>. Avec les<br />

nombreux travaux pratiques réalisés durant ce cours, vous<br />

maîtriserez les outils et techniques tels que les EJB, JMS, JDBC<br />

et JNDI.<br />

Ce cours s’appuiera sur Eclipse pour le développement<br />

d'applications <strong>Java</strong> et JBoss, une référence dans les serveurs<br />

d'applications non commerciaux.<br />

La nouvelle architecture EJB 3.0 est également introduite.<br />

Participants<br />

Ce stage s'adresse à des développeurs d'applications,<br />

responsables informatiques, architectes, chefs de projets,<br />

ingénieurs, etc.<br />

Pré-requis<br />

La maîtrise du langage <strong>Java</strong> est impérative. La connaissance des<br />

servlets et des JSP est préférable.<br />

Travaux pratiques<br />

Ils seront effectués en utilisant les produits Open Source Eclipse<br />

3 et JBoss 4<br />

Contenu<br />

Architectures N tiers, composants distribués, <strong>J2EE</strong><br />

Architectures N tiers : évolution du client serveur traditionnel<br />

Architectures distribuées : .NET, RMI, CORBA, EJB<br />

L'architecture <strong>J2EE</strong> 1.4 et les serveurs d'applications<br />

<strong>J2EE</strong>: définition, présentation des API<br />

Relations entre servlets, JSP et EJB<br />

Eléments constitutifs et fonctionnalités d'un serveur d'applications<br />

Compatibilité des serveurs d'applications <strong>avec</strong> les spécifications<br />

<strong>J2EE</strong><br />

Rappels sur les Servlets et JSP<br />

Principe et architecture d'une servlet<br />

Gestion des sessions<br />

Espace de stockage<br />

Principe d'une JSP, scriplets, objets prédéfinis, actions<br />

JBoss et Eclipse<br />

Le serveur d'application Open Source JBoss: architecture,<br />

marché, perspectives<br />

Eclipse, un IDE Open source universel.<br />

Les plugins Lomboz, WTP et JBoss IDE<br />

Introduction aux Xdoclets<br />

Introduction aux EJB, l'architecture EJB2.1<br />

La spécification EJB 2.1<br />

Architecture : la classe Bean, les interfaces Home et Remote, le<br />

descripteur de déploiement XML<br />

Les différents types d'EJB<br />

Le rôle du conteneur d'EJB<br />

Présentation de RMI/IIOP, protocole d'accès aux EJBs<br />

Principe d'un service de nommage : exemple <strong>avec</strong> la registry<br />

RMI.<br />

JNDI (<strong>Java</strong> Naming and Directory Interface): fonctionnement,<br />

applications, API<br />

Localisation des EJBs <strong>avec</strong> JNDI<br />

Les clients des EJB<br />

Les applications « standalone » clientes d'un EJB<br />

Les servlets/JSP clientes d'un EJB<br />

<strong>Java</strong> Beans clients d'un EJB<br />

56<br />

Déploiement des EJB<br />

Principe du déploiement des EJBs, rôle du conteneur EJB<br />

Le descripteur de déploiement en XML et son contenu.<br />

Les différentes étapes du déploiement.<br />

Présentation des fichiers spécifiques à JBoss<br />

Création de services <strong>avec</strong> les EJB «sessions»<br />

Comparaison EJB session stateless et stateful<br />

L'EJB session du type « stateless », son cycle de vie<br />

L'EJB session du type « stateful », son cycle de vie: mécanismes<br />

de passivation et d'activation<br />

Les accès concurrents sur les EJBs session<br />

Rôle du contexte d'un EJB session<br />

Rôle des objets « Handle » sur les EJBs session stateful<br />

Le bon usage des EJBs du type session.<br />

JDBC (<strong>Java</strong> DataBase Connectivity)<br />

Problématique de la connexion aux bases de données depuis<br />

<strong>Java</strong><br />

Principe de JDBC, les différents types de pilotes JDBC<br />

Les APIs JDBC et leur mise en œuvre<br />

Le pooling des connexions <strong>avec</strong> les DataSources<br />

La localisation d'un pool de connexions <strong>avec</strong> JNDI<br />

Persistance de données <strong>avec</strong> les EJB «entités»<br />

Mapping objet relationnel, rôle de la clé primaire<br />

Les EJBs entités BMP, leur cycle de vie<br />

Le rôle du contexte d'un EJB BMP<br />

Les EJBs entités CMP, leur cycle de vie<br />

Le langage EJB QL<br />

Critères de choix entre CMP et BMP<br />

Les accès concurrents sur les EJBs entités<br />

Relations entre EJB<br />

Du modèle objet au modèle EJB<br />

Problématique des relations entre EJBs entités<br />

Les différentes relations : de un vers un, de un vers plusieurs, de<br />

plusieurs vers plusieurs<br />

Mise en œuvre des relations dans les EJBs entités<br />

Outil de mapping objet relationnel: introduction à Hibernate<br />

Traitement de messages <strong>avec</strong> les EJB «message driven»<br />

Principe des MOM (Middleware Orientés Message), l'API JMS<br />

(<strong>Java</strong> Message Service)<br />

Modèles de messages Publish/Suscribe et Point To Point<br />

Structure d'un message JMS (entête, corps, sélecteur)<br />

Principe, mise en œuvre et cycle de vie d'un EJB message driven.<br />

Descripteur de déploiement<br />

Le client d'un EJB message driven.<br />

Les transactions et les EJB<br />

Principe des transactions distribuées : commit à deux phases<br />

Les APIs JTA : «<strong>Java</strong> Transaction API».<br />

Gestion déclarative et attributs transactionnels<br />

Gestion programmée des transactions<br />

Conséquences sur les performances<br />

La nouvelle architecture EJB 3.0<br />

Besoin de simplification de l'architecture EJB 2<br />

Description de l'architecture EJB 3.0<br />

EJB sessions<br />

EJB entitésRôle de l'Entity Manager<br />

Interopérabilité EJB 2.x <strong>avec</strong> EJB 3.0<br />

Support de EJB 3.0 par les serveurs d'applications<br />

Sécuriser l'accès aux EJBs<br />

Principe de JAAS (<strong>Java</strong> Authentication and Authorization Service)<br />

Les rôles, les groupes de permissions et les permissions sur les<br />

méthodes.<br />

Mise en œuvre de la sécurité sur l'accès aux méthodes d'un EJB.<br />

Sécurité déclarative ou programmée<br />

Design patterns <strong>J2EE</strong><br />

Exposé des bonnes pratiques pour la mise en oeuvre des EJBs<br />

Présentation de quelques « design patterns »Transfer Object<br />

Data Access ObjectSession FaçadeComposite Entity


Admnistration d'un<br />

serveur TOMCAT<br />

Durée 3 jours<br />

Objectifs<br />

A l'issue de cette formation, les participants connaîtront<br />

l'architecture du serveur Tomcat, en particulier ses rôles et son<br />

contexte de mise en oeuvre. De plus, ils en maîtriseront son<br />

administration sous tous ses aspects: l'installation, la<br />

configuration ainsi que le suivie et le tuning. Les participants<br />

mettront en oeuvre de façon pratique l'interfaçage de Tomcat<br />

<strong>avec</strong> les services connexes (machine virtuelle <strong>Java</strong>, serveur<br />

Apache, authentification, bases de données). Les problématiques<br />

concernant le déploiement d'applications et la sécurisation sont<br />

abordées. Enfin, les architectures avancées permettant<br />

l'équilibrage de charges et la tolérance aux fautes sont également<br />

étudiées.<br />

Participants<br />

Administrateurs, Concepteurs.<br />

Pré-requis<br />

Connaître les bases de l'administration d'un système<br />

d'exploitation (de préférence Unix/linux) et avoir des notions de<br />

développement en langage <strong>Java</strong>.<br />

Contenu<br />

Introduction et installation<br />

Le projet Tomcat : historique et différentes versions<br />

Rappel sur les applications Webs en <strong>Java</strong> : Contenu statique,<br />

dynamique, Servlets et JSPs, positionnement de Tomcat dans la<br />

norme <strong>J2EE</strong>, le modèle MVC<br />

Installation : Choix de la JVM et installation, Téléchargement<br />

distribution binaire et installation, Scripts de démarrage et d'arrêt,<br />

Parcours de la distribution et des applications fournies.<br />

Travaux pratiques Installation et mise en place des scripts de<br />

démarrage/arrêt<br />

Configuration<br />

Le fichier server.xml : Structure hiérarchique, présentation des<br />

différents éléments (Server, Service, Connector, ...)<br />

Tomcat et JNDI : Déclaration de ressources JNDI, exemple d'une<br />

DataSource JDBC<br />

Tomcat et l'authentification : Notion de realms, les différentes<br />

formes d'authentification, déclaration et différents types de realms<br />

supportées, contraintes d'accès dans les applications web<br />

Tomcat et la session utilisateur : Rappel du mécanisme de<br />

session, sérialisation des sessions utilisateur, les différents<br />

manager disponibles<br />

Tomcat comme serveur HTTP : Mise en place de SSI, CGI. Mise<br />

en place des logs d'accès<br />

Interface d'administration : Parcours de l'application<br />

d'administrationTravaux pratiques Découvrir les contraintes<br />

d'accès à l'application Tomat Manager, Mise en place d'un<br />

JDBCRealm, Démonstration sur la sérialisation de session.<br />

Déploiement d'applications<br />

Les fichiers .war : Structure, construction, le descripteur de<br />

déploiement web.xml, le mapping de servlet.<br />

Le déployeur de tomcat : Retour sur les descripteurs de contexte,<br />

les paramètres de configuration influant sur le déploiement,<br />

déploiement au démarrage et déploiement à chaud, Tomcat et<br />

JMX<br />

Tomcat manager : Déploiement local ou distant <strong>avec</strong> le manager,<br />

déchargement ou rechargement de context<br />

Automatisation des déploiements : Présentation de l'outil Ant,<br />

Exécution de commande du manager via Ant<br />

Travaux pratiques Déploiements de l'application servlet-examples<br />

<strong>avec</strong> les différentes techniques<br />

57<br />

La sécurité<br />

Introduction : Les différentes sources de danger, les techniques<br />

basiques de protection<br />

Applications : Restreindre les accès aux ressources des<br />

applications web, le fichier catalina.policy<br />

Attaques externes : Les différents types d'attaque, le filtrage de<br />

requête et les valves<br />

Sécurisation par SSL : Présentation de SSL, mise en place dans<br />

Tomcat<br />

Travaux pratiques Création d'un certificat, Mise en place de SSL<br />

Optimisation et mesures des performances<br />

Introduction : Méthodologie pour la mesure des performances,<br />

panorama des outils OpenSource<br />

L'outil JMeter : Présentation des concepts, installation,<br />

enregistrement de scénarios de test, présentation des différentes<br />

mesures et visualiseurs<br />

Optimisation : Types d'optimisation, paramètres de configuration<br />

influant sur les performances.<br />

Travaux pratiques Enregistrement d'un scénario de test <strong>avec</strong><br />

JMeter, Stress d'une application test, modification des paramètres<br />

de config.<br />

Intégration <strong>avec</strong> le serveur Apache<br />

Introduction : présentation des différentes techniques, avantages<br />

et inconvénients.<br />

Apache comme Proxy : Configuration des deux serveurs<br />

Utilisation de mod_jk : Configuration des deux serveurs<br />

Le mode in-process : Obtention du binaire mod_jk, compilation à<br />

partir des fichiers sources, configuration des deux serveurs<br />

Travaux pratiques Mise en place des différentes architectures<br />

Architecture avancée<br />

Introduction : Le clustering, différents types et objectifs,<br />

équilibrage de charge, scalability, tolérance aux fautes et<br />

continuité de service, le déploiement dans un cluster, le farming<br />

Mode instances multiple : les variables d'environnement<br />

CATALINA_HOME, et CATALINA_BASE, architecture<br />

Equilibrage de charge et tolérance aux fautes : Problématique, les<br />

différentes solutions, utilisation de proxy et de rewriting, Apache<br />

comme répartiteur de charge, l'application balancer.<br />

Support pour le clustering : Réplication et persistance de session,<br />

problématique limitations et différentes techniques, le farming<br />

dans tomcat<br />

Travaux pratiques Mise en place des différentes techniques<br />

(instances multiples, répartition de charges <strong>avec</strong> Apache,<br />

persistance des sessions)


Développer des EJB3<br />

(Eclipse Jboss/GlassFish)<br />

Eclipse/NetBeans Jboss 4/<br />

GlassFish<br />

Durée 5 jours<br />

Objectifs<br />

La nouvelle architecture EJB3 vise à grandement simplifier le<br />

développement d’EJB, lesquels représentent aujourd’hui la<br />

solution la plus avancée en matière d’architecture distribuée. Ils<br />

permettent de développer des composants métiers, adressables<br />

aussi bien par un service Web que par l’informatique “classique”<br />

de l’<strong>entreprise</strong>. Avec les nombreux travaux pratiques réalisés<br />

durant ce cours, vous maîtriserez le développement d’EJB 3 et<br />

leur intégration dans une application d’<strong>entreprise</strong>.<br />

Ce cours s’appuiera sur des produits phares dans le monde de<br />

l'Open Source : Eclipse et NetBeans, pour le développement<br />

d'applications <strong>J2EE</strong>, JBoss 4 et le nouveau GlassFish, des<br />

références dans les serveurs d'application supportant les EJB3.<br />

Participants<br />

Ce stage s'adresse à des développeurs d'applications,<br />

responsables informatiques, architectes, chefs de projets,<br />

ingénieurs, etc.,<br />

Pré-requis<br />

La maîtrise du langage <strong>Java</strong> est impérative. La connaissance des<br />

servlets et des JSP est préférable. La connaissance des EJB 2.x<br />

est un plus<br />

Travaux pratiques<br />

Ils seront effectués en utilisant les outils de développement Open<br />

Source Eclipse 3. Les serveurs d’applications utilisés seront<br />

JBoss 4 et GlassFish (JBoss 5 sur demande)<br />

Contenu<br />

Architectures N-tiers, composants distribués<br />

Architectures N-tiers : évolution du client-serveur traditionnel<br />

Architectures distribuées : .NET, RMI, CORBA, EJB<br />

L'architecture <strong>J2EE</strong> 1.5 et les serveurs d'applications<br />

<strong>J2EE</strong>: définition, présentation<br />

Relations entre servlets, JSP et EJB<br />

Eléments constitutifs et fonctionnalités d'un serveur d'applications<br />

Compatibilité des serveurs d'applications <strong>avec</strong> les spécifications<br />

<strong>J2EE</strong><br />

Le serveur d'applications Open Source JBoss: architecture,<br />

marché, perspectives<br />

Le nouveau serveur d'applications Open Source GlassFish<br />

Les IDE Eclipse et NetBeans<br />

Eclipse/ JBoss-IDE, un standard pour le développement <strong>J2EE</strong> en<br />

Open Source<br />

NetBeans IDE, l'IDE Open Source émergent pour le<br />

développement <strong>J2EE</strong><br />

Rappels sur les Servlets et JSP<br />

Principe et architecture d'une servlet<br />

Gestion des sessions<br />

Espace de stockage<br />

Principe d'une JSP, scriplets, objets prédéfinis, actions<br />

L'architecture EJB3<br />

La spécification EJB3<br />

Architecture : la classe Bean, les interfaces « métiers », les<br />

annotations, le descripteur de déploiement XML optionnel<br />

Les différents types d'EJB : session, entité et<br />

58<br />

message-driven<br />

Packaging et déploiement des EJB 3<br />

Le rôle du conteneur d'EJB<br />

Principe et rôle de JNDI (<strong>Java</strong> Naming and Directory Interface)<br />

Localisation des EJB3 <strong>avec</strong> JNDI<br />

Injection de dépendances<br />

Principe et rôle des intercepteurs<br />

Compatibilité <strong>avec</strong> les EJB 2.x<br />

Les clients des EJB<br />

Les applications «standalone» clientes d'un EJB<br />

Les applications web clientes d'un EJB<br />

Mise-en-oeuvre d'une architecture MVC <strong>avec</strong> EJB<br />

Création de services <strong>avec</strong> les EJB «sessions»<br />

Comparaison EJB session « stateless » et « stateful »<br />

L'EJB session du type «stateless », son cycle de vie<br />

L'EJB session du type « stateful », son cycle de vie: mécanismes<br />

de passivation et d'activation<br />

Méthodes « callback »<br />

Les accès concurrents sur les EJB sessions<br />

Configuration des EJB sessions dans les architectures en cluster<br />

Le bon usage des EJB sessions<br />

Persistance de données <strong>avec</strong> les EJB «entités»<br />

Mapping objet-relationnel, rôle de la clé primaire<br />

Clé primaire simple ou composite<br />

Le nouveau modèle de persistance EJB3 et ses API JPA<br />

Rôle de l'Entity Manager<br />

Opérations sur les EJB entités<br />

Cycle de vie d'un EJB entité<br />

Méthodes « callback » et listeners<br />

Les accès concurrents sur les EJB entités<br />

Le langage EJB-QL : syntaxe et utilisation<br />

Relations entre EJB « entités »<br />

Du modèle objet au modèle EJB<br />

Héritage : stratégies de mapping<br />

Associations : de un vers un, de un vers plusieurs, de plusieurs<br />

vers plusieurs<br />

Mise-en-oeuvre des relations entre EJB entités<br />

Traitement de messages <strong>avec</strong> les EJB «message-driven»<br />

Principe des MOM (Middleware Orientés Message) , l'API JMS<br />

(<strong>Java</strong> Message Service)<br />

Modèles de messages Publish/Suscribe et Point-To-Point<br />

Structure d'un message JMS (entête, corps, sélecteur)<br />

Principe, mise-en-oeuvre et cycle de vie d'un EJB message-driven<br />

Le client d'un EJB message-driven<br />

Configuration des objets JMS administrés<br />

Intercepteurs d'EJB<br />

Principe des intercepteurs, configuration, chaînage<br />

Intercepteurs par défaut<br />

Ordre d'invocation des intercepteurs<br />

Quelques applications type<br />

Les services web et les EJB<br />

Principe d'un service web<br />

Les technologies fondatrices : HTTP, XML, SOAP, WSDL et UDDI<br />

API JAX-RPC et JAX-WS<br />

Transformation d'un EJB session stateless en service web<br />

Le service timer<br />

ObjectifsPrésentation des APIMise en oeuvre dans les EJB<br />

sessionMise en oeuvre dans les EJB message-driven<br />

Les transactions et les EJB<br />

Principe des transactions distibuées : commit à deux phases<br />

Les API JTA : «<strong>Java</strong> Transaction API».<br />

Gestion déclarative et attributs transactionnels<br />

Gestion programmée des transactions<br />

Sécuriser l'accès aux EJB<br />

Mise-en-oeuvre de la sécurité dans une application <strong>J2EE</strong>.<br />

Authentification des utilisateurs<br />

Les rôles, les droits d'accès aux méthodes<br />

Sécurité déclarative ou programmée sur les EJB


Administration Jonas<br />

Durée 5 jours<br />

Objectifs<br />

Identifier et mettre en oeuvre l'ensemble des composantes de<br />

l'administration du serveur d'application JOnAS en<br />

insistant en particulier sur :<br />

- le déploiement des Enterprise <strong>Java</strong>Beans (EJB),<br />

- l'utilisation de Tomcat intégré comme serveur Web,<br />

- l'équilibrage de charges <strong>avec</strong> le clustering.<br />

Participants<br />

Administrateurs de sites et/ou d'applications responsables de la<br />

configuration et de la maintenance des applications basées sur le<br />

serveur d'application JOnAS.<br />

Pré-requis<br />

Connaissance générale en Informatique.<br />

Avoir une connaissance de l'administration Linux, bases de<br />

données, SQL et réseaux TCP/IP. Avoir suivi le cours introduction<br />

à la technologie <strong>J2EE</strong> ou connaissance équivalent.<br />

Contenu<br />

Architectures distribuées.<br />

Architecture JOnAS et de ses différents composants<br />

(JORM, CAROL, JORAM, JOTM, etc ¿).<br />

Configuration et monitoring des serveurs et des clusters.<br />

Mise en oeuvre de Tomcat comme serveur Web.<br />

Configurations des services de JOnAS parmi lesquels JMS<br />

via JORAM et JDBC via JORM.<br />

Concepts et architecture des <strong>entreprise</strong>s <strong>Java</strong>Beans (EJB).<br />

Déploiement des EJB.<br />

Configuration des transactions et de la sécurité.<br />

59


Administration Jboss<br />

Durée 3 jours<br />

Objectifs<br />

JBoss est le leader des serveurs applicatifs <strong>J2EE</strong> libre. Sa<br />

pénétration dans les <strong>entreprise</strong>s est en constante progression. Ce<br />

cours très complet, vous présentera l’ensemble des<br />

caractéristiques de JBoss. Tournée vers les administrateurs de<br />

plate-forme, cette formation permet d’acquérir toutes les<br />

compétences nécessaires aux tâches quotidiennes d’exploitation<br />

d’application en production: installation du produit, mis en place<br />

des services, surveillance des applications, planification de<br />

tâche... . Ce cours vous permettra également d’identifier ce qui<br />

différencie JBoss des autres serveurs applicatifs.<br />

Pré-requis<br />

Connaître les bases de l'administration d'un système<br />

d'exploitation et avoir des notions de développement en langage<br />

<strong>Java</strong>. La connaissance des bases d’XML sera appréciée<br />

Travaux pratiques<br />

50 % d'ateliers sont prévus dans ce cours. Ils permettent de<br />

mettre en application les notions présentées.<br />

Contenu<br />

Contexte des applications <strong>J2EE</strong><br />

Principes fondamentaux de <strong>Java</strong><br />

La Plateforme <strong>J2EE</strong> (<strong>Java</strong> 2 Edition Entreprise)<br />

Problématique des objets distribués.<br />

Les différents types d'EJB et leurs rôles<br />

JMS (<strong>Java</strong> Message Services) : les bases<br />

L'essentiel d'XML.<br />

Le projet Jboss<br />

IntroductionLicence et fonctionnement du JBoss group<br />

JBoss un serveur <strong>J2EE</strong> à part entière<br />

JMX : Le plus de JBoss<br />

Arrêt/Redémarrage Les points clefs de l'architecture de JBoss<br />

Le microkernel,<br />

La couche service,<br />

Introduction à l'AOP dans JBOSS<br />

Installation de JBoss<br />

Les vérifications à faire avant d'installer<br />

Installation, tests de post-installation (Ou télécharger les bons<br />

binaires)<br />

Présentation des différents répertoires<br />

La configuration par défaut de JBoss : présentation des différents<br />

fichiers de configuration<br />

Les différentes configurations dans JBOSS<br />

Démarrage de JBoss, Installer JBoss comme un service<br />

(Windows, Unix)<br />

Les tests basiques d'installation<br />

Configuration de JBoss<br />

Configuration de baseUne introduction au Managed Beans, Le<br />

classLoader de JBoss, la séquence de démarrage du serveur<br />

Inspecter le serveur grâce à l'application WEB jmx-console, les<br />

autres accès à la jmx-console<br />

L'ajout de services, spécifier les dépendancesentre services,<br />

déploiement à chaud des composants<br />

L'architecture de déploiement de JBoss<br />

Les différents types de déploiements disponibles :servlet, EJBs,<br />

Connecteurs, JAR, etc.<br />

Anatomie d'un .SARLes services JBoss :<br />

Annuaire JNDI,<br />

JMS<br />

Web services<br />

Scheduler, timer, binding<br />

Hibernate et EJB<br />

Intégration d'un moteur de servletLa notion d' «<br />

AbstractWebContainer »<br />

Intégration de Tomcat<br />

Intégration <strong>avec</strong> Jetty<br />

60<br />

JBoss et les connecteurs<br />

Introduction à JCA<br />

Configurer les sources de données JDBC<br />

Configurer des connecteurs génériques<br />

Mise en clusterLes fonctionnalités disponibles et points clefs<br />

Le farming<br />

Administration<br />

Gérer les logs <strong>avec</strong> Log4J<br />

Présentation de log4j, configurer le niveau de trace de la<br />

consoleLes consoles d'administration<br />

Parcourir l'annuaire JNDI<br />

Opérations courantes<br />

Monitoring et alertes<br />

Notion de service singleton<br />

Avec Mbean ,codage du service<br />

Optimiser son conteneurPersonnaliser l'utilisation d'un conteneur<br />

en créant sa propre configuration<br />

Personnaliser la chaîne d'invocations (intercepteurs)<br />

Optimisation d'une application :<br />

Pools<br />

Transactions<br />

Transaction et sécurité<br />

TransactionRappels propriété ACID, accès concurrents et risques<br />

Gestion des transactions<br />

Attributs transactionnels des EJBs<br />

Sécurité<br />

Gérer la sécurité <strong>avec</strong> JAAS<br />

Le modèle de sécurité dans JBoss, security-domain et Login<br />

Module<br />

Autoriser la sécurité déclarative <strong>avec</strong> JBoss, définition de<br />

l'identité, des rôles, fixer les permissions<br />

Filtrage des requêtes<br />

Mise en place de SSL <strong>avec</strong> JBoss


Administration Websphère<br />

Durée 5 jours<br />

Objectifs<br />

Connaître l'architecture et les principes du serveur d'applications<br />

WebSphere. Savoir installer, configurer et exploiter des<br />

applications sous WebSphere. Les travaux pratiques sont<br />

réalisés <strong>avec</strong> la version 6.<br />

Participants<br />

Techniciens d'exploitation, administrateurs WebSphere.<br />

Pré-requis<br />

Une bonne connaissance des concepts de l'internet, des<br />

systèmes d'exploitation, et quelques notions de base sur les<br />

bases de données.<br />

Contenu<br />

WebSphere<br />

Présentation des fonctionnalités du produit WebSphere. Rappels<br />

sur la terminologie et les objets WebSphere Application Server.<br />

Architecture. Topologie WebSphere.<br />

Installation<br />

Le produit WebSphere Application Server, Base de données,<br />

IBM-HTTP server, jdk. Installation manuelle. Installation<br />

automatique.<br />

Administration du système<br />

Fonctionnement de la console Les objets à administrer :<br />

arborescence, groupes de serveurs, noeuds, applications<br />

d'<strong>entreprise</strong>s. Paramètres de configuration : la base de données<br />

de configuration, les fichiers XML.<br />

Intégration<br />

Utilisation de l'outil d'assemblage d'applications (WRD). Le<br />

service de nommage: l'interface JNDI. Gestion des hôtes virtuels<br />

Variables WebSphere. Domaines de réplication Création de<br />

profils serveurs.<br />

Ressources<br />

Sources de données. Exemple: mise en œuvre <strong>avec</strong><br />

PostgreSQL. Modification de la base de données cible.<br />

Fournisseurs d'URL, fournisseurs JMS, les sessions <strong>Java</strong>Mail.<br />

Connexion interapplicatives <strong>avec</strong> JCA.<br />

Gestion du pool de connexions sous WebSphere Application<br />

Server.<br />

Sécurité<br />

Les niveaux de sécurité dans WebSphere (Système, ressources,<br />

les rôles, etc ...). Définition des rôles. Authentification ldap.<br />

Configurer la sécurité du serveur<br />

Outils d'administration<br />

Console d'administration. scripts prédéfinis Outils de migrations.<br />

collector. Administration à distance, automatisation. wsadmin:<br />

Présentation, objets supportés: $AdminApp, $AdminConfig,<br />

$AdminControl, $AdminTask JACL: Syntaxe de base, contrôle de<br />

programme, exemples. Jython: Syntaxe de base, contrôle de<br />

programme, exemples.<br />

Surveillance<br />

Informations émises par WebSphere, les exceptions, les<br />

messages de la console d'administration, les fichiers de traces.<br />

Journalisation.Journal de la JVM.Vérification de la configuration.<br />

Résolution des incidents<br />

Gestion des performances<br />

Etude du Ressource Analyser. Exploitation de l'advisor.<br />

Multi serveurs<br />

Déclaration de plusieurs serveurs sur la même machine dans le<br />

même profil. Routeur HTTP IBM: Configuration Mise en place des<br />

affinités de Session sans gestionnaire de déploiement<br />

61


Administration Websphère<br />

avancée<br />

Durée 4 jours<br />

Objectifs<br />

Connaître l'architecture et les principes du serveur d'applications<br />

WebSphere. Savoir administrer des applications sous<br />

WebSphere, et expertiser une application sous WebSphere.<br />

Participants<br />

Techniciens d'exploitation, administrateurs WebSphere.<br />

Pré-requis<br />

Une bonne connaissance des concepts de l'internet, des<br />

systèmes d'exploitation, et de WebSphere Application Server.<br />

Contenu<br />

Network Deployment<br />

Gestion des nœuds<br />

Installation du gestion de nœuds. Installation d'un nœud piloté.<br />

Transformation d'un serveur autonome en nœud piloté.<br />

Fonctionnement des agents locaux. Gestion des serveurs.<br />

Cluster<br />

Gestion de cluster: ajout de nœud, visualisation.<br />

Gestion des sessions répliquées. Mise en évidence des reprises<br />

de session. Déploiement d'applications sur la cellule.<br />

Déploiement séquentiel.<br />

Automatisation<br />

En ligne de commande, en mode script.<br />

scripts avancés de gestion des nœuds<br />

Utilisation de Jython. Positionnement par rapport à JACL.<br />

Les apports de Python.<br />

Les fonctions, modules, traitement des paramètres.<br />

wsadmin: Présentation, objets supportés: AdminApp,<br />

AdminConfig, AdminControl, AdminTask<br />

Appel des API <strong>Java</strong> , Jython et XML<br />

Redirecteur HTTP<br />

Routeur HTTP IBM: Configuration<br />

Mise en place des affinités de Session.<br />

Chiffrage SSL en amont et en aval du plugin. Liaison <strong>avec</strong> un<br />

serveur Apache interne en SSL.<br />

Sécurisation des accès<br />

Mise en place d'un serveur LDap en tant que référentiel<br />

utilisateurs. Chiffrage.<br />

Mise en place d'un fournisseur externe d'authentification.<br />

Utilisation d'un JACC Tivoli Access Manager<br />

Gestion des performances<br />

Suivi des performances à l'aide de scripts: récupération des<br />

compteurs WebSphere depuis un script Jython.<br />

Relevés automatiques <strong>avec</strong> déclenchement d'alertes.<br />

Mesure des consommations mémoires, des threads actifs. Mise<br />

en œuvre d'un système de surveillance d'un pool de connexion<br />

JDBC.<br />

Extensions<br />

Présentation de la version WebSphere 7.0 Network Deployment.<br />

Présentation de la version Extended Deployment: gestion répartie<br />

de l'état des services, gestion des charges, planification des<br />

travaux.<br />

62


Websphère Tuning -<br />

Optimiser les applications<br />

Durée 2 jours<br />

Objectifs<br />

Analyser les réponses de performances du serveur<br />

Optimiser le serveur et ses composants<br />

Participants<br />

Administrateurs de serveurs<br />

Contenu<br />

Analyse des performances<br />

Introduction au tuning<br />

Activation du suivi de performances<br />

Utilisation de Tivoli Performance Viewer<br />

Tests de charge et analyse des résultats <strong>avec</strong> Tivoli<br />

Optimisation du serveur<br />

Gestion de cache dynamique<br />

Tuning de la JVM <strong>avec</strong> JVMPI<br />

Tuning des conteneurs et composants du serveur<br />

Tuning des applications<br />

Sauvegarde et restauration des configurations de déploiement<br />

réseau<br />

Monitoring du serveur HTTP<br />

Configuration du serveur HTTP<br />

Monitoring <strong>avec</strong> le moniteur de Windows<br />

Sélection des données de performance<br />

Tuning des EJB<br />

Gestion des restrictions d'accès<br />

Utilisation des profils applicatifs<br />

Gestion des requêtes<br />

Gestion des transactions<br />

63


<strong>Développement</strong> JEE <strong>avec</strong><br />

Websphère<br />

Durée 5 jours<br />

Objectifs<br />

Connaître l'architecture et les principes du serveur d'applications<br />

WebSphere. Savoir concevoir, développer, et déployer une<br />

application.<br />

Participants<br />

Développeurs et intégrateurs d'applications <strong>J2EE</strong> <strong>avec</strong> le serveur<br />

d'application WebSphere.<br />

Pré-requis<br />

Il est demandé aux participants de connaître la programmation<br />

<strong>Java</strong>, ainsi que les techniques Internet (serveur HTTP, HTML,...)<br />

et quelques notions de bases de données.<br />

Contenu<br />

Le modèle JEE<br />

Les composants d'un serveur d'application <strong>Java</strong> : serveur HTTP,<br />

moteur de servlets, serveur d'EJB<br />

WebSpherePrésentation des fonctionnalités du produit<br />

WebSphere<br />

La terminologie et les objets WebSphere Application Server :<br />

application d'<strong>entreprise</strong>, serveur d'application, application web,<br />

sources de données, pilote JDBC, hôtes virtuels.<br />

Présentation des différents métiers autour de WebSphere :<br />

développeur, intégrateur, administrateur.<br />

Servlets, pages JSP<br />

Pages HTML dynamiques, communication <strong>avec</strong> bases de<br />

données et applications <strong>Java</strong>, communication <strong>avec</strong> d'autres<br />

servlets<br />

<strong>Développement</strong><br />

Composants d'une application d'<strong>entreprise</strong>: .ear, .jar, .rar, .war<br />

Déploiement dans WebSphere.<br />

Utilisation des outils d'assemblage d'applications: wrd, rad, ...<br />

Regroupement de composants unitaires en une application.<br />

Création d'une application sur-mesure (créer un .ear, un .war,<br />

etc.).<br />

EJB<br />

Types d'EJB : EJB entité, EJB session, EJB Message-driven.<br />

Persistance et transactions.<br />

Méthodes de base: ejbCreate(), ejbActivate(),<br />

setSessionContext(), ejbStore(),...<br />

Fichiers de description en XML. Les fichiers spécifiques de<br />

WebSphere: ibm-application-bnd/ext/ext-pme.xmi, ibm-ejb-jar-<br />

*.xmi, ibm-web-*.xmi.<br />

EJB Session<br />

EJB stateless, stateful. Notion de conversation. Fichiers de<br />

déploiement. Contraintes de conversation. Transactions.<br />

Application: création d'un EJB stateless "Conversion de devises",<br />

création d'un EJB stateful "Caddie"<br />

EJB Entity<br />

Persistance <strong>avec</strong> les EJB BMP, CMP, CMP2. Fichiers de<br />

déploiement. Définition des clés primaires. Définition des<br />

méthodes findBy. Gestion des jointures.<br />

Application: création d'un EJB BMP persistant, d'un CMP de type<br />

"Compte Bancaire" et de CMP <strong>avec</strong> jointure.<br />

Relations entre EJB (one-one,one-many,many-many). Le<br />

langage EJB-QL<br />

Correspondance objet/relationnel. Mapping XML.<br />

Intégration<br />

Transactions. Utilisation de JTA, JTS. Transactions explicites.<br />

Transactions gérées par container. Mise en évidence du retour<br />

arrière déclenché par le conteneur WebSphere.<br />

Sécurité. Mise en place d'une politique de sécurité lors du<br />

déploiement de l'application. Sécurité: JAAS, rôles, groupes de<br />

permissions.<br />

64<br />

Introduction aux EJB3<br />

Apport du jdk1.5. Annotations et génériques. Principes de mise en<br />

œuvre des EJB3.<br />

Simplification de la définition des interfaces. Utilisation des<br />

annotations en remplacement du descripteur de déploiement.<br />

Simplification de la correspondance objet/relationnel.<br />

Compatibilité ascendante. Les EJB3 sous WebSphere 6.1.<br />

EJB Session en version 3<br />

Reprise de l'EJB Caddie. Migration en version 3. Dépendance<br />

d'injection. Intercepteurs de méthodes métier.<br />

EJB Entité en version 3<br />

Les fichiers de persitance. Méthodes d'accès: FIELD/PROPERTY.<br />

Mapping par défaut. Relations en EJB3.<br />

Héritage. Synchronisation <strong>avec</strong> la base de données,<br />

détachement/attachement.


Conception JEE <strong>avec</strong> les<br />

Design Patterns<br />

Durée 4 jours<br />

Objectifs<br />

Cette formation conception <strong>J2EE</strong> vous permettra de comprendre<br />

les patrons de conception (Design Patterns) et les apports de<br />

UML2. Savoir les mettre en oeuvre dans une architecture<br />

technique de conception.<br />

Participants<br />

Chefs de projets, architectes et ingénieurs concepteurs.<br />

Pré-requis<br />

Il est demandé aux participants de connaître les notions de<br />

programmation objets,et des architectures JEE et EJB<br />

Travaux pratiques<br />

De nombreux travaux pratiques illustreront les propos avancés.<br />

Contenu<br />

Définitions<br />

Principes des solutions de conception cataloguées.<br />

Méthodologie: définition des besoins techniques, des classes<br />

"types" du pattern, des collaborations entre classes.<br />

Présentation<br />

Rappels d'architecture<br />

Le modèle MVC,les outils de mise en œuvre (framework, ...)<br />

Les design patterns Description formelle.<br />

Choix et utilisation d'un patron.<br />

Présentation des patrons de conception: origine, les 3 familles<br />

(création, structuration et comportement), autres patrons<br />

Patrons de création<br />

Rendre un système indépendant de la façon dont les objets sont<br />

créés. Etude des patrons: fabrique abstraite, constructeur,<br />

prototype, singleton<br />

Patrons de structuration<br />

Composer des objets pour obtenir de nouvelles fonctionnalités<br />

Identifier des structures de classes abstraites et évolutives Etude<br />

de: adapteur, pont, composite, décorateur, façade, proxy<br />

Patrons de gestion des comportements<br />

Identifier des coopérations évolutives Etude de: chaîne de<br />

responsabilités, commande, interpréteur, itérateur, médiateur,<br />

mémento, observeur, état, strategie, patron de méthode, visiteur<br />

Communication<br />

Coopérations découplées utilisables dans un système distribué<br />

Etude de: publication/souscription, proxy<br />

Mise en oeuvre<br />

Modélisation des patrons de conception et intégration à un<br />

diagramme de classes UML. Création d'une application JEE en<br />

utilisant les patterns de Sun : SessionFacade, BusinessDelegate,<br />

serviceLocator, ..<br />

65


Filière JAVA<br />

66


Architecture d'<strong>entreprise</strong><br />

<strong>avec</strong> <strong>Java</strong> EE<br />

4 jours<br />

Objectifs<br />

Cette formation <strong>Java</strong> EE propose un tour d'horizon des<br />

technologies disponibles <strong>avec</strong> la plate-forme <strong>Java</strong> EE. Il évalue<br />

différentes solutions d'architecture technique et en mesure les<br />

impacts. Les avantages et inconvénients des architectures<br />

modernes y sont mis en relief <strong>avec</strong> leur cohorte d'outils et de<br />

pratiques de développement les plus récentes.<br />

Cette formation répond aux questions suivantes : "Que signifient<br />

tous ces sigles autour de <strong>Java</strong> ?", "Comment bien concevoir une<br />

application Web <strong>avec</strong> <strong>Java</strong> ?", "Quelles sont les technologies et<br />

les bonnes pratiques pour bâtir une architecture distribuée ?",<br />

"Que m'apportent serveurs d'applications et composants EJB ?",<br />

"Comment accéder aux données dans une architecture <strong>Java</strong> ?".<br />

Vous allez apprendre à:<br />

- Appréhender la vaste gamme des interfaces de programmation<br />

de <strong>Java</strong><br />

- Concevoir les applications Web (client léger) <strong>avec</strong> <strong>Java</strong><br />

- Distribuer les services métier de l'<strong>entreprise</strong> grâce à RMI, Corba<br />

et aux Web Services<br />

- Identifier les besoins et les solutions de sécurité d'une<br />

architecture <strong>Java</strong> d'<strong>entreprise</strong><br />

- Evaluer les diverses techniques de persistance des objets<br />

métier <strong>Java</strong><br />

- Intégrer <strong>Java</strong> aux systèmes existants via l'EAI ou les Web<br />

Services<br />

- Évaluer l'impact des EJB (Enterprise <strong>Java</strong>Beans) sur les<br />

architectures <strong>Java</strong><br />

- Comprendre les services techniques sur lesquels s'appuient les<br />

serveurs d'applications EJB<br />

- Découvrir l'évolution du langage <strong>Java</strong><br />

- Identifier les outils les plus utilisés pour le développement <strong>Java</strong><br />

Participants<br />

Responsables techniques, architectes, chefs d'équipe et<br />

développeurs désirant acquérir une connaissance globale de la<br />

plate-forme <strong>Java</strong> EE<br />

Pré-requis<br />

La connaissance des concepts orientés objet est un plus<br />

Contenu<br />

Introduction à <strong>Java</strong> et à l'architecture applicative<br />

<strong>Java</strong> et l'informatique d'<strong>entreprise</strong><br />

Notions d'architecture logicielle<br />

Evolution des architectures techniques<br />

Architectures multi-niveaux<br />

La plate-forme <strong>Java</strong><br />

Le langage <strong>Java</strong> et la JVM<br />

Les principales API<br />

La portabilité<br />

Nouveautés et évolutions du JDK<br />

Les technologies Web<br />

Le protocole HTTP et le langage HTML<br />

Les requêtes et les programmes CGI<br />

<strong>Java</strong>Script<br />

Servlets et <strong>Java</strong>Server Pages<br />

Les Web Design Patterns<br />

JSP / Servlets en pratique<br />

Web Patterns<br />

Frameworks Web<br />

Struts<br />

<strong>Java</strong>Server Faces<br />

Portails Web<br />

Persistance<br />

Accès via JDBC<br />

Normes JDO et JDO 2<br />

Hibernate et JPA<br />

Architecture de persistance<br />

67<br />

Middleware<br />

Corba, IDL et les Corba Services<br />

Les produits <strong>Java</strong> / Corba<br />

Architecture RMI<br />

RMI et les paramètres<br />

RMI vs. Corba<br />

Patterns d'architecture distribuée<br />

Les clients riches<br />

Architectures client riche<br />

<strong>Java</strong>Beans<br />

Les API de présentation (AWT, SWING)<br />

L'alternative SWT<br />

Déploiement d'un client riche<br />

<strong>Java</strong> WebStart ou Eclipse RCP<br />

XML<br />

Définition et utilisations<br />

Complémentarité <strong>avec</strong> <strong>Java</strong><br />

Les API standards comme JAXP<br />

Web Services<br />

Techniques sous-jacentes : comment ça marche ?<br />

Les besoins auxquels répondent les Web Services<br />

Design Patterns et SOA<br />

Qu'est ce qu'un ESB ?<br />

Les services techniques <strong>Java</strong> EE<br />

JNDI, JMS<br />

Transactions distribuées, montée en charge<br />

EJB et EJB 3<br />

EJB, les composants métiers <strong>Java</strong> EE<br />

EJB côté client<br />

Services offerts par le conteneur<br />

EJB Design Patterns<br />

Evolution vers EJB 3<br />

Sécurité<br />

Modèle de sécurité de <strong>Java</strong><br />

Sécuriser les composants EJB<br />

Sécuriser les applications Web<br />

Intégration<br />

Intégration du système d'information<br />

L'EAI et ses produits<br />

Urbanisme et intégration<br />

Architecture des connecteurs <strong>Java</strong> EE<br />

SOA et Web Services<br />

Communication <strong>Java</strong>-C/C++ via JNI<br />

Outillage<br />

EDI : Eclipse et les autres<br />

Construction : Ant, Maven<br />

Tests unitaires <strong>avec</strong> JUnit<br />

Autres outils de test et d'optimisation<br />

Génération : XDoclet et annotations<br />

Les conteneurs légers<br />

L'inversion de contrôle<br />

Le Framework Spring<br />

Aspect Oriented Programming


La plate-forme <strong>Java</strong> EE 5<br />

Durée 2 jours<br />

Objectifs<br />

L'infrastructure distribuée <strong>Java</strong> EE est une des technologies qui<br />

permet de passer de l'architecture 2 tiers à l'architecture n-tiers.<br />

Cette formation <strong>Java</strong> EE vous apporte les concepts et le<br />

vocabulaire indispensables pour comprendre le modèle <strong>Java</strong> EE.<br />

Cette formation <strong>Java</strong> EE vous permettra d'identifier les principaux<br />

apports des technologies Objet, du langage <strong>Java</strong>, de la plateforme<br />

<strong>Java</strong> EE et des serveurs d'applications, dans le cadre<br />

d'applications Internet/Intranet comme pour tout type d'application<br />

Client/Serveur.<br />

Participants<br />

Cette formation <strong>Java</strong> EE s'adresse aux développeurs,<br />

concepteurs, chefs de projet, directeurs de projet.<br />

Pré-requis<br />

Aucun<br />

Contenu<br />

Les concepts Objet<br />

Les objectifs du monde Objet<br />

Les classes et objets<br />

Les attributs et méthodes<br />

Les liens entre les classes (héritage, agrégation...)<br />

Le polymorphisme et la surcharge<br />

Le langage de modélisation : UML<br />

Les enjeux des architectures distribuées<br />

L'évolution des architectures<br />

L'interopérabilité et la portabilité Définition et enjeux<br />

Normes et standards<br />

Du client/serveur aux serveurs d'applications<br />

Les composants d'un programme applicatif<br />

Le modèle du Gartner Group<br />

De l'architecture 2 tiers à l'architecture n-tiers :Du client lourd au<br />

client léger<br />

Intranet : le client/serveur généralisé<br />

Présentation des serveurs d'applications<br />

Caractéristiques et apports des serveurs d'applications<br />

Les concepts Web<br />

Composants architecturaux du Web<br />

Architecture d'une application Web :Le langage HTML<br />

Evolution du Web : du statique au dynamique<br />

Les langages scripts, les CGILes Protocoles HTTP, HTTPS...<br />

Présentation des concepts XML :<br />

DTD, XSL, schémas XML<br />

Les contextes d'utilisationLes services Web<br />

Les infrastructures distribuées<br />

La plate-forme <strong>Java</strong> EE<br />

La plate-forme .Net<br />

Les architectures orientées services SOA<br />

Introduction <strong>Java</strong><br />

Les origines du langage<br />

Les contextes d'utilisation de <strong>Java</strong><br />

Les spécificités syntaxiques<br />

La mise en oeuvre des concepts Objet<br />

La gestion des erreurs<br />

Structuration des applications<br />

Les threads<br />

Les applets<br />

Les servlets<br />

Les <strong>Java</strong>Beans<br />

L'interface homme machine<br />

Côté Client : AWT et SWING<br />

Côté Serveur Architecture Multi-tiers<br />

Le modèle MVC<br />

JSP et <strong>Java</strong>BeansLe client riche :Les JSFs : <strong>Java</strong> Server Faces.<br />

68<br />

<strong>Java</strong> dans une architecture multi-tiers<br />

L'intégration du langage XML<br />

La distribution des objets <strong>Java</strong> : RMI<br />

L'accès aux Annuaires : JNDI<br />

L'accès aux Bases de Données : JDBC<br />

L'accès aux MOMs : JMS<br />

Les objets transactionnels : EJB


Développer des<br />

applications web<br />

d’<strong>entreprise</strong> <strong>avec</strong> <strong>Java</strong> EE<br />

(JEE, Servlets, JSP)<br />

Durée 5 jours<br />

Objectifs<br />

Si les Servlets et les JSP offrent aux développeurs <strong>Java</strong> la<br />

possibilité de créer facilement des pages Web dynamiques,<br />

l'association de diverses technologies devient vite déroutante, à<br />

mesure que les applications Web gagnent en complexité.<br />

Cette formation intensive <strong>Java</strong> EE vous apportera toutes les<br />

compétences nécessaires à la création d'applications Web<br />

évolutives, sûres et simples à administrer. Une étude de cas est<br />

développée tout au long du cours, dont le contenu s'attache avant<br />

tout aux questions de logique et de contrôle des applications Web<br />

plutôt qu'aux éléments de conception graphique ou de mise en<br />

page sous HTML. Vous serez confronté à des problèmes<br />

rencontrés fréquemment dans la conception d'applications Web<br />

et apprendrez à utiliser les Design Patterns <strong>Java</strong> EE pour les<br />

résoudre.<br />

Cette formation <strong>Java</strong> EE répond aux questions suivantes :<br />

"Comment créer une application Web efficace et maintenable ?",<br />

"Comment gagner du temps dans les développements Web ?",<br />

"Quand utiliser les technologies JSP, JSF, JSTL, EJB, Struts,<br />

<strong>Java</strong>Script, XML, Applets ?".<br />

Cette formation <strong>Java</strong> EE vous permettra de:<br />

- Construire des interfaces Web à l'aide de JSP, de Servlets et de<br />

<strong>Java</strong>Script<br />

- Écrire des applications Web portables, faciles à administrer,<br />

faisant la séparation entre HTML et <strong>Java</strong><br />

- Savoir pourquoi passer à JSP 2.0<br />

- Comprendre l'évolution des applications Web vers Struts et JSF<br />

- Décider de l'opportunité d'utiliser telle ou telle technologie Web<br />

- Utiliser efficacement XML et les technologies connexes dans les<br />

applications Web<br />

- Invoquer des Enterprise <strong>Java</strong>Beans à partir de composants<br />

Web<br />

Participants<br />

Développeurs <strong>Java</strong> expérimentés souhaitant apprendre à utiliser<br />

des composants <strong>Java</strong> EE (Servlets et JSP) pour bâtir des<br />

applications Webd'<strong>entreprise</strong><br />

Pré-requis<br />

Expérience pratique de la programmation <strong>avec</strong> <strong>Java</strong> et<br />

compréhension de la conception orientée objet<br />

Travaux pratiques<br />

50% de travaux pratiques<br />

Contenu<br />

Applications Web : notions essentielles<br />

HTTP : notions fondamentales<br />

Application Web vs. site Web ?<br />

Fichiers WAR et fichiers EAR<br />

Navigateurs et serveurs Web<br />

Servlets<br />

Conteneurs de Servlets : architecture et multi-threading<br />

Écriture de Servlets<br />

Objet HttpRequest - HttpResponse<br />

Gestion des formulaires<br />

Forward et inclusion<br />

Suivi de session<br />

Binding Listeners<br />

Filtres<br />

69<br />

Pages JSP<br />

Syntaxe des JSP<br />

Architecture des JSP de type 2<br />

Séparation Modèle / Vue<br />

Gestion dynamique des formulaires<br />

Pages JSP <strong>avec</strong> <strong>Java</strong>Beans<br />

Scriptlets ou balises de style XML<br />

Objets implicites<br />

Inclusions statiques ou dynamiques ?<br />

Pages d'erreurs<br />

Bibliothèque de balises<br />

Utilisation des Tag Libs<br />

Attributs de temps d'une requête<br />

Définition de Tag Libs<br />

Balises simples<br />

Balises complexes<br />

JSP 2.0, JSF et JSTL<br />

Langage d'expression des JSP<strong>Java</strong> Standard Tag Libraries<br />

<strong>Java</strong>Server Faces<br />

DHTML et <strong>Java</strong>Script<br />

Syntaxe <strong>Java</strong>Script de base<br />

Validation de formulaires côté client à l'aide de <strong>Java</strong>Script<br />

Patterns et bonnes pratiques<br />

Servlets de contrôle<br />

Contrôleurs basés sur les commandes<br />

<strong>Java</strong>Beans sous forme de validateurs de formulaires<br />

Séparation <strong>Java</strong> / HTML<br />

Le Framework Struts<br />

Architecture et conception<br />

Architectures des applications Web<br />

Choix des technologies Web appropriées<br />

Extensions WAE (Web Application Extensions) à UML<br />

Accès SGBD et Pool de connexion<br />

Serveurs d'applications, EJB et <strong>Java</strong> EE<br />

Sécurité sur le Web<br />

Autorisation, authentification<br />

Sécurité déclarative <strong>Java</strong> EE<br />

Certificats - SSL


<strong>Java</strong> sans connaître l'objet<br />

Débuter en <strong>Java</strong><br />

Durée 5 jours<br />

Objectifs<br />

Cette formation <strong>Java</strong> Initiation s’adresse prioritairement aux<br />

développeurs ne connaissant pas la programmation objet. Il vous<br />

permettra de maîtriser les principes de l’approche objet et les<br />

mécanismes du langage java. Les participants seront capables<br />

de développer des applications professionnelles <strong>avec</strong> <strong>Java</strong> et son<br />

JDK. La formation leur permettra de comprendre les classes<br />

utilitaires, applets, applications, graphiques, IHM et XML.<br />

Participants<br />

Développeurs<br />

Pré-requis<br />

Connaissance d'un langage de programmation procédural (VB,<br />

C, PHP...)<br />

Travaux pratiques<br />

Au cours de cette formation, de nombreux ateliers seront<br />

proposés aux participants<br />

Contenu<br />

Présentation de <strong>Java</strong> (Architectures N-Tiers, J2SE, <strong>J2EE</strong>,<br />

JVM, Outils (JAR, <strong>Java</strong>Doc)<br />

Présentation de <strong>Java</strong> et de ses tiers techniques J2SE;<strong>J2EE</strong>;J2ME<br />

et la JVM<br />

Présentation des composants techniques de <strong>Java</strong> (JDK),<br />

principales APIs<br />

Présentation des outils <strong>Java</strong> : <strong>Java</strong>Doc, Jar et co<br />

Présentation des principaux IDE : Eclipse, NetBeans<br />

Les bases du langage java(Syntaxe)<br />

Déclaration de variables<br />

Initialisation<br />

Instruction de contrôles<br />

Boucles et itérations<br />

Les concepts objets en <strong>Java</strong> (syntaxe : classe, héritage,<br />

classe abstraites et interfaces)<br />

La classe et ses attributs;méthodes<br />

L'encapsulation, les imports et packages<br />

Les interfaces<br />

Les classes abstraites<br />

L'héritage<br />

<strong>Java</strong>: Gestion des erreurs <strong>avec</strong> les exceptions (try/catch,<br />

exceptions métiers)<br />

Les différentes exceptions en <strong>Java</strong><br />

Les blocs try;catch;finally<br />

Gestion locale ou centralisée<br />

Créer ses propres exceptions métier<br />

Bibliothèques standard de <strong>Java</strong> (collection, date,<br />

entrées/sorties)<br />

Gestion des tableaux et collections<br />

Les dates et calendriers<br />

Les entrées;sorties de fichiers<br />

Nouveautés java <strong>avec</strong> Tiger<br />

Améliorations et nouveautés du langage<br />

Les nouvelles APIs majeures<br />

Les annotations<br />

Les génériques<br />

Accès aux SGBDR <strong>avec</strong> JDBC (connection, query, resultset,<br />

ressourcebundle, ORM)<br />

Présentation de <strong>Java</strong> et de JBDC<br />

Connexion à une BDD, exécution d'une requête et itération sur<br />

les résultats (connection, statement et resultset)<br />

Externaliser les paramètres <strong>avec</strong> les fichiers properties et<br />

ressourcebundle<br />

Introduction au mapping Objet-Relationnel<br />

70<br />

Introduction au modèle MVC (modèle/vue/contrôleur)<br />

Architecture MVC<br />

Le modèle<br />

La vue<br />

Le contrôleur<br />

Développer des IHM en <strong>Java</strong> : Aperçu de AWT et SWING<br />

(composants, conteneurs, layouts)<br />

Les composants et conteneurs (JButton, JTextField, JPanel et<br />

JFrame)<br />

Gestionnaire de mise en forme : les layouts<br />

Gestionnaire des évènements : les listeners<br />

API pour les fichiers de logs<br />

Générer des Logs <strong>avec</strong> Log4j<br />

Filtrer les Logs par niveau d'importance<br />

Configurer la;les destinations où sont générés les logs<br />

Améliorer la qualité d'une application java grâce aux tests<br />

unitaires<br />

Créer des tests unitaires <strong>avec</strong> JUnit<br />

Créer des suites de tests <strong>avec</strong> JUnit<br />

Générer des rapports<br />

Préparer une application à l'internationalisation<br />

Gérer les langues <strong>avec</strong> l'API ressourcebundle et les fichiers<br />

properties


<strong>Java</strong> pour développeur<br />

Objet<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation <strong>Java</strong> pour développeur Objet vous propose dans<br />

un premier temps de maîtriser la syntaxe et les concepts<br />

essentiels du langage <strong>Java</strong>.<br />

Ensuite l'objectif est de construire une application complète, dotée<br />

d'une architecture à trois niveaux. Vous développerez un serveur<br />

d'objets distants (<strong>avec</strong> RMI) accédant à une base de données<br />

relationnelle (via JDBC), prenant en charge un client <strong>Java</strong> (Swing)<br />

et un client Web (Servlets / JSP). Le rythme de cette formation est<br />

soutenu, ce qui permet d'acquérir un maximum de compétences<br />

en un minimum de temps.<br />

Cette formation <strong>Java</strong> permet de répondre aux questions suivantes<br />

: "Je suis développeur objet (en C++, Smalltalk ou .NET par<br />

exemple) : puis-je rapidement transposer mes connaissances en<br />

<strong>Java</strong> ?", "Quelles sont les bibliothèques <strong>Java</strong> les plus<br />

importantes, et comment les mettre en oeuvre ?".<br />

Plus synthétiquement cette formation <strong>Java</strong> vous permettra<br />

d'apprendre à:<br />

- Utiliser la syntaxe <strong>Java</strong> et les classes de base de <strong>Java</strong> SE (<strong>Java</strong><br />

Standard Edition)<br />

- Utiliser les nouvelles caractéristiques du JDK 1.5<br />

- Lire et écrire des classes <strong>Java</strong> et les organiser en packages<br />

- Accéder à un SGBDR <strong>avec</strong> JDBC (<strong>Java</strong> DataBase Connectivity)<br />

- Implémenter une couche de persistance d'objets <strong>Java</strong><br />

- Réaliser une interface graphique utilisateur <strong>avec</strong> <strong>Java</strong> Swing<br />

- Utiliser les interfaces pour améliorer la conception orientée objet<br />

- Réaliser une architecture distribuée basée sur RMI (et la<br />

sérialisation <strong>Java</strong>)<br />

- Appréhender les architectures Web et les architectures<br />

distribuées<br />

- Créer une application Web basée sur les JSP / Servlets<br />

Participants<br />

Développeurs objet, chefs de projet souhaitant utiliser <strong>Java</strong><br />

Pré-requis :<br />

Expérience pratique d'un langage objet (C++, Smalltalk...)<br />

Travaux pratiques<br />

Plus de 50% de travaux pratiques<br />

Contenu<br />

Introduction à <strong>Java</strong><br />

Présentation du langage<br />

Le byte-code et la machine virtuelle <strong>Java</strong><br />

Le JDK et les API de la plate-forme <strong>Java</strong><br />

Les concepts objets<br />

Objets, classes, encapsulation<br />

Attributs, opération et identité<br />

Associations et collaboration<br />

Héritage et polymorphisme<br />

Syntaxe <strong>Java</strong><br />

Types de base<br />

Déclaration des variables<br />

Opérateurs<br />

Les structures de contrôle<br />

Différences entre C et <strong>Java</strong><br />

Commentaires<br />

Objets, classes et tableaux<br />

Déclaration d'une classe<br />

Les attributs et méthodes static et final<br />

Constructeurs et bloc d'initialisation<br />

La création et destruction d'un objet<br />

Les références : this, null<br />

Opérateurs sur références<br />

71<br />

Règles de visibilité<br />

Syntaxe des tableaux, les matrices<br />

Classification, packages et encapsulation<br />

Classification et héritage<br />

Les interfaces <strong>Java</strong><br />

Polymorphisme<br />

Classes et méthodes abstraites<br />

Packages et visibilité<br />

Classes imbriquées et classes anonymes<br />

Quelques classes utilitaires<br />

La classe Object<br />

Les classes Wrapper<br />

Les chaînes de caractères<br />

Les collections <strong>Java</strong><br />

Les itérateurs<br />

La gestion des exceptions en <strong>Java</strong><br />

Gérer les exceptions applicatives<br />

Exceptions vérifiées et non vérifiées<br />

Bon usage des exceptions<br />

Bases d'AWT et de Swing<br />

<strong>Java</strong> Foundation Classes, AWT et Swing<br />

Composants et conteneurs<br />

Les Layouts et LayoutManagers<br />

Les Listeners et le traitement des événements<br />

Conception <strong>avec</strong> le modèle MVC<br />

Les entrées / sorties <strong>Java</strong><br />

Les canaux et les filtres<br />

E/S par octet et par caractère<br />

Les canaux Unicode<br />

La sérialisation<br />

Les bases de JDBC<br />

Les pilotes JDBC<br />

Contrôler les transactions<br />

Traiter le résultat des requêtes SQL<br />

Utilisation de procédures stockées<br />

Les Threads <strong>Java</strong><br />

Les plus et les moins des Threads<br />

La classe Thread<br />

Priorité et états d'un Thread<br />

Les groupes de Threads<br />

Gestion de la concurrence<br />

Synchronisation<br />

Introduction à RMI<br />

Objets distants et sérialisation<br />

Notions de Stubs et Skeleton<br />

<strong>Java</strong> et le Web<br />

Découverte des Applets <strong>Java</strong><br />

Découverte des Servlets<br />

Découverte des JSP


Programmation avancée<br />

en <strong>Java</strong><br />

Durée 5 jours<br />

Objectifs<br />

Ce stage intensif nécessite une bonne connaissance du langage<br />

<strong>Java</strong>. Il permet de compléter ces connaissances de base sur les<br />

sujets les plus couramment rencontrer dans les applications<br />

professionnelles, ces domaines peuvent causer des difficultés<br />

même à des programmeurs expérimentés.<br />

Participants<br />

Les ingénieurs et les informaticiens qui souhaitent développer une<br />

expertise complète et opérationnelle sur le langage <strong>Java</strong>.<br />

Pré-requis<br />

Les participants doivent posséder impérativement une bonne<br />

connaissance du langage <strong>Java</strong>.<br />

Travaux pratiques<br />

Il s'agit d'un cours <strong>avec</strong> une grande part consacrée aux travaux<br />

dirigés (plus de 50% du cours) où le JDK est utilisé. De nombreux<br />

ateliers sont proposés <strong>avec</strong> les corrigés.<br />

Contenu<br />

Le langage<br />

Travaux pratiques de rappels.<br />

Présentation du JDK utilisé. Nouveautés du JDK 1.5<br />

Bibliothèques<br />

Rappels sur la compilation. Principe des librairies, JFC, <strong>Java</strong><br />

Beans, Swing.<br />

Gestion des paquetages. Fichiers jar. CLASSPATH.<br />

Présentation de ant.<br />

Collections<br />

Manipulation d'ensembles d'objets. Listes, collections, ensembles,<br />

dictionnaires.<br />

JDBC<br />

Mécanismes de connexion aux bases de données. Principes de<br />

JDBC.<br />

Utilisation des méta données.<br />

Exploitation du ResultSet.<br />

Gestion du transactionnel.<br />

Exemple d'application transactionnelle de <strong>Java</strong> à SQL<br />

XML<br />

Présentation des API de programmation : DOM, SAX.T<br />

Ecriture d'un mini parseur XML.<br />

Réseau<br />

Les classes principales d'accès au réseau<br />

Programmation par socket, sérialisation. Transferts d'objets au<br />

travers du réseau. Création d'une application client/serveur<br />

réseau.<br />

Accès aux ressources partagées, synchronisation, verrous.<br />

Utilisation des threads.<br />

Accès concurrents<br />

Accès aux ressources partagées, synchronisation, verrous<br />

Utilisation des threads<br />

<strong>Java</strong> Management eXtension<br />

Supervision <strong>avec</strong> JMX<br />

Principe des MBeans, et exemples de MBeans standards fournis<br />

à partir du jdk 1.5<br />

Sécurité<br />

Introduction à la sécurité <strong>Java</strong>. Protection du système vis à vis<br />

des applications tierces: SecurityManager, ClassLoader.<br />

JCE. Chiffrement, chiffrement asymétrique, hachage<br />

Intégration<br />

Exécution de commandes système depuis <strong>Java</strong>.<br />

Appel de programme en C depuis <strong>Java</strong>: classes natives.<br />

Appel de <strong>Java</strong> depuis le C. Instanciation d'une JVM.<br />

72


Extrême <strong>Java</strong><br />

Durée 4 jours<br />

Objectifs<br />

"Extrême <strong>Java</strong>" vous emmène au coeur du langage lui-même,<br />

afin de vous apprendre à le pousser dans ses retranchements.<br />

Sans se disperser dans l'étude d'API spécifiques, cette formation<br />

<strong>Java</strong> avancé vous guide sur les sentiers moins fréquentés que<br />

sont la gestion de la mémoire par la JVM, les mécanismes de<br />

réflexion, le modèle de sécurité <strong>Java</strong>, les secrets du multi-tâches,<br />

les notions de profiling et d'optimisation...<br />

Cette formation <strong>Java</strong> avancé vous permettra de découvrir les<br />

coulisses du langage <strong>Java</strong> et, par une compréhension plus<br />

profonde, de faire un meilleur usage de celui-ci.<br />

Vous allez apprendre à:<br />

- Programmer en multi-tâches <strong>avec</strong> <strong>Java</strong><br />

- Sécuriser une application <strong>Java</strong><br />

- Comprendre la gestion de la mémoire<br />

- Tirer parti des possibilités de réflexion du langage<br />

- Comprendre l'évolution du langage <strong>Java</strong><br />

- Analyser le comportement d'une application <strong>Java</strong> et en accroître<br />

les performances<br />

Participants<br />

Développeurs <strong>Java</strong> expérimentés<br />

Pré-requis<br />

Solide expérience pratique du langage de programmation <strong>Java</strong> et<br />

maîtrise de ses concepts fondamentaux<br />

Contenu<br />

Programmation multi-tâches<br />

Concepts liés au multi-tâches<br />

Threads OS et Threads <strong>Java</strong><br />

Programmer <strong>avec</strong> des Threads<br />

Problèmes spécifiques au multi-tâches<br />

Problèmes de conception associés<br />

Concepts avancés<br />

Impact sur les performances<br />

Entrées / sorties<br />

Flux d'objets et sérialisation avancée<br />

Nouvelles entrées / sorties (NIO)<br />

Encodage des flux de caractères<br />

Gestion de la mémoire<br />

Modèle de mémoire <strong>Java</strong><br />

Garbage collection, spécifications et algorithmes<br />

Options de la JVM<br />

Objets références<br />

Pools d'objets<br />

Réflexion<br />

Vue d'ensemble<br />

Introspection de classes<br />

Manipuler des objets<br />

Manipuler des tableaux<br />

Contraintes de sécurité<br />

Proxys dynamiques<br />

Class<br />

Loaders et manipulation de classes au chargement<br />

Sécurité <strong>Java</strong><br />

Problématiques et principes de sécurité<br />

Sécurité de niveau langage<br />

Sécurité de la JVM<br />

API de sécurité (JAAS, JCE, JSSE)<br />

Sécurité du navigateur Web<br />

Signature des programmes <strong>Java</strong><br />

Annotations <strong>Java</strong> 5<br />

Principe des annotations<br />

Annotations prédéfinies<br />

Définir ses propres annotations<br />

Processeurs d'annotations (Metadata Driven Development)<br />

Exemples d'utilisation<br />

Mises en garde<br />

73<br />

Nouveautés <strong>Java</strong><br />

Apports du JDK 1.5<br />

JDK 1.6 et après<br />

Profiling et optimisation<br />

Stratégie d'optimisation<br />

Techniques d'optimisation<br />

Optimisations par le compilateur et la JVM, JIT<br />

Coût des opérations <strong>Java</strong><br />

Diagnostics et Profiling


<strong>Java</strong>, programmation<br />

graphique <strong>avec</strong> swing<br />

Durée 4 jours<br />

Objectifs<br />

Ce cours vous apportera les éléments nécessaires pour maîtriser<br />

la complexité du toolkit graphique Swing. A l'issue de ce cours,<br />

vous serez en mesure de construire des interfaces graphiques<br />

utilisant les composants Swing.<br />

Participants<br />

Informaticiens<br />

Pré-requis<br />

Ce cours de niveau avancé, est destiné à des participants ayant<br />

déjà une pratique du langage <strong>Java</strong>. Une connaissance du toolkit<br />

graphique AWT serait un plus. Ce cours ne comprend pas de<br />

présentation du langage.<br />

Contenu<br />

Introduction<br />

L'architecture graphique de <strong>Java</strong>, Swing et AWT.<br />

Les différents API des <strong>Java</strong> Foundation Classes.<br />

Le modèle de composants de Swing : les <strong>Java</strong>Beans.<br />

Introduction aux <strong>Java</strong>Beans<br />

La communication par événements, les interfaces listener, les<br />

sources d'événements.<br />

Les propriétés, les propriétés liées, les événements<br />

PropertyChange.<br />

Swing, principes généraux<br />

Les API des "<strong>Java</strong> Foundation Classes" : Accessibility, Swing,<br />

<strong>Java</strong>2D, Drag&Drop.<br />

Swing comme modèle de programmation objet : le concept<br />

"modèle/vue/contrôleur" (MVC), les modèles de données et la<br />

délégation d'interface, la communication entre modèle et<br />

interface.<br />

Swing et AWT : intégration, compatibilité, extensions, composants<br />

"lightweight" et "peer-based".<br />

Un index des composants Swing.<br />

Les composants simples<br />

Premiers composants : JLabel, Jbutton.<br />

L'organisation des composants dans une interface : les<br />

conteneurs, un conteneur simple : la fenêtre.<br />

Les gestionnaires de placement ("layout managers") :<br />

fonctionnalités, quelques gestionnaires simples.<br />

Les images : chargement, utilisation.<br />

Les composants Swing<br />

Les fonctionnalités génériques : les bordures, les bulles d'aide.<br />

La classe JComponent.<br />

Le "look-and-feel" Swing : le "pluggable look-and-feel", les<br />

différents "look and feel". Les composants conteneurs<br />

Compléments sur les conteneurs et les gestionnaires de<br />

placement : les interactions entre les composants, le conteneur et<br />

le gestionnaire de placement, la hiérarchie des conteneurs.<br />

Le conteneur universel : Jpanel.<br />

Les composants conteneurs standards : les fenêtres, les<br />

fenêtres internes.<br />

Les composants d'organisation : les boîtes à onglets, les fenêtres<br />

à séparation.<br />

La gestion de l'interaction<br />

Les différents types de boutons.<br />

La saisie de texte simple : champ de texte, zone de texte.<br />

Les barres de menus et les barres d'outils.<br />

La standardisation de l'interaction : les objets Action, l'utilisation<br />

des KeyMap.<br />

Les dialogues : la classe Joption<br />

Pane et les dialogues standards, la construction de dialogues.<br />

Les dialogues spécifiques : la sélection de fichiers, le<br />

sélectionneur de couleur.<br />

74<br />

Les composants à modèles de données complexes<br />

L'utilisation du concept "modèle/vue/contrôleur" : la séparation<br />

entre données et représentation, la communication entre le<br />

modèle et la représentation, les modèles de données simples.<br />

Les modèles de données Swing : les listes et la classe JList, les<br />

tables et la classe JTable, les arbres et la class JTree.<br />

L'utilisation des modèles de données : les modèles par défaut, les<br />

modèles abstraits, l'implémentation d'un modèle de données.<br />

Les composants d'édition : le modèle de document, la classe<br />

JEditorPane, l'affichage de pages HTML.<br />

La création de composants Swing<br />

Le mécanisme d'affichage de Swing : le "double buffering", le<br />

mécanisme d'affichage d'un composant, la classe Paint<br />

Manager, la mise au point et l'optimisation de l'affichage.<br />

Introduction à <strong>Java</strong>2D.<br />

Compléments<br />

Swing et le multi-threading : la gestion des composants dans une<br />

application multi-threadée.<br />

Swing et les différentes versions de <strong>Java</strong>, Swing et les applets.<br />

Le glisser-déposer (drag&drop).<br />

Implémentation d'un mécanisme "undo/redo".<br />

Travaux pratiques : Les exercices seront structurés autour de la<br />

réalisation d'un navigateur HTML simple et introduiront<br />

progressivement les composants Swing<br />

Construction d'une interface graphique simple : fenêtre, boutons,<br />

labels.<br />

Implémentation des interfaces listener.<br />

Utilisation de menus, de barres d'outils et d'objets Action.<br />

Création de dialogues.<br />

Affichage de documents HTML.<br />

Implémentation d'un modèle de données, utilisation du composant<br />

JList.


<strong>Développement</strong> d'un client<br />

riche <strong>avec</strong> SWT et Eclipse<br />

RCP<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation SWT-JFace vous permettra, non seulement de<br />

créer vos IHM <strong>Java</strong> en utilisant les puissantes bibliothèques SWT<br />

et JFace, mais aussi d'automatiser le déploiement et les mises à<br />

jour de vos applications.<br />

Ce cours apportera des réponses pratiques à tous ceux qui se<br />

demandent : "Quelle API graphique utiliser en <strong>Java</strong> ?", "Qu'est-ce<br />

qu'Eclipse RCP ?", "Quelle différence entre Eclipse RCP et un<br />

plug-in Eclipse ?".<br />

Vous allez apprendre à:<br />

- Connaître différents modes de déploiement automatique<br />

d'applications <strong>Java</strong><br />

- Etre capable de développer une IHM <strong>avec</strong> SWT<br />

- Identifier les apports de l'API JFace dans l'élaboration<br />

d'interfaces graphiques<br />

- Comprendre ce qu'est un client riche et l'apport d'Eclipse RCP<br />

(Rich Client Platform)<br />

- Savoir personnaliser Eclipse en lui ajoutant des fonctionnalités<br />

Participants<br />

Développeurs, architectes<br />

Pré-requis<br />

Connaissances de <strong>Java</strong> et une expérience pratique de la plateforme<br />

Eclipse<br />

Travaux pratiques<br />

Les travaux pratiques sont réalisés <strong>avec</strong> : Librairies SWT et<br />

JFace, Eclipse, <strong>Java</strong> WebStart, Tomcat<br />

Contenu<br />

Technologies et architectures sur le poste client<br />

Du client / serveur au client riche<br />

Standards d'implémentation et de communication<br />

Problématiques de déploiement<br />

Fondamentaux SWT<br />

Containers de base : Display et Shell<br />

Principaux composants SWT<br />

Les conteneurs simples Group et Canvas<br />

Le conteneur Composite et ses Layouts associés<br />

Gestion des événements : Listener, Adapter et Event<br />

Composants évolués<br />

Structures complexes : tableaux et listes déroulantes ou<br />

arborescentes<br />

Composants spéciaux vs. composants natifs<br />

Composants et édition graphique<br />

API JFace<br />

JFace et SWT<br />

Gestion des ressources<br />

Actions, menus et assistants (Wizards)<br />

Gestion des préférences<br />

Déployer une application<br />

Portabilité des applications SWT<br />

Approche <strong>Java</strong> WebStart<br />

L'approche socle applicatif : Eclipse<br />

Développer un plug-in Eclipse<br />

Architecture Eclipse : plug-in, fragment et Feature<br />

PDE, l'environnement de développement de plug-ins<br />

Packager et déployer un plug-in<br />

Internationaliser un plug-in<br />

Identifier et remplacer les libellés à internationaliser<br />

Automatisation de l'internationalisation<br />

75<br />

Eclipse, un client riche<br />

Faire d'Eclipse un client RCP<br />

Personnaliser le client RCP en fonction de la plate-forme<br />

Automatiser les mises à jour du client


<strong>Java</strong> et XML<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation <strong>Java</strong> et XML aborde les principaux problèmes<br />

auxquels sont confrontés les concepteurs et développeurs<br />

d'applications XML <strong>Java</strong>, comme la création de documents XML,<br />

leur stockage dans une base de données ou leur validation et leur<br />

manipulation <strong>avec</strong> <strong>Java</strong>. Il permet également aux architectes de<br />

comprendre la place et le rôle des technologies XML dans une<br />

architecture distribuée. A noter que certains outils de mapping<br />

objet / XML sont aussi abordés à travers une série de travaux<br />

pratiques.<br />

A l'issue de cette formation, vous serez à même de répondre aux<br />

questions du type : "Comment éliminer le couplage entre mon<br />

application <strong>Java</strong> et un parseur XML particulier ?", "Quelle API est<br />

préférable (performances, occupation mémoire) dans les phases<br />

de création, de modification ou simplement de lecture d'un<br />

document XML ?".<br />

Vous allez apprendre à:<br />

- Identifier les standards XML proposés par la plate-forme <strong>Java</strong><br />

(JAXP, JAXB, JAXM...)<br />

- Lire des messages XML issus d'applications <strong>Java</strong> à l'aide de<br />

SAX2, DOM2 et d'autres technologies de type DOM (DOM4J)<br />

- Manipuler et parcourir des messages XML à l'aide de DOM2,<br />

DOM4J et XPath<br />

- Appréhender la notion de mapping objet / XML et la raffiner<br />

- Enregistrer des documents XML dans un système de stockage<br />

- Effectuer des transformations XSL en <strong>Java</strong><br />

- Diffuser sur plusieurs canaux (HTML, PDF, etc.) un document<br />

XML<br />

Participants<br />

Développeurs, architectes<br />

Pré-requis<br />

Expérience du développement <strong>avec</strong> <strong>Java</strong> et connaissances<br />

basiques d'XML.<br />

Travaux pratiques<br />

Les travaux pratiques sont réalisés <strong>avec</strong> : Environnement de<br />

développement <strong>Java</strong>, Processeurs XSL, Editeurs et parseurs<br />

XML, Navigateur Web<br />

Contenu<br />

Introduction<br />

Standards de la plate-forme <strong>Java</strong><br />

Les documents XML et <strong>Java</strong><br />

Lecture d'un document XML <strong>avec</strong> SAX et DOM<br />

Traitement d'un document XML <strong>avec</strong> les API <strong>Java</strong> (JAXP)<br />

Le modèle DOM (Document Object Model) et autres API<br />

arborescentes (JDOM, DOM4J)<br />

Mapping objet / XML<br />

Solutions de mapping objet / XML<br />

Générateur de classes et personnalisation<br />

Implémentation en <strong>Java</strong> du mapping objet / XML<br />

Persistance des données XML<br />

Solutions de stockage<br />

Langages de requêtes XML<br />

Stockage de données XML depuis une application <strong>Java</strong><br />

Les transformations XSL en <strong>Java</strong><br />

Transformations XSLT<br />

Traitement d'un document XML <strong>avec</strong> l'API TraX<br />

Pipeline de transformations<br />

Optimisation des performances<br />

Framework de présentation XML et génération de document<br />

Présentation d'une solution de diffusion multi-canal en <strong>Java</strong><br />

Génération d'un document PDF à partir d'un document XML<br />

XSLFO standard pour la génération de document<br />

76


Concevoir <strong>avec</strong> les Design<br />

Patterns<br />

Durée 5 jours<br />

Objectifs<br />

Au travers d'études de cas incluant une implémentation dans un<br />

langage objet (<strong>Java</strong>, C++, C#), vous découvrirez et appliquerez<br />

une vingtaine des Patterns les plus utilisés dans l'industrie du<br />

logiciel, en particulier ceux du GoF. Au delà de la connaissance<br />

des Patterns, cette mise en oeuvre pratique vous permettra de<br />

comprendre les principes essentiels de la conception objet et la<br />

place qu'y occupent les Design Patterns, <strong>avec</strong> leurs avantages et<br />

leurs limites.<br />

Au travers de cette formation Design Patterns, vous trouverez une<br />

réponse aux questions suivantes : "Quels sont les Patterns les<br />

plus usités et quelle est leur valeur ajoutée ?", "Comment limiter<br />

le couplage entre composants logiciels ?", "Comment renforcer<br />

l'évolutivité d'une conception ?", "Comment améliorer la qualité du<br />

code en mettant en oeuvre les tests unitaires et le refactoring ?".<br />

Vous allez apprendre à:<br />

- Maîtriser les principes fondamentaux de la conception objet<br />

- Replacer la conception objet au sein d'un processus itératif agile<br />

: tests unitaires, développement par le test et refactoring<br />

- Connaître et mettre pragmatiquement en oeuvre les Design<br />

Patterns au sein d'une conception objet<br />

- Découvrir quelques Patterns d'architecture logicielle tels que le<br />

Pattern MVC, ainsi que les principes de Frameworks<br />

- Concevoir des systèmes mettant en oeuvre des composants<br />

logiciels réutilisables<br />

- Structurer les applications orientées objet en packages en<br />

utilisant des mesures quantitatives de couplage et de cohésion<br />

- Améliorer une application existante en utilisant les principes du<br />

refactoring combinés aux Design Patterns<br />

Participants<br />

Développeurs objet, concepteurs et architectes souhaitant<br />

acquérir des compétences en matière de conception <strong>avec</strong> les<br />

Design Patterns<br />

Pré-requis<br />

Connaissances en conception objet <strong>avec</strong> UML. Expérience<br />

concrète d'un langage de programmation objet<br />

Contenu<br />

Introduction aux Design Patterns<br />

Principes fondamentaux de conception<br />

Rappels des Patterns Grasp d'affectation des responsabilités<br />

Principe d'ouverture / fermeture (OCP)<br />

Inversion des dépendances (DIP)<br />

Substitution de Liskov (LSP)<br />

Séparation des interfaces (ISP)<br />

Conception objet et méthodes de développement agiles<br />

Le Processus Unifié, XP<br />

Tests unitaires et programmation par les tests<br />

Définition et principes du refactoring<br />

Les outils du développement agile<br />

Les Design Patterns du GoF et autres Patterns<br />

Les Design Patterns de comportement (itérateur, stratégie,<br />

Template Method, état, observateur, médiateur, visiteur)<br />

Les Design Patterns de création (singleton, fabrique abstraite,<br />

Builder)<br />

Les Design Patterns de structure (composite, pont, adaptateur,<br />

décorateur, façade, Proxy, Extension Object, Value Object)<br />

Patterns et architecture<br />

Couches logicielles<br />

Modèle Vue Contrôleur (MVC)<br />

Frameworks<br />

Approche par composants<br />

77<br />

Organiser un modèle et en contrôler la qualité<br />

Organisation en Packages<br />

Métriques de Packages<br />

Le refactoring<br />

Quelques "mauvaises odeurs"<br />

Exemples de refactoring<br />

Refactoring vers les Design Patterns


Programmer <strong>avec</strong> les<br />

aspects et les Design<br />

Patterns<br />

Durée 3 jours<br />

Objectifs<br />

Lors de cette formation Design Patterns et aspects, vous<br />

découvrirez par la pratique et appliquerez la conception et la<br />

programmation orientée aspect, sur les plates-formes .Net et <strong>Java</strong><br />

EE. Vous apprendrez à utiliser les tisseurs d'aspect les plus<br />

puissants et à améliorer la conception de vos applications en<br />

séparant encore davantage les responsabilités de chaque<br />

composant.<br />

A travers ce cours, vous trouverez une réponse aux questions<br />

suivantes : "Qu'est-ce qu'un aspect, un tisseur d'aspect, une zone<br />

de greffe ?", "Quel est l'impact de la programmation orientée<br />

aspect sur la conception des applications orientées objet ?".<br />

Vous allez apprendre à:<br />

- Comprendre la notion d'aspect, de zone de greffe et de tissage<br />

- Identifier les limites de la conception orientée objet<br />

- Tisser des aspects sur du code <strong>Java</strong> et .Net<br />

- Mieux séparer les responsabilités<br />

- Appliquer les Design Patterns par tissage d'aspects<br />

Participants<br />

Développeurs <strong>Java</strong> ou .Net, concepteurs objet<br />

Pré-requis<br />

Expérience de la programmation objet (<strong>Java</strong>, C++, C#, VB.NET),<br />

connaissance minimale des Design Patterns<br />

Travaux pratiques<br />

Les travaux pratiques sont réalisés <strong>avec</strong> :AspectJ, JBossAOP,<br />

AspectDNG<br />

Contenu<br />

Introduction<br />

Introduction à la Programmation Orientée Aspect (AOP)<br />

Identification des problèmes de conception<br />

Problèmes récurrents<br />

Design Patterns : un élément de réponse<br />

Aspects : la réponse complémentaire<br />

Premiers tissages<br />

Enrichir le code d'une bibliothèque existante (<strong>Java</strong>, .Net)<br />

Implémenter un mécanisme de traces, de statistiques<br />

Fonctionnement d'un tisseur d'aspects<br />

AspectJ<br />

AspectDNG<br />

Autres tisseurs disponibles<br />

Tissages avancés<br />

Tisser les Design Patterns (observateur, visiteur)<br />

Implémenter un Framework de persistance transparent<br />

Enrichir un tisseur d'aspects<br />

Aspects problématiques...<br />

Débogage d'applications tissées<br />

Organisation de projet, séparation des responsabilités<br />

78


Hibernate, framework<br />

Open Source<br />

Durée 3 jours<br />

Objectifs<br />

Hibernate offre une solution élégante et robuste à la<br />

problématique de persistance des objets <strong>Java</strong>. Son formidable<br />

succès auprès de la communauté des développeurs a rendu cette<br />

librairie incontournable et a inspiré les nouveaux standards <strong>J2EE</strong><br />

(EJB3 et <strong>Java</strong> API persistance de <strong>J2EE</strong>5). Ce stage a comme<br />

objectif d’aborder tous les aspects de l’Object Relational Mapping<br />

et les solutions apportées par Hibernate. Après le rappel de la<br />

problématique, les participants réalisent des travaux pratiques<br />

progressifs qui leurs permettront de mettre en œuvre un cas<br />

d’utilisation complet d’une application web. Des patterns<br />

architecturaux sont présentées et pourront être réutilisés dans<br />

des projets industriels.<br />

Participants<br />

Ce cours s’adresse à des programmeurs, développeurs, chefs de<br />

projet désireux d’acquérir les bases nécessaires pour le<br />

développement <strong>avec</strong> Hibernate.<br />

Pré-requis<br />

Connaître <strong>Java</strong><br />

Travaux pratiques<br />

Les travaux pratiques utilisent le serveur Tomcat ainsi que l’IDE<br />

Eclipse.<br />

Contenu<br />

Introduction à la problématique de persistance<br />

Origines du problème.<br />

Les facettes de l'impédance mismatch<br />

Architectures de la persistance<br />

Historique des solutions (JDBC, JDO, Hibernate)<br />

Rappel sur JDBC / SQL et ses limites<br />

Travaux Pratiques :Réalisation du TP1 (persistance à l'aide de<br />

JDBC suivant le pattern DAO)<br />

Premier pas <strong>avec</strong> Hibernate - mapping de l'identité<br />

Installer Hibernate<br />

Initialiser le framework Hibernate<br />

Opérations CRUD sur les objets<br />

Identité d'objet et cycle de vie<br />

Travaux Pratiques :Réalisation du TP2 (reprise du TP1 <strong>avec</strong><br />

Hibernate)<br />

Mapping de l'héritage<br />

Le problème du mapping de l'héritage<br />

Notion de relations polymorphes<br />

Approche : une table par classe concrète<br />

Approche : une table par hiérarchie<br />

Approche : une table par classe.<br />

Travaux Pratiques :Réalisation du TP3 (enrichissement du TP2<br />

<strong>avec</strong> l'héritage)<br />

Mapping des associations<br />

Association et navigation.<br />

Association 1-N, N-1, N-N<br />

Composition<br />

Classe association<br />

Travaux Pratiques :Réalisation du TP4 (enrichissement du TP3<br />

<strong>avec</strong> plusieurs types d'associations)<br />

79<br />

Accès en lecture aux objets (HQL, API Criteria et requêts SQL)<br />

Le pattern Lazy Loading.<br />

Usage de HQL<br />

Usage de l'API Criteria<br />

Usage des SQL Query<br />

Travaux Pratiques :Réalisation du TP5 (requêtes bâties sur le<br />

TP4)<br />

Accès en lecture aux objets (HQL, API Criteria et requêts SQL)<br />

Principe de persistance transitive.<br />

Attachement / détachement des objets d'une session<br />

Supprimer une grappe d'objets<br />

Gestion des transactions<br />

Rappel sur la notion de transaction<br />

Transaction et concurrence d'accès<br />

Niveaux d'isolation<br />

Stratégies de contrôle de la concurrence<br />

Gestion optimiste<br />

Gestion pessimiste<br />

Notion de transaction utilisateur<br />

Architecture et Hibernate<br />

Architecture d'Hibernate.<br />

Comment gérer la session Hibernate (pattern du ThreadLocal)<br />

Comment programmer des règles métiers (frontière métier / accès<br />

aux données)<br />

Usage du Pattern Data Access Object (DAO) <strong>avec</strong> Hibernate<br />

Comment gérer les transactions utilisateurs <strong>avec</strong> Hibernate<br />

Intégrer Hibernate dans une application web.<br />

Réalisation du TP6 (codage d'un cas d'utilisation complexe)<br />

Travaux Pratiques :Réalisation du TP (Cas d'utilisation complet)


Gestion avancée de la<br />

persistance <strong>avec</strong> Hibernate<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Hibernate permet de mettre le doigt sur les points<br />

essentiels à maîtriser afin de développer efficacement et<br />

d'optimiser les performances d'Hibernate. Il permet aussi de<br />

savoir quels sont les contrôles à effectuer en priorité lorsque<br />

l'équipe de développement manque d'expérience.<br />

Cette formation Hibernate est destinée à tous ceux qui souhaitent<br />

savoir : "Comment optimiser l'utilisation de la session<br />

Hibernate ?", "Comment adopter les stratégies les plus adaptées<br />

au chargement des données de la base de données ?",<br />

"Comment utiliser à bon escient le cache de second niveau ?",<br />

"Comment évaluer l'incidence de l'utilisation d'Hibernate sur le<br />

modèle de programmation <strong>Java</strong> ?".<br />

Vous allez apprendre à:<br />

- Gérer efficacement la session Hibernate<br />

- Choisir la stratégie la plus adaptée à l'extraction des données<br />

- Mettre en oeuvre une architecture technique multi-niveau<br />

adaptée à Hibernate<br />

- Utiliser Hibernate Search<br />

- Paramétrer le cache de second niveau<br />

- Effectuer des mappings complexes<br />

Participants<br />

Utilisateurs avertis du Framework Hibernate<br />

Pré-requis<br />

Connaissance pratique du langage <strong>Java</strong> et du Framework<br />

Hibernate<br />

Travaux pratiques<br />

Les travaux pratiques sont réalisés <strong>avec</strong> : Eclipse, Hibernate 3.2<br />

Contenu<br />

Gérer la session<br />

La Session Factory<br />

Les sessions contextuelles<br />

Synchronisation des objets persistants <strong>avec</strong> la base de données<br />

(Flush, Merge...)<br />

Persistance transitive et détachement<br />

Moniteur de performance : la Session Factory<br />

Les transactions<br />

Utilisation de transactions optimistes<br />

Maîtriser les verrous en base<br />

Ecrire efficacement la classe d'un objet persistant Accès<br />

direct aux attributs<br />

Gestion de l'ID d'une classe<br />

Gestion des associations managées<br />

Redéfinition des méthodes Equals et Hashcode<br />

Modèle dynamique de classe<br />

Extraction efficace des données de la base Lazy Loading et<br />

autres stratégies<br />

Hibernate Query Language (HQL) avancé<br />

SQL natif et procédures stockées<br />

Cas de mapping complexe<br />

Cache second niveau<br />

Les différentes stratégies<br />

Le cache de requête<br />

Hibernate Search Présentation<br />

Indexation des entités<br />

80


Programmation pilotée par<br />

les tests en <strong>Java</strong><br />

Test Driven Developpement<br />

Durée 3 jours<br />

Objectifs<br />

Le développement piloté par les tests propose un garde-fou aux<br />

activités de développement fournissant de nombreux avantages<br />

de productivité, de simplicité du code, de non-régression,<br />

d'initiatives de refactoring. Sa mise en pratique au quotidien<br />

demande un outillage et de nouvelles habitudes qui constituent<br />

l'axe essentiel de cette formation.<br />

Cette formation Test Driven vous montrera "Pourquoi écrire vos<br />

tests en premier ?", "Comment l'écriture des tests peut être<br />

simple et rapide ?", "Comment cette pratique améliore<br />

sensiblement le cycle de développement ?", "Pourquoi cette<br />

approche est adaptée à vos projets ?".<br />

Vous allez apprendre à:<br />

- Améliorer votre code grâce aux tests unitaires<br />

- Eviter des problèmes en testant préalablement<br />

- Connaître les différents types de tests<br />

- Utiliser les techniques sophistiquées d'écriture de tests<br />

- Automatiser l'exécution des tests et les rapports d'erreurs<br />

- Combiner l'approche Test First <strong>avec</strong> d'autres pratiques agiles<br />

Participants<br />

Développeurs <strong>Java</strong>, responsables tests, chefs de projet,<br />

responsables qualité<br />

Pré-requis<br />

Pratique du développement <strong>avec</strong> <strong>Java</strong>.<br />

Contenu<br />

Le pilotage par les tests<br />

Motivation<br />

L'approche classique et ses limitations<br />

Les types de tests<br />

Boîte noire / boîte blanche<br />

Tests unitaires et tests d'intégration<br />

Tests fonctionnels<br />

Bonnes pratiques<br />

Ecrire juste assez de code<br />

Tester la spécification<br />

Simplifier les tests<br />

Ecrire les tests pour identifier les défauts<br />

Passer tous les tests<br />

Eliminer le code dupliqué<br />

Tests unitaires <strong>avec</strong> JUnit<br />

Le Framework JUnit<br />

Cas et suites de tests<br />

TestRunner<br />

Alternative et outillage complémentaire (TestNG)<br />

Tests dans des situations particulières Tests EJB<br />

Tests Web (Cactus et HttpUnit)<br />

Tests d'interface graphique<br />

Tests de code hérité, TMA<br />

Les Mock Objects<br />

Quand les créer<br />

Simplifier leur création<br />

Autres techniques de leurre<br />

Tests fonctionnels<br />

Liens entre tests unitaires et tests fonctionnels<br />

Ecriture d'un test Fit<br />

Liens entre tests et autres pratiques agiles<br />

Conception simple<br />

Techniques de refactoring<br />

Intégration continue<br />

81


Sécurité <strong>Java</strong><br />

Durée 2 jours<br />

Objectifs<br />

Cette formation sécurité java vous permettra de connaître les<br />

risques potentiels dans l'utilisation de <strong>Java</strong>, et les parades à<br />

mettre en oeuvre.<br />

Participants<br />

Toute personne désirant approfondir ses connaissances en<br />

langage <strong>Java</strong> au niveau de la sécurité des applications.<br />

Pré-requis<br />

Il est demandé aux participants de connaître les notions de base<br />

du langage <strong>Java</strong>.<br />

Travaux pratiques<br />

De nombreux travaux pratiques illustrent les différents chapitre ce<br />

cours<br />

Contenu<br />

Besoins<br />

Les risques : en fonction des différents modes d'utilisation de<br />

<strong>Java</strong> (applets, application, servlets)<br />

Sécurisation de la JVM<br />

Limites naturelles imposées par <strong>Java</strong> : gestion mémoire.<br />

Contrôle du bytecode par la machine virtuelle.<br />

Mise en œuvre du SecurityClassLoader<br />

Protection de l'exécution<br />

Exécution protégée : SecurityManager, ClassLoader.<br />

Surcharge des méthodes d'accès: lecture, écriture, exécution,<br />

ouverture de socket, autorisation de connexions...<br />

TP Protection des accès sur le disque local d'une application.<br />

Chiffrement<br />

Mécanisme de signature.<br />

Création de clés publiques et privées.<br />

Les clés RSA, DSA.<br />

Signature d'un document.<br />

Les algorithmes SHA1withDSA, MD5withRSA.<br />

Les MessageDigest.<br />

Les algorithmes MD2, MD5, SHA-1, SHA-512TP<br />

Vérification de l'authenticité d'un document<br />

Certificats<br />

Cycle de vie d'un certificat.<br />

La fabrique de certificats <strong>Java</strong>.<br />

Les certificats de modification X509.<br />

Contrôle<br />

Rappel sur les ACL.<br />

Le paquetage java.security.acl. Ajout d'entrée, vérification<br />

d'accès.<br />

82


<strong>Java</strong> Temps Réel et<br />

Embarque - <strong>Java</strong> 2 Micro<br />

Edition<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation à pour objectif de comprendre le fonctionnement<br />

de J2ME, savoir élaborer l'architecture et choisir les outils à<br />

mettre en œuvre en fonction du matériel concerné.<br />

Participants<br />

Développeurs <strong>Java</strong> souhaitant programmer <strong>avec</strong> <strong>Java</strong> 2 Micro<br />

Edition.<br />

Pré-requis<br />

Il est demandé aux participants de connaître les bases du<br />

langage <strong>Java</strong>.<br />

Contenu<br />

Présentation<br />

Le besoin<br />

Les applications embarquées, les objets disposant de ressources<br />

restreintes (téléphones mobiles, PDA, etc.)<br />

Fonctionnement de J2ME<br />

Les optimisations java par rapport à un jre.<br />

Les machines virtuelles, configurations et profils adaptés à<br />

chaque type de matériel<br />

Les deux types de terminaux<br />

Téléphones mobiles et PDA (configuration CLDC)<br />

Les terminaux connectés (configuration CDC)<br />

CLDC<br />

La notion de KVM<br />

Les limites<br />

Les profils MIDP<br />

CDC<br />

La machine virtuelle CDM<br />

Les profils CDC<br />

Programmation J2ME<br />

Organisation d'une midlet<br />

Les midlets exemples : Application graphique de base <strong>avec</strong><br />

menu, application client/serveur entre un téléphone portable et un<br />

serveur<br />

J2ME Wireless Toolkit<br />

Les API<br />

Bluetooth, J2ME Web Services, Security and Trust Services,<br />

Mobile Media<br />

83


Tests unitaires des<br />

applications <strong>Java</strong><br />

Durée 3 jours<br />

Objectifs<br />

Ce cours "tests unitaires des applications java" se concentre sur<br />

les outils disponibles en OpenSource permettant d’automatiser<br />

les tests d’ une web application <strong>Java</strong>.<br />

Le test est une activité indispensable pour l’obtention<br />

d’applications de qualité sujettes à des évolutions fonctionnelles<br />

régulières. Les dernières méthodologies de production comme<br />

l’eXtreme Programming place le test comme activité centrale<br />

dans le processus de production d’application. Ce cours axé<br />

fortement sur la pratique, permettra aux stagiaires de mettre en<br />

place sur une application typique les différents types de tests<br />

usuels.<br />

Participants<br />

Ce cours s’adresse à tout développeur, chef de projet ou<br />

architecte impliqués dans la réalisation d’applications <strong>Java</strong> <strong>J2EE</strong>.<br />

Pré-requis<br />

<strong>Java</strong><br />

Travaux pratiques<br />

Utilisation du serveur Tomcat et de l’IDE Eclipse<br />

Contenu<br />

Introduction aux tests des applications <strong>J2EE</strong><br />

Qu'est ce que le test ? Sa problématique et son importance<br />

Les types de tests : tests unitaires, test d'intégration, tests<br />

fonctionnels, tests de charge, ...<br />

Les moyens : les plates-formes de test, l'instrumentation,<br />

l'automatisation, l'organisation des activités de test<br />

Tests et conduite de projet : Problématique de l'organisation des<br />

tests, comment gérer l'incertitude, la documentation liée aux tests<br />

Test et méthodologies : Tests et USDP, Tests et UML, l'approche<br />

eXtreme Programming<br />

Particularités des applications <strong>J2EE</strong> : différence entre les tiers,<br />

prise en compte de la concurrence, notion d'anomalies<br />

Tests unitaires et JUnit<br />

La finalité des tests unitaires<br />

Le test, pourquoi s'en priver ? la simplicité de JUnit<br />

Séparation de la classe Test et de la classe à tester<br />

Définition de la classe de tests et des cas de tests<br />

Mise en place des suites de tests<br />

L'automatisation des tests <strong>avec</strong> Ant<br />

JUnit et Eclipse, plug-ins disponibles, paramétrage de<br />

l'environnement, écriture des cas de tests, des suites des tests,<br />

exécution du test.<br />

Travaux Pratiques Générer les classes de test d'un projet<br />

existant, les exécuter <strong>avec</strong> Ant.<br />

Tests fonctionnels HttpUnit<br />

Différence entre scénarios enregistrés et utilisation d'API<br />

L'Approche d'HttpUnit : Test-first development, l'importance des<br />

cas d'utilisation<br />

Différentes versions, installation et dépendances <strong>avec</strong> les autres<br />

librairies openSource<br />

Parcours de l'API disponible<br />

La classe WebConversation, les utilitaires pour parser la réponse<br />

Combiner JUnit et HttpUnit<br />

Extensions d'HttpUnit<br />

Travaux Pratiques Création d'un script Ant (clean, deployement<br />

and testing), Création des classes de test à partir des use cases,<br />

Test d'une application de gestion des contacts<br />

84<br />

Tests de montée en charge <strong>avec</strong> JMeter<br />

Présentation du projet Jakarta,<br />

Introduction à la notion de plan de test, les différents éléments<br />

disponibles<br />

Particularités des applications Web<br />

Les groupes de processus, les contrôleurs, les différents listeners<br />

Construction d'un plan de test par enregistrement<br />

Mise en place de la plate-forme de test, les différentes alternatives,<br />

le remote testing<br />

Exécution le plan de test et analyse des résultats.<br />

Les best practices<br />

Travaux Pratiques Benchmarking de l'application de gestion des<br />

contacts<br />

Profiling <strong>avec</strong> Hprof<br />

L'outil HProf de SUN, différences entre les versions disponibles<br />

Mécanisme de HProf, interactions entre la JVM et HProf, incidence<br />

sur l'exécution<br />

Démarrage et différentes options disponibles de HProf<br />

Panorama de l'offre des outils d'analyse<br />

L'outil open source HAT<br />

Travaux Pratiques Exécution de l'application gestion des contacts<br />

<strong>avec</strong> HProf, Commentaires du fichier de sortie, Visualisation <strong>avec</strong><br />

JProfiler


Filière Open Source<br />

85


Les logiciels libres,<br />

synthèse technique<br />

Durée 2 jours<br />

Objectifs<br />

Ce séminaire "Logiciels libres, synthése technique" vous<br />

permettra de faire un point concret sur les domaines couverts par<br />

les logiciels libres, leur diffusion et leur intégration dans votre<br />

architecture. Vous saurez identifier clairement le potentiel et les<br />

limites pour chaque solution Open Source. On vous proposera<br />

également de vous guider dans l’évolution de votre informatique<br />

vers des solutions Open Source. Tous les aspects essentiels<br />

aussi bien du point de vu système que du développement<br />

d’applications seront abordés.<br />

Les informations apportées seront illustrées par des études de<br />

cas de réalisations Open Source en <strong>entreprise</strong>.<br />

Participants<br />

Ce séminaire s'adresse aux décideurs, responsables<br />

informatiques, chefs de projets, développeurs, techniciens<br />

participant à l'évolution et à la mise en oeuvre du système<br />

d'information.<br />

Pré-requis<br />

De bonnes connaissances en informatique.<br />

Contenu<br />

Comprendre l'existence et le développement des logiciels<br />

libres<br />

Une volonté initiale forte : le partage du savoir,<br />

Un organisme fondateur : la « Free Foundation Software »<br />

Comprendre : freeware, shareware, domaine public et logiciel<br />

libre<br />

Le projet GNU<br />

Se repérer dans la galaxie des licences.<br />

Participer, contribuer au développement des logiciels libres. Quel<br />

intérêt pour l'<strong>entreprise</strong> ?<br />

Le modèle du libre<br />

Le modèle de développement<br />

La communauté<br />

Les implications sur le modèle économique : exemples de<br />

réussites, exemples d'échecs<br />

Les enjeux du logiciel libre<br />

L'importance des standards ouverts.<br />

La pérennité du système d'informations.<br />

Les résultats de ce modèle : des logiciels libres devenus<br />

standards<br />

De l'utilisateur final au serveur d'applications<br />

Un exemple phare et déjà intégré: Linux<br />

De Linus Torvalds à aujourd'hui<br />

Les différentes significations du terme Linux,<br />

Ce que Linux prend en charge<br />

Les différentes distributions Linux<br />

Les caractéristiques de Linux<br />

Inventaire techniques,<br />

Les forces et faiblesses de Linux<br />

Linux, les Unix propriétaires et Windows<br />

Le logiciel libre dans le marché actuel<br />

La chronologie du phénomène logiciel libre<br />

Les chiffres actuels et les prévisions,<br />

La position des différents acteurs<br />

Les grands contribuent au développement du logiciel libre<br />

Constructeurs, éditeurs, SSII (IBM, Sun, Oracle, ...)Le rôle de<br />

l'état et des administrations<br />

Les enjeux pour l'Etat français (rapport Cacenac, projets de loi)<br />

Migration, Intégration des logiciels libres<br />

Pourquoi migrer et méthodologie de migration<br />

Les logiciels libres ne sont pas prêts pour tout<br />

Les postes clients traditionnel (bureautiques, PAO, logiciels<br />

métiers),<br />

Les postes utilisateurs expérimentés (développeur,<br />

administrateur),<br />

Back Office (serveurs réseaux, web, messagerie, sécurité ...).Les<br />

difficultés<br />

86<br />

La prise en compte de l'existant,<br />

Interopérabilité <strong>avec</strong> les logiciels propriétaires<br />

Le matériel, le support<br />

Ce qu'apportent les logiciels libres<br />

Fiabilité et robustesse des services,<br />

Economie de licences très importante, mythes ou réalité (exemple<br />

commenté)<br />

Exemples et scénarios concrets de migration<br />

Système de messagerie : de Lotus ou Exchange vers une solution<br />

libre<br />

Le périmètre d'une messagerie (agents, groupware,...)<br />

Les différentes solutions libres (postfix, sendmail, cyrus et les<br />

autres)<br />

Les composantes groupware et les outils utiles<br />

Système de base de données : opportunités de MySQL et<br />

PostgreSQL<br />

Positionnement par rapport à Oracle, Sybase, Informix, SQL<br />

Serveur, Access...<br />

Comparaisons entre MySQL et PostgreSQL<br />

Le cas d'une migration d'Informix vers MySQL<br />

Solution Intranet : d'IIS <strong>avec</strong> pages ASP vers Apache et PHP<br />

Similitudes et ressemblances de ces solutions<br />

Critères essentiels pour une migration (couverture fonctionnelle,<br />

environnement,...)<br />

Exemples de mise en oeuvre<br />

Comparer : Logiciels libres / commerciaux<br />

Aspects généraux<br />

La culture de l'<strong>entreprise</strong><br />

Le piège de la comparaisons par tableaux<br />

Tableau de synthèse<br />

Sélection par domaine (développement, réseau, web, sécurité,<br />

gestion,...)<br />

Caractéristiques et spécificités fonctionnelles<br />

Les applications systèmes<br />

Le serveur Web Apache fonctionnalités et principes<br />

Les bases de donnée MySQL et PostgreSQL, principales<br />

utilisation et limitation<br />

Les logiciels de gestion de contenu et de gestions portails<br />

Moteurs de recherche et outils de statistiques<br />

L'Annuaire d'<strong>entreprise</strong> (Open LDAP) fonctionnalités et principes<br />

Autres composantes du back-office (Serveurs de noms, firewall,<br />

proxies, FTP,...)<br />

Développer un projet Open Source<br />

L'offre en logiciel libre : offre pléthorique<br />

Les outils de développements traditionnels<br />

Les éditeurs, compilateurs C, C++, Perl, tcl<br />

GCC, Kdevelop, Glade<br />

Les toolkits graphiques : GTK (Gnome), QT (KDE)<br />

Les langages de programmation pour le Web<br />

PHP incontournable,<br />

Perl l'ancêtre,<br />

Python le nouveau, <strong>Java</strong> et <strong>J2EE</strong><br />

Le projet Jakarta<br />

Présentation du projet Eclipse, principes de plug-ins.<br />

Les conteneurs de servlets (Tomcat).<br />

Les conteneurs EJB (JBOSS, Jonas).<br />

Les librairies et frameworks (Struts, Cocoon,...)<br />

Les projets connexes (Ant, CVS,XML,...).


Virtualisation <strong>avec</strong> Xen<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation XEN présente une sélection rigoureuse mais<br />

néanmoins complète des connaissances essentielles sur la<br />

Solution XEN de virtualisation. Le but est d'obtenir une réelle<br />

autonomie pour une utilisation au quotidien.<br />

Participants<br />

Toute personne souhaitant mettre en place la virtualisation <strong>avec</strong><br />

Xen<br />

Pré-requis<br />

Une bonne connaissance des systèmes d'exploitation est<br />

nécessaire.<br />

Contenu<br />

Xen Présentation<br />

Introduction aux solutions de virtualisation Xen.<br />

Présentation de l'architecture Xen : l'hyperviseur et les systèmes<br />

hôtes.<br />

Installation<br />

Travaux pratiques d'installation à partir des RPMs.<br />

Configuration et démarrage.<br />

Création d'un domaine.<br />

Arrêt d'un domaine.<br />

Administration<br />

Les outils d'administation : Xend, Xm<br />

Mise en oeuvre de la console d'administration : configuration de<br />

domaines, du réseau.<br />

Mise en production<br />

La gestion des LVM<br />

La gestion des processeurs<br />

Sauvegarde et restauration de domaines<br />

La sécurisation d'une architecture Xen<br />

87


Administrer un Site Web<br />

Open Source, LAMP<br />

Durée 4 jours<br />

Objectifs<br />

Les trois logiciels "Apache, MySQL et PHP" se sont imposés<br />

comme standards de fait pour constituer des sites Web en Open<br />

Source. Même si les plates-formes Unix/Linux restent largement<br />

majoritaires en environnement de production, ces produits ont<br />

également atteint leur maturité dans le contexte Windows. Quel<br />

que soit le système d'exploitation retenu, les compétences de<br />

l’administrateur WEB sont dorénavant multiples. Outre la mise en<br />

œuvre du serveur Apache, il faut administrer le serveur de bases<br />

de données MySQL et savoir lire et modifier les traitements écrits<br />

en PHP. Ce stage pratique vous propose d’acquérir de solides<br />

compétences pour administrer des "serveurs XAMP" : Apache,<br />

MySQL, PHP sous Unix/Linux ou Windows.<br />

Particpants<br />

Développeurs de sites Web, administrateurs système,<br />

"webmestres".<br />

Pré-requis<br />

Il est recommandé d'avoir des notions sur les langages SQL et<br />

HTML.<br />

Travaux pratiques<br />

En ce qui concerne l'installation des produits, les travaux<br />

pratiques seront proposés en environnement Linux. Par la suite,<br />

le système d'exploitation est quasiment transparent par rapport à<br />

l'étude des différents thèmes.<br />

Contenu<br />

Administration Apache<br />

Versions, ressources, documentation<br />

Les modules Apache<br />

Installation via les sources en environnement Linux<br />

Premières directives essentielles du fichier "httpd.conf"<br />

Directives de sécurisation des répertoires<br />

Administration déléguée (fichiers ".htaccess")<br />

Pages personnelles<br />

Authentification des utilisateurs<br />

Gestion des fichiers "logs", outils de statistiques<br />

Mise en œuvre des hôtes virtuels<br />

Programmes CGI<br />

Protocole SSL, certificats<br />

Performances<br />

Travaux pratiques<br />

Installation d'Apache 2 sous Linux depuis l'archive source<br />

Adaptation des directives essentielles, validation de l'installation<br />

Sécurisation de l'accès aux répertoires<br />

Mise en œuvre d'un site personnel <strong>avec</strong> authentification<br />

Mise en œuvre d'hôtes virtuels et d'un hôte "https"<br />

88<br />

Administration MySQL<br />

Versions, ressources, documentation<br />

Panorama des fonctionnalités, apports des versions MySQL 5<br />

Installation depuis une distribution binaire précompilée<br />

Paramétrages de post-installation et premiers tests<br />

Fichiers de configuration<br />

Outil client "mysql"<br />

Création de bases et de tables non transactionnelles MyISAM<br />

Importation et exportation de données<br />

Principes de fonctionnement du système de droits d'accès<br />

Création et gestion des utilisateurs<br />

Tables transactionnelles InnoDB, paramétrages et optimisation<br />

Les différents journaux (erreurs, requêtes, journal binaire,<br />

requêtes lentes)<br />

Sauvegardes et restaurations<br />

Réplication<br />

Gestion des performances, optimisation<br />

Les outils graphiques : "MySQL Administrator" et "MySQL Query<br />

Browser"<br />

Perespectives des versions MySQL 5<br />

Travaux pratiques Installation de MySQL 5 depuis une archive<br />

binaire précompilée<br />

Post-installation et premiers tests<br />

Prise en main de l'outil client "mysql" : création d'une base et de<br />

tables exemples<br />

Importation et exportation de données<br />

Création d'utilisateurs de différents types (administrateur, comptes<br />

pour programmes PHP...)<br />

Création de tables InnoDB (illustration des contraintes d'intégrité<br />

et des transactions)<br />

Sauvegardes (serveur arrêté, serveur en ligne, différents types de<br />

tables...)<br />

Initiation au langage PHP<br />

Versions, ressources, documentation<br />

Installation et intégration dans Apache<br />

Directives de configuration du fichier "php.ini"<br />

Constantes, variables, types de données, tableaux<br />

Opérateurs et expressions, instructions, fonctions<br />

Classes et Objets<br />

Traitement de formulaires HTML<br />

Gestion des fichiers<br />

Accès aux bases de données MySQL<br />

Cookies et sessions<br />

Environnements de développement (EasyPHP, Wampserver,<br />

XAMPP)<br />

Travaux pratiques Installation de PHP 5 depuis l'archive source<br />

Intégration <strong>avec</strong> Apache et MySQL, post-installation et premiers<br />

tests<br />

Étude commentée de programmes "classiques"<br />

Modifications simples dans des programmes d'accès à une base<br />

MySQL


Administration Apache,<br />

l'essentiel<br />

Durée 2 jours<br />

Objectifs<br />

Comprendre les architectures Web et la place d'un serveur<br />

Apache<br />

Savoir installer, configurer, sécuriser et surveiller des serveurs<br />

Apache en production<br />

Se repérer dans les différentes distributions d'un logiciel libre<br />

Participants<br />

Administrateurs Web<br />

Développeurs Web souhaitant piloter son environnement de façon<br />

autonome<br />

Pré-requis<br />

Notions sur les applications Web<br />

Contenu<br />

Rappels sur les architectures Internet et le protocole HTTP<br />

Les architectures Web : définitions, zoom sur architecture clientserveur<br />

Les bases du protocole TCP;IP : définitions, paquets et<br />

encapsulation, modèle réseau TCP;IP, adresses IP et classes<br />

réseaux,...<br />

Le protocole d'application HTTP : requêtes et réponses HTTP,<br />

en-tête HTTP,...<br />

Choix du matériel et plates-formes supportées, exigences<br />

fondamentales d'un serveur, mémoire, interface réseau,<br />

connexion Internet, système d'exploitation<br />

Installation du serveur Apache<br />

Distributions Apache : distribution binaire et source<br />

Compilation d'Apache sous UNIX, sous Win32 <strong>avec</strong> méthodes<br />

automatiques ou manuelles<br />

Mise à jour d'Apache<br />

Lancer, arrêter le serveur Apache<br />

Configuration et administration d'Apache<br />

Configuration de base : fichiers de configuration, travailler <strong>avec</strong><br />

inetd<br />

Tester le serveur Apache : grâce à un arpenteur, par ligne de<br />

commande<br />

Outils graphiques de configuration : commanche, TkApache...<br />

Configuration par répertoire, directives du conteneur<br />

Apache<br />

Accès aux répertoires : contrôle d'accès selon le nom, adresse IP,<br />

en-tête HTTP<br />

Apache et les technologies de génération dynamique de<br />

pages Web<br />

Inclusion côté serveur SSI : activer les SS, format des<br />

commandes SSI Configurer Apache <strong>avec</strong> PHP : fichiers de<br />

configuration et directives<br />

Configurer Apache Jserv<br />

89<br />

Sécurité <strong>avec</strong> Apache<br />

Authentification utilisateur : modules, .htaccess, accès<br />

anonyme, ...<br />

Apache et le protocole d'application SSL : construire et installer la<br />

bibliothèque OpenSSL, mod_ssl, clé privée<br />

Pare-feu (firewall)<br />

Logging sous Apache<br />

Journaux : fichiers journaux et sécurité, statistiques, état du<br />

serveur, server Info<br />

Analyseur d'historiques Analog<br />

Suivi des utilisateurs : <strong>avec</strong> les cookies à l'aide de mod_usertrack,<br />

url <strong>avec</strong> mod_session


Apache, Administrer un<br />

Serveur Web<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation Apache s'articule autour d'une étude détaillée du<br />

serveur Apache, pierre angulaire d'une solution Web Open<br />

Source. Elle détaille Apache en partant de ses fonctions de base<br />

et en complétant par les applications classiques <strong>avec</strong> lesquels il<br />

communique, la sécurité, l'hébergement de plusieurs sites et le<br />

paramétrage de l'ensemble.<br />

Participants<br />

Ce stage est destiné aux personnes ayant à mettre en œuvre ou<br />

à maintenir des serveurs Web dans un contexte Unix-Linux<br />

(administrateurs, exploitants, intégrateurs…).<br />

Pré-requis<br />

Il est nécessaire de posséder de bonnes notions de base sur les<br />

environnements Unix ou Linux et sur les réseaux TCP/IP. Des<br />

compétences d’administration système, sans être obligatoires,<br />

constituent un atout intéressant.<br />

Contenu<br />

Introduction<br />

Présentation générale des services d'un Intranet<br />

Les protocoles<br />

Configuration TCP/IP d'un serveur Unix ou Linux<br />

Rappel<br />

DNS <strong>avec</strong> Bind<br />

Concepts et terminologie du DNS, ressources et documentations<br />

Types de serveurs<br />

Configuration du client DNS<br />

Commandes de test (host, nslookup, dig)<br />

Aspects complémentaires (gestion des traces, dépannage, mises<br />

à jour dynamiques , sous-domaines)Travaux pratiques<br />

Mise en œuvre de serveurs HTTP <strong>avec</strong> Apache<br />

Versions, ressources, documentation<br />

Les modules Apache<br />

Installation depuis les sources<br />

Premières directives essentielles du fichier «httpd.conf»<br />

Directives de sécurisation des répertoires<br />

Administration déléguée (fichiers «.htaccess»)<br />

Personnalisation des pages d'erreurs<br />

Authentification des utilisateursGestion des fichiers de trace,<br />

outils de statistiques<br />

Mise en œuvre des hôtes virtuels<br />

Protocole SSL, certificats, dialogue sécurisé en «https»<br />

Observation et amélioration des performances<br />

Aspects complémentaires (proxy et cache, expressions régulières<br />

et réécriture, négociation de contenu)Travaux pratiques<br />

Installation du logiciel Apache depuis l'archive source<br />

Adaptation des directives essentielles, validation de l'installation<br />

Sécurisation de l'accès aux répertoires<br />

Mise en œuvre d'un site personnel <strong>avec</strong> authentification<br />

Mise en œuvre d'hôtes virtuels<br />

Mise en oeuvre d'un hôte SSL «https»<br />

90<br />

Le Web dynamique<br />

Programmes CGI (mise en œuvre, dépannage, sécurité)<br />

Langage PHP (caractéristiques et versions, compilation et<br />

intégration dans Apache)<br />

Serveurs d'applications <strong>Java</strong> : Exemple de Tomcat<br />

Présentation et architecture de Tomcat<br />

Installation de <strong>Java</strong> et de Tomcat<br />

Mise en place de la collaboration Apache-Tomcat (connecteur AJP<br />

et module mod_jk)<br />

Tests d'accès aux servlets et aux JSPs<br />

Les enjeux concernant la sécurité<br />

Protection des données<br />

La gestion des droits côté système<br />

Les spécificités des services (apache, ftp, postfix)<br />

Restreindre les accès au niveau réseau : Le Filtrage @IP /<br />

servicePar le Firewall, par les Wrappers<br />

Quelques exemples <strong>avec</strong> iptables<br />

Les outils d'audit de la sécurité


Apache, Administrer un<br />

Serveur Web<br />

perfectionnement<br />

Durée 3 jours<br />

Objectifs<br />

Une formation très pratique sur Apache qui vous amènera à<br />

maîtriser les fonctionnalités offertes par ce standard du marché<br />

en sécurisant fortement son fonctionnement. Le paramétrage fin<br />

d'Apache, la gestion avancée des logs et des statistiques, ainsi<br />

que la virtualisation (Xen) sont également abordés. Les<br />

possibilités d'utiliser Apache comme serveur de fichiers<br />

(lecture/écriture) permettent aussi d'enrichir les fonctionnalités de<br />

votre site.<br />

Participants<br />

Ingénieurs informaticiens, futurs administrateurs ou chef de<br />

projets désirant utiliser pleinement les possibilités d'Apache et<br />

sachant les mettre en oeuvre dans un contexte très sécurisé.<br />

Pré-requis<br />

Une bonne connaissance de Linux ainsi que de l'administration<br />

de base d'un serveur Apache est fondamentale.<br />

Travaux pratiques<br />

Les nombreux exercices et études de cas progressifs seront<br />

réalisés sous Linux.<br />

Contenu<br />

Rappels sur Apache<br />

Compiler et installer apache <strong>avec</strong> les options standards<br />

Les modules fondamentaux<br />

Le virtual hosting<br />

La sécurité (allow, deny, .htaccess)<br />

Le Web dynamique (exemples de programmes PHP)<br />

Maîtriser son environnement<br />

Site WEB et registrar<br />

Comment choisir son registrar et/ou son hébergeur (la loi, qualité<br />

des offres, ...) ?<br />

Les différences entre un DNS local et ceux du WEB<br />

(fonctionnement à la racine) ?<br />

Administrer des noms de domaine chez un registrar<br />

Problèmes rencontrés <strong>avec</strong> les DNS lors d'un déménagement<br />

Redirection de site et gestion DNS<br />

Exploitation et audit des sites en production<br />

Le paramétrage du logging sous Apache<br />

Analyse des logs et suivi des connexions (awstats)<br />

La gestion des journaux<br />

De quels statistiques peut-on disposer ?<br />

Les outils standards pour leur utilisation<br />

Métrologie et benchmark d'un serveur Web<br />

Benchmark <strong>avec</strong> AB ou Jmeter<br />

Synchroniser des sites<br />

Sécuriser Apache<br />

Authentification utilisateur : modules, .htaccess, accès<br />

anonyme, ...<br />

Les clauses de sécurité conseillées dans le fichier httpd.conf<br />

Apache et le protocole d'application SSL : construire et installer la<br />

bibliothèque OpenSSL, mod_ssl, clé privée<br />

En amont au niveau système :<br />

paramétrage recommandé du firewall et droits système (compte<br />

apache)<br />

Quelques exemples de commandes iptables relatives au Web<br />

Les techniques de cloisonnement ou emprisonnement (chroot)<br />

Les solutions de virtualisations (l'exemple de Xen)<br />

Intérêts de la virtualisation au delà de la sécurité (mutli-instances)<br />

91<br />

Apache et le travail collaboratif (serveur de fichiers)<br />

Transférer des fichiers depuis un site WEB (configuration de<br />

httpd.conf)<br />

Peut-on aussi déposer des fichiers (limites de HTTP) ?<br />

Les extensions du protocole HTTP<br />

Travailler de façon collaborative sur les fichiersd'un site<br />

(WebDAV Web-based Distributed Authoring and Versionning)<br />

Installation et configuration de WEBDAV (module mod_dav)<br />

Tests<br />

Proxy et Reverse-proxy<br />

Apports d'un serveur Proxy (centralisation, sécurité, performances,<br />

filtrage)<br />

Mise en oeuvre d'un proxy HTTP (mod_proxy,squid)<br />

Paramétrage de Squid<br />

Accéder à un site Web interne depuis l'extérieur (reverse-proxy)<br />

Limites de la solution de base (nat)<br />

Apports du reverse-proxy (cache, sécurité)<br />

Répartition de charge (load-balancing)


Postfix, administrer un<br />

serveur de messagerie<br />

Durée 2 jours<br />

Objectifs<br />

Après un rappel sur le fonctionnement global d’une messagerie<br />

d’<strong>entreprise</strong> (concepts, composants, protocoles, produits), vous<br />

apprendrez à administrer un serveur Postfix, à en configurer les<br />

différents composants, à sécuriser son exploitation et à l’intégrer<br />

<strong>avec</strong> les logiciels applicatifs de votre environnement.<br />

Participants<br />

Ingénieur système, ou décideur ayant des compétences<br />

techniques, devant choisir et mettre en oeuvre une solution open<br />

source pour la distribution, l'archivage, et la sécurité du courrier.<br />

Pré-requis<br />

Les participants doivent posséder une bonne maîtrise de<br />

l'utilisation du système Linux et les bases de son administration<br />

en réseau.<br />

Travaux pratiques<br />

Ils vous présenteront de manière progressive toutes les étapes,<br />

ainsi que les composants, nécessaires à la mise en oeuvre d’un<br />

serveur de messagerie "professionnel" (installation, exploitation,<br />

sécurité, antivirus, antispam, Webmail, logs, MySQL, LDAPs...).<br />

Contenu<br />

L'offre open source<br />

Les agents de transferts de courrier Sendmail, la solution<br />

historique mais complexe.<br />

Les alternative Postfix ou Qmail.<br />

L'autre standard : Exim.<br />

Xmail, un serveur de messagerie très complet (authentification,<br />

filtrage, synchronisation...).<br />

Synthèse des leurs fonctionnalités, performances, complexités.<br />

Forces et faiblesses<br />

Support technique, services, contributeurs, pérennité ... où en<br />

est-on ?<br />

Les différences concrètes entre l'offre d'un éditeur et l'offre open<br />

source.<br />

Maîtriser les protocoles<br />

SMTP (Simple Mail Transport Protocol)<br />

Un canal bidirectionnel entre l'expéditeur et le récepteur (port 25).<br />

SMTP c'est aussi un format de message (pour qui ? de qui ?à qui<br />

l'envoyer ? ...).<br />

Les balises (EHLO, MAIL FROM, RCPT TO, DATA...).<br />

Les codes erreurs (destinataire inconnu, refus...)<br />

Problèmes de caractères entre les plate-formes (ASCII sur 7 bits,<br />

format MIME, pièces jointes).<br />

SMTP et sécuritéNotion de relais ouvert/fermé (cas des<br />

fournisseurs d'accès).<br />

Tolérance par mot de passe ou adresse IP. Cryptage.<br />

Problèmes des utilisateurs itinérants. Spam et relais ouverts.<br />

Liste noire.<br />

Le routage du courrier<br />

Rôle du DNS (enregistrement MX) sollicité par le MTA<br />

Le cycle MUA/MTA/MTA/.../MTA/MDA (boîte aux lettres<br />

pop/imap) puis ... MUA.<br />

Installation et configuration de Postfix<br />

Installation<br />

Tour d'horizon des dernières versions.<br />

Options d'installation (support pour l'authentification)<br />

Configuration<br />

Configuration du DNS pour le courrier électronique (champs MX)<br />

Les principaux paramètres de master.cf et main.cf (myorigin,<br />

myhostname, mydomain, mydestination)<br />

La configuration minimale.<br />

Le relayage (client, serveur). Livraison directe ou indirecte ?<br />

Interfaces virtuelles.<br />

Configurer Postfix comme serveur MX pour un site distant.<br />

Postfix et Cyrus IMAP.<br />

92<br />

Exploitation de Postfix<br />

Au quotidien<br />

Les files d'attentes de Postfix (maildrop, incoming, active, deferred,<br />

mailbox).<br />

Les logs de Postfix (paramétrage de syslog).<br />

Disposer de statistiques (pflogsumm.pl)<br />

Webmin et Postfix (administrer en cliquant)<br />

Synthèse des fichiers utilisés par Postfix (spool, log, paramètres,<br />

commandes, librairies)<br />

Pour aller plus loin<br />

Lancer Postfix en environnement "chroot"<br />

La ligne de commande (Postfix, postalias, postcat, postconf,<br />

postdrop...).<br />

La remontée d'incidents (notify_classes, spam).<br />

Un environnement à sécuriser<br />

Blocage de courrier non sollicité<br />

Les différentes formes de spam.<br />

Les risques encourus par un système mal configuré<br />

Les défenses de Postfix (restrictions, listes noires dynamiques, ...)<br />

Exemple de configuration anti-spam<br />

L'apport de SpamAssassin (principes, mise en oeuvre).<br />

Authentification<br />

Limites de SMTP, apports de SASL (authentification client ou<br />

serveur MX)<br />

Choix de la méthode d'authentification (Linux, Kerberos...)<br />

Configuration de Postfix pour SASL<br />

Tests des clients Postfix<br />

Cryptage<br />

Garantir la confidentialité du courrier.<br />

Les certificats TLS (Transport Layer Security).<br />

Antivirus<br />

Peux-t-on se passer d'un antivirus <strong>avec</strong> Postfix ?<br />

Intégration <strong>avec</strong> quelques standards du marché(clamAV).<br />

Synthèse<br />

Bilan sur la sécurité du courrier électronique<br />

Une approche globale <strong>avec</strong> amavisd-new<br />

Intégration <strong>avec</strong> les standards<br />

Base de données externes<br />

Les tables de recherches de Postfix.<br />

Quand faut-il utiliser une base externe ?<br />

Brefs descriptifs des fonctions de LDAP (annuaire) et MySQL<br />

(SGBDR).<br />

Configurations basiques de MySQL et LDAP.<br />

Exemple d'utilisation de LDAP et MySQL <strong>avec</strong> Postfix.<br />

WebMail<br />

Lire ses mails depuis un navigateur.<br />

La solution IMP et le plus simple SquirrelMail.<br />

Listes de diffusion<br />

Intérêts d'utiliser un MLM (Mailing List Manager).<br />

L'exemple de Majordomo.


Samba : Partages de<br />

services entre Linux/Unix<br />

et Windows<br />

Durée 2 jours<br />

Objectifs<br />

Samba est le service indispensable pour partager fichiers et<br />

imprimantes entre<br />

plateformes Windows et Unix. La formation conduit à la maîtrise<br />

de son installation, de sa<br />

configuration et de son administration.<br />

Participants<br />

Ce stage est destiné aux personnes ayant à intervenir dans un<br />

contexte mixte Unix-Microsoft (administrateurs, exploitants,<br />

intégrateurs, équipes d'infogérance, équipes support).<br />

Pré-requis<br />

Il est nécessaire d'avoir de bonnes notions de base sur Unix ou<br />

Linux ainsi que sur les environnements Windows Microsoft.<br />

Contenu<br />

Introduction<br />

Les services offerts par samba (contrôleur de domaine, partage<br />

de fichiers ou d'imprimantes)<br />

Rappels des notions de base réseaux Windows (domaines,<br />

workgroup, voisinage réseau, maître explorateur, SMB,.NetBIOS,<br />

TCP/IP, NetBEUI, ...)<br />

Historique et versions<br />

Architecture de samba (Applications, SMB, Netbios, ...)<br />

Ressources<br />

Installation et prise en main<br />

Samba en tant que paquet logiciel<br />

Compilation et installation sous Unix/Linux<br />

Démarrage des démons (smbd, nmbd, ...)<br />

Premiers tests<br />

Les outils d'administration graphiques : SWAT (Samba Web<br />

Administration Tool) et Webmin<br />

Notions préliminaires essentielles<br />

Structure générale du fichier de configuration smb.conf<br />

Noms NetBIOS<br />

Rôle de Samba dans la résolution de noms<br />

Rôle de Samba dans l'activité de voisinage réseau (browsing)<br />

Partages en contexte Workgroup<br />

Configuration des partages sur le serveur Samba<br />

Configuration d'un poste client Windows<br />

Configurations à base de domaines<br />

Samba en tant que PDC (Primary Domain Controller)<br />

Niveaux de sécurité<br />

Configuration des clients<br />

Gestion des scripts d'ouverture de session<br />

Gestion des profils (locaux, errants)<br />

Samba en tant que serveur membre d'un domaine<br />

93<br />

Sécurisation des partages<br />

Les niveaux de sécurité et d'authentification<br />

Utilisateurs samba, Linux ... et windows .<br />

Fichiers cachés, liens symboliques<br />

Gestion des permissions et des ACLs (Access Control List)<br />

Utilisateurs et groupes, mots de passe<br />

Le service winbind<br />

Influence des droits Linux sur l'accès aux ressources<br />

Partages d'imprimantes<br />

Partage des imprimantes du serveur Samba<br />

Accès à des imprimantes Windows<br />

Suivi du serveur<br />

Résoudre les problèmes<br />

Divers utilitaires (smbclient,smbfs,...)<br />

Les journaux<br />

Aspects complémentaires<br />

Options réseau<br />

Serveurs virtuels<br />

Gestion des informations de trace<br />

Accès concurrents<br />

Support du système de fichiers DFS<br />

Clients Unix


Administration d'un<br />

annuaire LDAP<br />

Durée 2 jours<br />

Objectifs<br />

Les annuaires sont de plus en plus employés pour faciliter l'accès<br />

aux données par les applications, mais aussi par les systèmes.<br />

Cette formation LDAP présente les principes du fonctionnement<br />

des annuaires LDAP et conduit à une maîtrise opérationnelle de<br />

la version LDAP libre: OpenLDAP.<br />

Participants<br />

Les administrateurs réseau, administrateurs système,<br />

responsables informatiques ayant une connaissance des réseaux<br />

TCP/IP.<br />

Contenu<br />

Les annuaires LDAP<br />

Définition et principe d'un annuaire<br />

Le standard LDAP<br />

Les concepts<br />

Rôles d'un annuaire<br />

Modèle client/serveur<br />

Elaboration de l'annuaire<br />

Définition de la structure de l'annuaire<br />

Notion de schéma<br />

Les attributs , les OID<br />

Le Directory Information Tree<br />

Le Distinguished Name<br />

Le format d'échange LDIF<br />

Installation et premiers éléments de configuration LDAP<br />

Composants pré-requis<br />

Installation à partir des paquets<br />

Installation à partir des sources<br />

Format du fichier de configuration<br />

Contrôle de l'accès à l'annuaire<br />

Extrait du fichier slapd.conf<br />

Mise en production d'un service d'annuaire LDAP<br />

Authentification système simple <strong>avec</strong> OpenLDAP<br />

Gestion des comptes Linux<br />

Configuration du module PAM<br />

Configuration NSS<br />

Configuration du poste client<br />

Configuration de Samba <strong>avec</strong> LDAP<br />

Consultation et utilisation d'un service d'annuaire<br />

Le format d'échange de données LDIF. Insertion de données<br />

dans l'annuaire<br />

Commandes d'accès à l'annuaire via LDAP<br />

Modification de l'annuaire<br />

Outil d'administration graphique Phpldadmin<br />

Les journaux de trace LDAP<br />

LDAP et la sécurité des données<br />

L'authentification des accès<br />

Le chiffrement des transactions<br />

Le contrôle d'accès<br />

Mise en oeuvre d'une connexion sécurisée<br />

Utilisation de LDAP via une application cliente<br />

La réplication d'un annuaire<br />

Serveurs LDAP redondants<br />

Utilisation de LDAP pour l'authentification applicative<br />

Principe du Single Sign-On<br />

Serveur de courrier géré par LDAP<br />

Configuration de serveurs POP, SMTP<br />

Gestion centralisée des accès Internet<br />

Le service FTP contrôlé par un annuaire<br />

Utilisation de l'annuaire via les clients de messagerie<br />

94


Langage Perl<br />

Durée 4 jours<br />

Objectifs<br />

Particulièrement adapté à la manipulation de textes, de fichiers et<br />

de processus, le langage Perl supporte aussi les expressions<br />

régulières et des types de données plus évolués comme les<br />

tableaux associatifs et les références. Mais même si le shell reste<br />

l'outil privilégié et historique pour l'écriture de procédures<br />

utilitaires sous Unix/Linux, le langage Perl s'est clairement imposé<br />

comme une alternative efficace. A noter qu'il est également<br />

disponible sur beaucoup d'autres systèmes d'exploitation et<br />

notamment sur les plates-formes Microsoft. Cet aspect de<br />

portabilité constitue un atout important pour tous ceux qui<br />

envisagent d'adopter ce langage de scripts.<br />

Cette formation PERL vous permettra de:<br />

- Maîtriser le langage (syntaxe, recettes, astuces, pièges)<br />

- Savoir l'utiliser dans divers contextes classiques (traitement de<br />

fichiers, scripts système, programmation CGI...)<br />

- Apprendre à écrire des scripts utilisables dans différents<br />

environnements tels que Unix et Windows<br />

Participants<br />

Selon le contexte d'utilisation, cette formation PERL peut<br />

concerner à la fois les administrateurs système et les<br />

développeurs.<br />

Pré-requis<br />

Il est recommandé de posséder de bonnes notions<br />

algorithmiques et de programmation<br />

Contenu<br />

Introduction, prise en main du langage Perl<br />

Caractéristiques techniques du langage<br />

Installation sous Unix;Linux ou sous Windows<br />

Accès à la documentation<br />

Ressources Internet<br />

Maîtrise du langage Perl<br />

Structure d'un programme<br />

Éléments du langage<br />

Scalaires<br />

Opérateurs sur les scalaires<br />

Entrées;Sorties de base : saisie clavier, fonctions chop et chomp,<br />

sortie à l'écran, fonction print<br />

Listes et tableaux : listes littérales, variables de type tableau,<br />

affections globales, accès aux éléments, quelques fonctions utiles<br />

sur les tableaux<br />

Instructions de contrôle : tests simples (if;unless), tests<br />

séquentiels (if..elsif), boucle while;until, boucle for, boucle<br />

foreach, instructions de branchement, instructions abrégées<br />

Tableaux associatifs (Hachages) : affectations globales,<br />

affectations de plusieurs éléments à la fois, fonctions sur les<br />

tableaux associatifs<br />

Références : références sur tableaux, références sur tableaux<br />

associatifs, références anonymes<br />

Expressions régulières<br />

L'essentiel des motifs : motifs correspondant à un seul caractère,<br />

motifs de regroupement, parenthèses de mémorisation, motifs<br />

d'ancrage, diverses notations complémentaires<br />

Utilisation des expressions : l'opérateur =~ , substitutions,<br />

fonctions split et join<br />

Utilisation interactive de l'interpréteur Perl<br />

95<br />

Les fonctions et modules en Perl<br />

Définition et utilisation<br />

Paramètres, visibilité, retour<br />

Aspects complémentaires : variables semi-privées, retour d'un<br />

scalaire ou d'une liste selon le contexte, utilisation de références<br />

dans les arguments, références sur fonctions<br />

Fonctions intégrées et modules : documentation des fonctions<br />

intégrées, terminologie liée aux modules, recherche de modules,<br />

site CPAN, utilisation d'un module non orienté objet, utilisation d'un<br />

module orienté objet<br />

Gestion des fichiers et des répertoires en Perl<br />

Ouverture de fichier et entrées;sorties : lectures, écritures,<br />

données littérales intégrées au script<br />

Information sur les fichiers<br />

Gestion des répertoires : changement de répertoire, traitement des<br />

caractères spéciaux (globalisation), parcourir un répertoire<br />

Fonctionnalités complémentaires de Perl<br />

Accès aux informations du système<br />

Gestion des processus : la fonction system, les quotes inverses,<br />

processus et descripteurs de fichiers, mécanismes fork-exec<br />

Traitement des chaînes de caractères : recherche et<br />

remplacement de sous-chaînes, transformation de caractères<br />

individuels<br />

Tris personnalisés<br />

Structures de données élaborées via les références anonymes<br />

Compléments sur les modules<br />

Fabrication d'un module non orienté objet<br />

Introduction à la programmation objet en Perl<br />

Conception d'une classe<br />

Mise en oeuvre d'un module objet simple<br />

Scripts Perl dans un contexte web : protocole HTTP, schéma<br />

fonctionnel CGI, module CGI, variables d'environnement,<br />

méthodes GET et POST, traitement des formulaires<br />

Accès aux bases de données, module DBI<br />

Les modules Windows (Win32, Win32API)


Python<br />

Durée 4 jours<br />

Objectifs<br />

Cette formation vous permettra d’acquérir les connaissances<br />

nécessaires à la programmation <strong>avec</strong> le langage Python. Quatre<br />

jours pour acquérir les bases du langage avant d’aborder les<br />

technologies spécifiques (Zope, Plone, Django, Grok, ...)<br />

Participants<br />

Tout développeur souhaitant acquérir les bases de la<br />

programmation en Python.<br />

Pré-requis<br />

Connaissance d’un langage procédural (e.g C, Pascal) ou objet<br />

(e.g C++, <strong>Java</strong>)<br />

Contenu<br />

Installation et prise en main<br />

Connaître les différentes versions de Python<br />

Détails de l’arborescence de fichiers de l’installation Python<br />

L’interpréteur Python<br />

L’interpréteur intéractif ipython<br />

Initiation à la syntaxe<br />

Manipuler les nombres<br />

Manipuler les chaînes<br />

Les opérateurs<br />

+, in, and, or, ...<br />

Les différents types d’instructions<br />

if/else<br />

for<br />

try/excpt<br />

Les structures de données<br />

Tuples, séquences et listes<br />

Dictionnaires<br />

Les listes par compréhension<br />

Autres outils du langage<br />

Fonctions<br />

Générateurs et itérateurs<br />

Scripts exécutables<br />

Organisation du code<br />

Modules et paquetages de modules<br />

Importations<br />

Comprendre la notion d’objet<br />

Objet et attributs<br />

Exercices <strong>avec</strong> ipython<br />

Traitement de fichiers<br />

Les objets de type File<br />

Les classes d’objets<br />

Définition et instanciation d’une classe<br />

Méthodes de classe<br />

Properties Héritage<br />

Gestion des exceptions<br />

96<br />

La bibliothèque de modules standards<br />

Exemples de modules utiles<br />

Comment trouver les modules ?<br />

La documentation<br />

Installer des modules tiers<br />

Setuptools & EasyInstall<br />

Python Package Index<br />

Outils de développement (Eclipse / Pydev, PyLint, PyChecker)<br />

Outils de traitement XML<br />

Principes<br />

Parsing XML : les différentes techniques<br />

La librairie elementtree<br />

La librairie lxml<br />

Python et SQL<br />

La spécification DB-API<br />

Connexion à une base de données<br />

Introduction à sqlAlchemy<br />

Pratiques de développement<br />

Docstrings<br />

Tests : Doctests et Unit tests


ZOPE : Création d'une<br />

application web <strong>avec</strong> Zope<br />

Durée 3 jours<br />

Objectifs<br />

Zope (Z Object Publishing Environment) est une plate-forme<br />

Open Source de développement et de gestion de sites Web et<br />

particulièrement de sites de gestion de contenus et de travail<br />

collaboratif. Cette formation aux frameworks et librairies de Zope<br />

(serveur d’applications, architecture de composants Zope 3 met<br />

l’accent sur les techniques d’aujourd’hui, Zope ayant beaucoup<br />

évolué au fil des années. Au cours de cette formation seront<br />

évoqués :<br />

Le serveur d’applications<br />

Le component Architecture<br />

Le Framework MVC (Grok)<br />

L’intégration WSGI (Web Server Gateway Interface<br />

Participants<br />

Cette formation Zope concerne les Gestionnaires d'applications,<br />

administrateurs système, webmestres, développeurs de sites,<br />

programmeurs.<br />

Pré-requis<br />

Cette formation zope nécessite des connaissances sur les<br />

technologies du Web (XML, XHTML) et de Python et/ou une<br />

expérience d’intégrateur sur Plone. Idéalement avoir suivi la<br />

formation Python.<br />

Contenu<br />

Introduction à Zope<br />

Etat actuel des technologies<br />

Les frameworks de Zope : Zope 2, Zope 3 (Component<br />

Architecture), Repoze, Grok<br />

Les plates-formes populaires construites <strong>avec</strong> Zope<br />

Les conventions des développeurs<br />

Mettre en place un environnement de développement Zope<br />

Python<br />

Zope<br />

Connaître les nouvelles librairies de développement (Zope 3) :<br />

Zope interface,<br />

Zope schéma, etc…<br />

Aspects de déploiement<br />

Architecture de composants de Zope, les concepts<br />

Notion d’interface – Notion de composant<br />

Adaptation d’interface,<br />

Adaptateurs et Browser Views (Multi-Adaptateurs)<br />

Configuration <strong>avec</strong> le ZCML (Zope Configuration Markup<br />

Language)<br />

Les outils de développement de Zope<br />

Présentation <strong>avec</strong> les Page Templates<br />

Templates et Browser<br />

Views (logique de présentation)<br />

Composants de contenus persistants (via la base de données<br />

objet de Zope : ZODB)Formulaires d’interaction <strong>avec</strong> la librairie<br />

zope.formlib (AddForm, EditForm, DisplayForm)<br />

Indexation et recherche<br />

97<br />

Zope : pratiques de développement recommandées<br />

Tests unitaires <strong>avec</strong> doctest<br />

Tests fonctionnels<br />

Introduction à Grok<br />

De Zope 3 à Grok – Principes et intérêts de l’approche Grok<br />

Installation des librairies complémentaires pour Grok<br />

Tutoriel de mise en œuvre d’une application <strong>avec</strong> Grok<br />

Modèle de données (Model-View-Controler)<br />

Formulaires auto-générés<br />

Présentation : Classes de Browser View & Templates<br />

Pour aller plus loin <strong>avec</strong> Zope<br />

L’API de Grok<br />

Les interfaces R.E.S.T


Eclipse, créer son<br />

environnement de<br />

développement intégré<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Eclipse de deux jours vous apprendra à<br />

personnaliser Eclipse en fonction de vos besoins, en y intégrant<br />

de nombreux autres outils gratuits, pour en faire une plate-forme<br />

de développement complète, industrielle et efficace. Vous aurez<br />

l'occasion d'utiliser les fonctionnalités fournies par défaut, comme<br />

les tests unitaires ou les scripts de déploiement, mais également<br />

de mettre en place de nouveaux plug-ins permettant, par<br />

exemple, de faciliter les développements <strong>Java</strong> EE ou d'améliorer<br />

votre productivité.<br />

Ce cours s'adresse à tous ceux qui souhaitent pouvoir bénéficier<br />

d'un environnement de développement gratuit, intuitif,<br />

personnalisable et adapté à leurs architectures logicielles.<br />

Vous allez apprendre à:<br />

- Installer la plate-forme de développement et comprendre son<br />

organisation<br />

- Appréhender la notion de plug-in et les possibilités de<br />

développement associées<br />

- Mettre en place un environnement de tests<br />

- Garantir la qualité du code à fournir<br />

- Automatiser la production des livrables et leur déploiement<br />

- Permettre le partage du code pour le travail en équipe<br />

- Connaître l'architecture de la plate-forme Eclipse<br />

Participants<br />

Chefs de projet et développeurs <strong>Java</strong><br />

Pré-requis<br />

Expérience pratique de la programmation <strong>avec</strong> <strong>Java</strong><br />

Travaux pratiques<br />

Les travaux pratiques sont réalisés <strong>avec</strong>: Eclipse + Plug-ins,<br />

Moteur de JSP / servlet (Tomcat), Lomboz, JUnit, Ant, PMD ou<br />

CheckStyle, Visual Editor ou JIgloo, Clay, DBEdit<br />

Contenu<br />

La plate-forme Eclipse<br />

Présentation du projet Eclipse<br />

Espace de travail et projet<br />

Présentation du plug-in<br />

<strong>Développement</strong> de plug-ins<br />

Environnement de tests<br />

Mise en place de tests unitaires<br />

Présentation de JUnit<br />

Qualité du livrable<br />

Lisibilité et règles de codage<br />

Présentation de PMD / Checkstyle<br />

Déploiement des composants<br />

ANT et les scripts de déploiement<br />

Déploiement de composants Web<br />

Lomboz et les conteneurs de JSP / Servlets<br />

Lomboz et les conteneurs d'EJB<br />

Gestion de configuration<br />

Mise en place du plug-in CVSCheck-in / Check-out<br />

Gestion des conflits<br />

La modélisation<br />

Concevoir un schéma de base de données<br />

Produire les principaux diagrammes UML<br />

Effectuer un reverse-engineering sur du code ou une base de<br />

données<br />

98


Développer des<br />

applications Web <strong>avec</strong><br />

Struts<br />

Durée 3 jours<br />

Objectifs<br />

Grâce à son architecture MVC sous-jacente, le Framework Open<br />

Source Struts permet aux développeurs de Servlets et JSP de<br />

créer des applications Web robustes, maintenables et évolutives.<br />

Dans le panel des Frameworks Web <strong>Java</strong>, Struts jouit d'une<br />

grande notoriété et s'impose souvent comme un standard pour le<br />

développement d'applications Web en <strong>Java</strong>.<br />

Cette formation Struts de trois jours vous apprendra les règles,<br />

trucs et astuces permettant d'exploiter au mieux toutes les<br />

possibilités de Struts. Vous commencerez par apprendre à mettre<br />

en place une infrastructure de navigation et de gestion des<br />

requêtes efficace, avant de l'enrichir <strong>avec</strong> les mécanismes<br />

avancés de Struts, comme les TagLibs d'internationalisation ou<br />

les modules, puis <strong>avec</strong> ses extensions comme Tiles ou Validator.<br />

Cette formation Struts s'adresse à ceux qui se demandent :<br />

"Comment tirer le meilleur parti du Framework Struts ?",<br />

"Comment étendre les possibilités de Struts ?", "Quel est le futur<br />

de Struts ?".<br />

Cette formation Struts vous permettra de:<br />

- Concevoir et développer des applications Web en utilisant le<br />

modèle d'architecture MVC de Struts<br />

- Configurer correctement vos applications Struts mono ou multimodules<br />

- Utiliser les composants, la logique et les bibliothèques de tags<br />

HTML pour écrire des JSP faciles à maintenir<br />

- Exploiter les capacités d'internationalisation (i18n) du<br />

Framework Struts<br />

- Créer un formulaire unique capable de produire de multiples<br />

actions<br />

- Écrire du code de validation (client et serveur) facile à maintenir<br />

grâce au Validator<br />

- Utiliser les DynaForms pour réduire la quantité de code<br />

nécessaire à la création de Form Beans<br />

- Éviter les erreurs classiques d'utilisation de Struts grâce aux<br />

règles de bon usage élaborées sur des projets Struts réels<br />

- Améliorer la maintenabilité de vos pages Web en factorisant les<br />

éléments communs grâce au Framework Tiles A qui s'adresse la<br />

formation Struts<br />

Développeurs de Servlets et JSP désireux d'utiliser le Framework<br />

Struts pour l'élaboration de leurs applications Web<br />

Pré-requis<br />

Expérience projet du développement de Servlets et JSP<br />

Travaux pratiques<br />

Struts 1.2, Eclipse IDE, ANT, Serveur d'applications (Tomcat,<br />

WebLogic ou WebSphere)<br />

Contenu<br />

Introduction<br />

Pourquoi utiliser Struts ?<br />

Front Controller Pattern<br />

Les composants de base de Struts<br />

Cycle de vie d'une requête Struts<br />

Configuration et déploiement<br />

Comment obtenir Struts<br />

Contenu de la distribution Struts<br />

Les fichiers de configuration<br />

Utilisation de la documentation<br />

La bibliothèque de Tags HTML<br />

Tags Struts : notions de baseTags pour les formulaires<br />

Relations <strong>avec</strong> les ActionForms<br />

Afficher les messages d'erreur<br />

Options de création des liens<br />

Traiter les URL relatives<br />

99<br />

Forwards et Forwarding<br />

ActionMappings<br />

Objectifs, options et utilisation des forwards<br />

Autres Bean Tags<br />

Tags de contrôle du flux<br />

Tags imbriqués<br />

Les Actions en détail<br />

Architecture des actions et multi-threading<br />

Forwards internes vs. redirections<br />

Comment éviter les URL en dur dans vos JSP<br />

Création dynamique d'ActionForwards<br />

Utilisation des ActionMappings<br />

Bean Tags et i18n<br />

Utilisation du tag Write <strong>avec</strong> un Bean<br />

Utilisation du tag Message pour l'internationalisation des sorties<br />

Méthodes de la classe Action<br />

Utilisation de Tokens pour éviter les envois multiples d'un<br />

formulaire<br />

Options d'ActionMapping<br />

Actions standard<br />

Formulaire à actions multiples<br />

Les ActionForms en détail<br />

Cycle de vie des ActionForms<br />

Validation et ActionErrors<br />

DynaActionForms<br />

Le Framework Validator<br />

Composants Validator et fichiers de configuration<br />

Les Validators intégrés<br />

Syntaxe du fichier validation.xml<br />

Génération de <strong>Java</strong>Script<br />

Formulaires multi-pages<br />

Tiles<br />

Création de templates<br />

Définitions de Tiles dans les JSP et tiles-defs.xml<br />

Etendre les définitions<br />

Modules<br />

Structure d'une application multi-modules<br />

Redirection entre modules<br />

SwitchAction<br />

Utilisation de fichiers de configuration multiples<br />

Sujets avancés et évolutions<br />

Sécurité <strong>avec</strong> Struts<br />

Extension du Framework Struts<br />

Configurer des Datasources<br />

JSTL et la bibliothèque de Tags Struts-EL


Filière Oracle/SQL<br />

Server/MySQL/PostgreSQL<br />

100


SQL : Interroger les bases<br />

de données<br />

Durée 3 jours<br />

Objectifs<br />

Il n'est d'ailleurs pas rare de voir cohabiter dans une même<br />

<strong>entreprise</strong> plusieurs SGBDR tels que SQL Server, Oracle,<br />

MySQL... La maîtrise du langage SQL permettra aux<br />

administrateurs et développeurs de bases de données d'exploiter<br />

les informations de l'<strong>entreprise</strong> quel que soit la base de données<br />

utilisées et le système qui les héberge.<br />

Cette formation SQL vous permettra de:<br />

Savoir interroger le contenu des tables sous divers aspects<br />

Pratiquer le langage interactif SQL dans tout environnement<br />

relationnel<br />

Être en mesure d'écrire des requêtes compatibles <strong>avec</strong> plusieurs<br />

SGBD<br />

Participants<br />

Développeurs<br />

Exploitants intervenant sur un serveur de bases de données<br />

Futurs administrateurs de bases de données<br />

Pré-requis<br />

Connaissances des principes généraux des bases de données<br />

Contenu<br />

Introduction SQL<br />

Rappel sur le modèle relationnel<br />

Les normes et caractéristiques du langage SQL<br />

Le langage d'interrogation des données (LID)<br />

La sélection de données<br />

Les restrictions ou conditions<br />

Les tris<br />

Les jointures<br />

Utilisation des fonctions<br />

Fonctions arithmétiques<br />

Fonctions de chaînes de caractères<br />

Fonctions de statistiques<br />

Utilisation des opérateurs ensemblistes<br />

Group by et Having<br />

Opérateur UNION<br />

Opérateur INTERSECT<br />

Opérateur MINUS<br />

Utilisation de sous-interrogations<br />

Dans le where<br />

Dans la clause from<br />

Sous requête synchronisée<br />

Le langage de manipulation de données (LMD)<br />

L'insertion de données (insert)<br />

La mise à jour (update)<br />

La suppression d'informations (delete)<br />

Notions sur le langage de définition de données (LDD)<br />

Création de tables : syntaxe<br />

Les types de données<br />

Les types de contraintes<br />

Modification de la définition d'une table<br />

Suppression d'une table<br />

Notions sur les vues, les séquences, les index et les synonymes<br />

101


Introduction technique à<br />

Oracle<br />

Durée 1 jour<br />

Objectifs<br />

Cette approche vous permettra de découvrir Oracle de façon<br />

progressive et efficace. Elle vous présentera une sélection<br />

rigoureuse des fonctionnalités d'Oracle et des différents produits<br />

proposés.<br />

Participants<br />

Professionnels de l'Informatique ayant besoin d'utiliser ou<br />

d'évaluer Oracle dans un contexte professionnel.<br />

Futur administrateur Oracle ayant besoin d'acquérir de bonnes<br />

bases sur Oracle.<br />

Pré-requis<br />

Aucune connaissance préalable d'Oracle n'est requise.<br />

Travaux pratiques<br />

Pas de travaux pratiques pour ce cours. Le cours est parsemé de<br />

démonstrations sur les différents aspects abordés.<br />

Contenu<br />

Qu’est ce qu’une base de données ?<br />

Les fonctions d'une base de données<br />

Pourquoi ne pas programmer simplement <strong>avec</strong> des fichiers<br />

traditionnels ?<br />

Le SQL : un dialogue <strong>avec</strong> la base proche de l'anglais quotidien<br />

L'intégrité des données<br />

La notion de transaction<br />

Adapter les stratégies de stockage des données en fonction des<br />

traitements.<br />

Les concepts sous jacents<br />

Le modèle relationnel (vocabulaire),<br />

Le méta modèle d'ORACLE ("tout est table")<br />

Le modèle objet. et les données<br />

La conception d’une base de données sous Oracle<br />

Les différentes phases de conception de la base de données<br />

jusqu’à sa création.<br />

MCD : Modèle Conceptuel de Données<br />

MLD : Modèle Logique de Données<br />

MPD : Modèle Physique de Données<br />

Le Revers-Ingeniering et les outils associés.<br />

Quelques exemples de "fautes" de conception<br />

Au niveau des données<br />

Au niveau des traitements<br />

Les différentes positions d'ORACLE dans les architectures<br />

L'offre ORACLE<br />

Les standards (Oracle 9i, Oracle Application Server, ...)<br />

Oracle Forms<br />

Oracle 9i développer suite<br />

Architecture client/serveur<br />

Oracle en client serveur (topologie des clients)<br />

Le middleware (Rôle de SQL*Net, JDBC, ODBC)Architecture n<br />

tiers<br />

Oracle et le Web<br />

HTML, XML, CGI, JAVA, ....<br />

102<br />

Les langages utilisés pour la manipulation d’une base Oracle<br />

Le SQL pour manipuler les objets de la base<br />

Le SQL et les données (create table, select, insert, ...)<br />

Le SQL c'est aussi l'accès au dictionnaire de données (create user<br />

..., select username ....)Le "PL" dans PL/SQL<br />

Programmation <strong>avec</strong> des structures classiques : if ...,while ... ,<br />

tableaux , etc. ....<br />

Procédures, Fonctions, Packages : possibilité de stocker des<br />

traitements dans la base<br />

Triggers : Associer des programmes PL/SQL à des événementset<br />

JAVA ?<br />

Interface PLSQL / librairie JAVA<br />

L'accès aux données grâce à JDBC<br />

L’administration d’une base Oracle<br />

Comprendre le fonctionnement d’une base oracle et connaître le<br />

vocabulaire associé<br />

Quels sont les fichiers qui constituent une base de données ?<br />

Démarrer une base ça veut dire quoi (notion d’instance) ?<br />

Rôle du noyau<br />

Le dictionnaire de données<br />

La notion d’objet et de schéma<br />

La notion de rôles et de droits<br />

L’outil OEM (Oracle Enterprise Manager)<br />

Le métier de DBA (Database Administrateur) au quotidien.<br />

Les outils proposés par Oracle<br />

Oracle Designer (conception de base de données)Oracle<br />

Developer (package d'outils de développement)<br />

Oracle JDeveloper (environnement de développement complet<br />

pour <strong>Java</strong>)<br />

Oracle Portal (gestion de documents)<br />

Oracle Application (intégration des standards)<br />

Oracle Warehouse (extraction de données et alimentation du<br />

datawarehouse)<br />

Oracle Discover (outil de requêtes)<br />

Oracle Express (base de données multidimensionnelle)


Introduction complète à<br />

Oracle<br />

Durée 5 jours<br />

Objectifs<br />

Une formation Oracle complète pour découvrir tous les concepts<br />

du système et les différentes façons de les utiliser concrètement<br />

tout en disposant d’une vue claire sur l’architecture globale<br />

d’ORACLE.<br />

A l’issue de la formation vous serez capable de :<br />

- Concevoir efficacement une base de données Oracle (modèle<br />

relationnel, MCD)<br />

- Savoir mettre en œuvre une base Oracle (tables, contraintes<br />

d’intégrités)<br />

- Comprendre le fonctionnement global d’Oracle (tablespaces,<br />

SGA, …)<br />

- Savoir dialoguer <strong>avec</strong> la base en utilisant le langage SQL<br />

- Optimiser vos requêtes SQL<br />

- Maîtriser votre environnement de travail sous Oracle<br />

- Sécuriser l’accès aux données<br />

- Comprendre le concept de transaction et des verrous<br />

Participants<br />

Cette formation Oracle s’adresse à toute personne participant à<br />

un projet autour d’Oracle (concepteur, développeur, chef de<br />

projet, futur administrateur).<br />

Pré-requis<br />

Il est nécessaire de connaître au moins un système d’exploitation<br />

de type graphique.<br />

Travaux pratiques<br />

Chaque participant va construire de façon progressive son<br />

environnement de développement. A partir d’un modèle<br />

conceptuel de données réalisé en TP les participants prennent<br />

conscience de l’origine des données dans une base Oracle et<br />

des liens qui les unissent. Ensuite on passe à la création des<br />

tables qui seront utilisées tout au long du stage pour les<br />

manipulations SQL ainsi que pour la sécurisation des données.<br />

Contenu<br />

La conception d’une base Oracle<br />

Concevoir une base de données- Comment concevoir<br />

l’organisation des données ?<br />

- Besoin d’un formalisme pour les représenter (Modèle<br />

Conceptuel des Données)<br />

- Vocabulaire (entité, association, cardinalités, …)<br />

- L’impact des choix du concepteur<br />

- Exemples de modèles faux ou mal conçus<br />

- Exemples de modèles rencontrés dans des projets<br />

professionnels<br />

Le modèle relationne<br />

l- Pourquoi parle-t-on de base de données « relationnelle »<br />

(dépendances) ?<br />

- Se rapprocher du schéma de la base (MLD : modèle logique<br />

des données)Le modèle physique- Traduire un modèle logique<br />

en base Oracle (création de tables)<br />

- Qu’entend-on par contraintes d’intégrités (primary key, foreign<br />

key, not null,...)?<br />

- Pourquoi doit-on typer les données (integer, varchar, date, …) ?<br />

Remplir une base- Insérer des données dans les tables (insert)<br />

- L’intérêt des séquences<br />

- Attention aux violations de contraintes<br />

L’environnement de travail<br />

Les produits Oracle<br />

- Rôle d’ORACLE par rapport au système d’exploitation<br />

- Les différents produits Oracle (Server, Spatial, Application<br />

Server, …)<br />

- Comparaison <strong>avec</strong> d’autres SGBDR (SQL*Server, MySQL,<br />

Access, …)<br />

- Quelques questions classiques (clés, contraintes, schéma d’une<br />

table, …)<br />

103<br />

Les applications utilisées<br />

- Comment se connecter à une base Oracle (tnsnames.ora) ?<br />

- Spécificités de l’outil SQL*Plus<br />

- Exemples d’éditeurs pour les scripts SQL<br />

- Mise en page des résultats (set, format, …)<br />

- Stockage des résultats (spool)<br />

- Construire des requêtes SQL depuis un navigateur<br />

( iSQL)Obtenir des informations sur la base- Philosophie du «<br />

rangement » des informations dans Oracle (catalogue)<br />

- Changer d’utilisateur ou de base<br />

Le langage SQL<br />

Extraction simple des données- Forme générale d’une requête<br />

(select … from … where)- Filtrage de base (where, like, between,<br />

…)<br />

- Spécificités du SQL pour Oracle<br />

Mettre à jour les données<br />

- Les instructions insert, update, et delete<br />

- L’impact des contraintes d’intégrité (cascade) Les vues<br />

- Pourquoi associer une requête SQL à une vue ?<br />

- Différences vue/table ?<br />

- Et les contraintes d’intégrité ?Requêtes plus complexes- Extraire<br />

les données de plusieurs tables (jointure)<br />

- Trier les résultats (order by)<br />

- Opérations ensemblistes (union, minus, intersect)<br />

- Regroupement des donnés (group by)<br />

- Les fonctions d’agrégats (somme, moyenne, nombre, …)<br />

- Jointures multiples<br />

- Dans quel cas utiliser l’auto-jointure ?<br />

- Les tests en SQL (where exists …)Le PL/SQL- Les apports du<br />

PL/SQL par rapport auSQL<br />

- Rôle des triggers (déclencheurs)<br />

L’architecture globale d’Oracle<br />

Comment Oracle stocke les données ?- La séparation<br />

logique/physique (tablespace)<br />

- Les fichiers de données (datafile)<br />

- La finesse du stockage dans Oracle (extension, bloc, segment)<br />

- Comprendre la saturation d’un tablespace<br />

Rôle des fichiers journaux- Que contient un fichier de log ?<br />

- Comment Oracle les utilise ? Le fonctionnement d’Oracle en<br />

mémoire- Pourquoi Oracle doit structurer la mémoire ?<br />

- En quoi consiste la construction de la SGA (System Global Area)<br />

?<br />

- Se connecter à une base ou une instance Oracle ?<br />

- Rôle de chaque processus (dbwr, lgwr, …)<br />

Les transactions<br />

Principes- Qu’est qu’une transaction ?<br />

- Comportement standard d’Oracle - Le rôle de l’utilisateur<br />

(commit, rollback)<br />

- La problématique des accès concurrents<br />

Verrous et accès concurrents<br />

- Exemples de blocages<br />

- Comment ne pas bloquer les autres (commit, type de<br />

transaction…) ?<br />

La sécurité des données<br />

Utilisateurs<br />

- Qu’est-ce qu’un compte utilisateur Oracle ?<br />

- Exemple de création de compte<br />

- Paramétrage de base d’un compte utilisateur (profil,<br />

droits)Protéger les données- Les droits proposés par Oracle sur<br />

les tables<br />

- Mise en oeuvre (grant, revoke)<br />

- L’utilisation des vues pour masquer certaines données<br />

L’optimisation des requêtes SQL<br />

Comment Oracle exécute une requête SQL ?- Les différents choix<br />

possibles pour Oracle<br />

- Obtenir des informations sur une requête (plan d’exécution)<br />

- Interpréter le temps d’exécution- Quelques statistiques normales<br />

selon le volume des tables, le type de requête,…Optimiser-<br />

Les règles de l’optimiseur<br />

- Créer des index<br />

- Générer des statistiques<br />

- Pourquoi les index peuvent nuire aux performances ?<br />

- Changer le plan d’exécution d’une requête


SQL pour Oracle<br />

Durée 3 jours<br />

Objectifs<br />

Le langage SQL (Structured Query Language) est un élément<br />

incontournable lorsque l’on aborde la manipulation des données<br />

d’une base ORACLE. Il permet à la fois de générer les données,<br />

de les modifier, et de les extraire de la base en utilisant un<br />

langage proche de l’anglais quotidien sans véritablement<br />

programmer. C’est une des raisons du succès du SQL. Il est<br />

également important de comprendre l’origine des données, les<br />

liens entre elles, et comment Oracle nous propose d’extraire les<br />

données tout en sécurisant et permettant leur accès à plusieurs<br />

utilisateurs en même temps. A l’issue de ce cours vous serez<br />

capable de :<br />

- Comprendre l’origine des données et les liens entre elles<br />

(modèle relationnel)<br />

- Savoir créer des données <strong>avec</strong> le langage SQL (table)<br />

- Comprendre l’impact des types de données<br />

- Savoir mettre à jour les données d’une base Oracle (insert,<br />

update, delete) en SQL<br />

- Savoir extraire les données d’une base ORACLE <strong>avec</strong> le SQL<br />

(select, where, like, …)<br />

- Savoir écrire des requêtes SQL complexes (jointure, union, tri,<br />

…)<br />

- Comprendre la sécurité des données (grant, revoke)<br />

- Comprendre la problématique des accès concurrents (verrou)<br />

- Comprendre le principe de transaction (commit, rollback)<br />

Participants<br />

Développeur, utilisateur d’une base Oracle, utilisateur de<br />

progiciel s’appuyant sur Oracle<br />

Pré-requis<br />

Connaissance générale en Informatique<br />

Travaux pratiques<br />

Chaque participant dispose de sa propre base Oracle pour plus<br />

de souplesse dans les tests personnels et les travaux pratiques.<br />

Contenu<br />

Conception et création d’une base ORACLE<br />

Concevoir une base de données<br />

En quoi consiste la démarche de conception d’une base de<br />

données ?<br />

Vocabulaire et concepts (modèles relationnel et conceptuel)<br />

A l’origine le MCD (Modèle Conceptuel de Données)<br />

Règles de passage du MCD au MLD (Modèle Logique de<br />

Données)<br />

Exemples de modèle de base mal conçu<br />

La base de données pour le développeur SQL<br />

Du MLD au MPD (Modèle Physique de Données)<br />

Que deviennent les relations entre les données (contraintes<br />

d'intégrité) ?<br />

Principes des clés primaires et étrangères (primary key, foreign<br />

key).<br />

Des données d’applications différentes dans une même base<br />

(schémas) ?<br />

Disposer d’informations sur la base (dictionnaire de données)<br />

TRAVAUX PRATIQUES<br />

L'environnement utilisateur<br />

L'outil SQL*Plus<br />

Que signifie le « Plus » dans SQL*Plus ?Se connecter à une<br />

base Oracle<br />

Quelques problèmes classiques (tnsnames.ora, base arrêtée,<br />

listener, …)<br />

Utiliser efficacement le buffer des commandes<br />

Premières commandes SQL<br />

Mise en forme des résultats<br />

Stocker les résultats dans un fichier (spool)<br />

Faire des scripts interactifs (accept, define)Faire du SQL depuis<br />

un navigateur<br />

L’interface iSQL<br />

104<br />

Tour d’horizon des possibilités<br />

Comparaison <strong>avec</strong> SQL*Plus<br />

Le langage SQL pour gérer le contenu d’une base<br />

Créer le schéma d’une base de données<br />

Création des tables (create table)<br />

Modification du schéma des tables (alter, drop)<br />

Protéger la cohérence des données <strong>avec</strong> les contraintes d'intégrité<br />

(primary key, foreign key, uniq)<br />

Les contraintes de valeurs (not null, check)<br />

Règles de nommage des contraintes d’intégrité<br />

Retrouver les informations dans le dictionnaire de données<br />

Mettre à jour les données<br />

Insérer des données (insert)Modifier leurs valeurs (update)<br />

Supprimer des données (delete)<br />

Quelques variantes syntaxiques pratiques TRAVAUX PRATIQUES<br />

Le langage SQL pour extraire les données<br />

Premières requêtes SQL pour interroger la base<br />

Structure générale (select … from …. where …)<br />

Vocabulaire associé (sélections, projection, restrictions)<br />

La gestion de la valeur NULL<br />

Trier les données<br />

Utiliser des alias pour simplifier les requêtes<br />

Obtenir les données de plusieurs tables (jointure)<br />

Utiliser des fonctions (count, upper, sum, avg, …)<br />

TRAVAUX PRATIQUES<br />

Savoir exécuter des requêtes d'interrogation complexes.<br />

Les regroupements et l'utilisation d'agrégats (GROUP BY et<br />

HAVING, COUNT SUM, AVG ...).<br />

Les opérateurs ensemblistes (union, intersection, différence). Les<br />

requêtes imbriquées (opérateurs IN, EXISTS ?).<br />

Plusieurs façons d’écrire une même requête<br />

Optimisation des requêtes.<br />

Comment Oracle analyse une requête ?<br />

Présentation des possibilités pour modifier les performances<br />

(statistiques, règles, …)<br />

Cas des clusters.<br />

TRAVAUX PRATIQUES<br />

Les objets de schéma<br />

Utiliser le SQL pour créer des objets essentiels au développement<br />

d'applications<br />

Intérêts d’utiliser les index<br />

Générer des valeurs automatiquement <strong>avec</strong> les séquences.<br />

Présentation rapide du PL/SQL<br />

Présentation des autres objets (procédures, fonctions, packages et<br />

triggers).TRAVAUX PRATIQUES<br />

La notion de schéma, et la gestion des droits.<br />

Regrouper les données dans un schéma.<br />

Qu’est-ce qu’un utilisateur pour Oracle ?<br />

La gestion des autorisations (grant,revoke)TRAVAUX<br />

PRATIQUES<br />

La notion de transactionQu’est-ce qu’une transaction ?<br />

Les « garanties » d’ORACLE par rapport aux données<br />

Les instructions COMMIT et ROLLBACK.<br />

La gestion des accès concurrents (verrou)<br />

Exemples de blocages en SQL<br />

Exemple de transaction trop volumineuse (rollback<br />

segment)TRAVAUX PRATIQUES


Développer en PL/SQL<br />

Durée 3 jours<br />

Objectifs<br />

Le langage PL/SQL, comme son nom l’indique, est une extension<br />

du SQL. C’est un élément clé, voire incontournable, dans le<br />

développement des applications ORACLE car il permet d’écrire<br />

de véritables interfaces pour masquer l’accès aux données aux<br />

programmes clients de la base Oracle. Les procédures stockées,<br />

packages, et triggers sont écrits en PL/SQL. Le langage offre<br />

aussi à l’administrateur des possibilités pour l’exploitation des<br />

bases Oracles. Ce cours a plusieurs objectifs :<br />

- comprendre la place du PL/SQL dans les architectures<br />

applicatives<br />

- acquérir la maîtrise du langage PL/SQL.<br />

- maîtriser les interactions entre PL/SQL et ORACLE.<br />

- connaître les fonctions et packages standards.<br />

- savoir écrire des procédures stockées et des packages<br />

- maîtriser la philosophie et la syntaxe des triggers<br />

- disposer d’une charte de développement professionnelle en<br />

PL/SQL : conception, codage modulaire, style et méthode de<br />

programmation, stratégie de débogage.<br />

Participants<br />

Ce cours s'adresse aux développeurs d'applications Oracle et<br />

aux administrateurs de bases de données désirant acquérir la<br />

maîtrise du langage PL/SQL.<br />

Pré-requis<br />

De bonnes connaissances en informatique sont nécessaires ainsi<br />

qu'une connaissance du langage SQL.<br />

Contenu<br />

L'outil SQL Plus (rappel)<br />

Quelques problèmes classiques (tnsnames.ora, base arrêtée,<br />

listener, …)<br />

Utiliser efficacement le buffer des commandes<br />

Mise en forme des résultats<br />

Stocker les résultats dans un fichier (spool)<br />

Faire des scripts interactifs (accept, define)<br />

Bien positionner SQL *Plus, SQL et PL/SQL.<br />

Ecrire, exécuter et tester des scripts PL/SQL sous Oracle.<br />

Que signifie PL dans PL/SQL ?<br />

Principe des blocs PL/SQL (structure générale, begin …end)<br />

Comment le noyau Oracle interprète un programme PL/SQL ?<br />

Types de données et conversion de types.<br />

Le cas particulier des dates (to_date, to_char, nls_date_format)<br />

Liens entre requêtes SQL et variables PL/SQL (variables hôtes).<br />

Les instructions arithmétiques.<br />

Les instructions conditionnelles (IF, ELSE, ELSEIF).<br />

Les boucles (LOOP, FOR).<br />

Les packages prédéfinis (DBMS_..)<br />

TRAVAUX PRATIQUES<br />

Accès à la base<br />

- Curseurs<br />

Quand doit-on utiliser un curseur ?<br />

Le cycle de vie d’un curseur (open, fetch, close)<br />

Simplifier la programmation <strong>avec</strong> les boucles FOR à curseur<br />

Propriétés des curseurs (%FOUND, %NOTFOUND, %ISOPEN,<br />

%ROWCOUNT)<br />

Passer des paramètres à un curseur<br />

Spécificités des curseurs implicites<br />

Curseur en mise à jour (for update)<br />

Que deviennent les curseurs laissés ouverts ?.TRAVAUX<br />

PRATIQUES<br />

105<br />

Procédures stockées et packages en PL/SQL<br />

Différences entre les prototypes des fonctions et des procédures.<br />

Définition et appel d’une procédure stockée.<br />

Les droits d'accès sur les procédures stockées.<br />

Gestion des dépendances.<br />

Pourquoi utiliser des packages ?<br />

En tête et corps de packages .<br />

Les packages prédéfinis fournis par Oracle (dbms_...).<br />

Le SQL dynamique (EXECUTE IMMEDIATE, dbms_sql)<br />

TRAVAUX PRATIQUES<br />

Gestion des erreurs<br />

Philosophie des exceptions<br />

Les types d'exception (prédéfinie ou utilisateur)<br />

Code erreur et message associé (SQLCODE, SQLERRM)<br />

Capturer les exceptions (when<br />

Déclencher une exception (raise_application_error).<br />

Fonctions propres à PL/SQL de gestion d'erreurs. Gestion et<br />

propagation des exceptions.<br />

Recommandations pour la gestion des erreurs<br />

TRAVAUX PRATIQUES<br />

Les triggers<br />

Pourquoi utiliser un trigger (déclencheur) ?<br />

Différents types de triggers<br />

Valeur actuelle et nouvelle valeur ( :NEW, :OLD)<br />

Quand doit-on utiliser la clause for each row ?<br />

Activation et désactivation des triggers (vues DBA_TRIGGERS)<br />

Les triggers sur les vues (INSTEAD OF)<br />

Les triggers sur des événements systèmes<br />

Utiliser les triggers pour implémenter des contraintes d'intégrité<br />

Triggers et transaction<br />

TRAVAUX PRATIQUES<br />

La notion de transaction<br />

Qu’est-ce qu’une transaction ?<br />

Les « garanties » d’ORACLE par rapport aux données<br />

Les instructions COMMIT, ROLLBACK, et SAVEPOINT<br />

La problématique des accès concurrents (verrou)<br />

Exemples de blocages en PL/SQL<br />

La gestion standard des verrous par Oracle<br />

Transactions en lecture seule, niveauxd'isolation, verrouillages<br />

implicites et explicites.<br />

Exemple de transaction trop volumineuse (rollback segment)<br />

Recommandations et bonnes habitudes<br />

TRAVAUX PRATIQUES.


Oracle, optimisation des<br />

applications<br />

Durée 3 jours<br />

Objectifs<br />

Sous Oracle lorsque l'on pense optimisation, on parle très<br />

souvent de Tuning Système, or savez-vous que 80% des<br />

problèmes de performance sont dus à des problèmes applicatifs.<br />

Lors de cette formation ou l'efficacité prime sur tout autre sujet,<br />

on vous enseignera une méthode simple et rigoureuse de<br />

détermination des points critiques. La méthode proposée à déjà<br />

fait ses preuves et est mise en pratique chez de nombreux<br />

grands comptes. C'est le fruit de longues années d'études depuis<br />

les toutes première versions d'Oracle.<br />

Participants<br />

Ce cours s'adresse aux développeurs et administrateurs<br />

d'applications.<br />

Pré-requis<br />

La maîtrise des langages SQL et PL/SQL est indispensable<br />

(cours ORM).<br />

Contenu<br />

Introduction<br />

Les différents axes d'optimisation applicative<br />

La méthodologie à utiliser lors d'une phase d'optimisation<br />

d'application<br />

Conception du modèle de données<br />

Modèle conceptuel des données, formes normales, modèle<br />

logique des données<br />

Eviter la dénormalisation tout en garantissant les performances<br />

Les informations fonctionnelles nécessaires pour optimiser le<br />

stockage physique des données<br />

Optimisation du modèle physique<br />

Table Relationnelle ou Objet<br />

Gestion des LOBs<br />

Les tables temporaires, les tables externes<br />

Index B*Tree , index bitmap , index à clé inversée , index à clé<br />

compressée index sur fonction ,<br />

Table organisée en index<br />

Les différentes utilisations des vues , vues matérialisée<br />

,réécriture des requêtes<br />

Partitionnement<br />

Principes de partitionnement des tables et index<br />

Partitionnement par intervalles ou clé de hachâge<br />

Double partitionnement<br />

Partitions et parallélisation des requêtes<br />

Techniques de programmation avancées<br />

Fiabilité des données<br />

Contraintes différés<br />

Gestion d'index indépendants des contraintes<br />

Verrouillage et lecture cohérente<br />

Transactions en série et autonomes<br />

Alimentation de la base, chargement directement, import d'autre<br />

types de données<br />

106<br />

L'optimiseur SQL<br />

Le traitement d'une requête SQL.<br />

Les différentes approches d'optimisation possibles : règles ou<br />

coûts<br />

Paramètres et statistiques qui influencent l'optimiseur<br />

La génération des statistiques, manuelle ou automatique<br />

Les stratégies d'accès des requêtes SQL<br />

Les différentes stratégies d'accès mono table et leurs coûts<br />

Les différents types de jointure et leurs plans d'accès<br />

Hiérarchie de coût dans les stratégies d'accès<br />

Outils d'optimisation SQL<br />

la PLAN_TABLE, l'EXPLAIN<br />

La commande sqlplus AUTOTRACE<br />

Mise en oeuvre des traces et utilisation de TKPROF<br />

Les modules d'OEM utiles dans l'optimisation des requêtes<br />

Fonctionnalités avancées d'optimisation SQL<br />

Les consignes d'optimisations (Hints)<br />

Stabiliser le plan d'exécution de certaines requêtes<br />

exporter les statistiques des objets


Oracle et <strong>Java</strong><br />

Durée 5 jours<br />

Objectifs<br />

Comprendre et développer de robustes applets et applications<br />

<strong>Java</strong>.<br />

Comprendre l'impact des applets <strong>Java</strong> dans le développement de<br />

pages Web interactives. Comprendre l'utilisation de <strong>Java</strong> pour<br />

construire des applications client/serveur sur des plate-formes<br />

indépendantes et robustes.<br />

Apprendre les packages <strong>Java</strong>, les aides et les outils de<br />

développement.<br />

Participants<br />

Ce cours s'adresse aux Chefs de projet, Concepteurs et<br />

Développeurs d 'applications.<br />

Pré-requis<br />

Avoir suivi les cours sur les langages SQL et PL/SQL, et de<br />

l'expérience C/C++ .<br />

Contenu<br />

Introduction<br />

Architecture trois-tiers<br />

Introduction à la Programmation Orientée Objet<br />

Comparaison <strong>avec</strong> d'autres langages<br />

La configuration et l'utilisation<br />

Les classes, les méthodes et les objets<br />

L'héritage<br />

L'interface<br />

La gestion des exceptions, des événements et des flux<br />

Interface<br />

Beans, applets, servlets<br />

JDBC, SQLJ<br />

La mise en œuvre<br />

Tutorat<br />

Création d'une application <strong>avec</strong> Jdeveloper.<br />

107


Architecture Oracle pour<br />

développeurs<br />

Durée 2 jours<br />

Objectifs<br />

Comprendre l'architecture Oracle afin d'appréhender de façon<br />

optimum le développement des applications. Il est fortement<br />

recommandé pour celles et ceux qui devront suivre le cours "<br />

Optimisation des requêtes "- Ce cours suit les évolutions du<br />

produit.<br />

Participants<br />

Ce cours s'adresse aux Développeurs, Chefs de projets et<br />

Responsables d'Applications<br />

Pré-requis<br />

Le langage SQL et le langage PL/SQL.<br />

Contenu<br />

Introduction<br />

Fonctionnalités,<br />

Structures d'une base ORACLE,<br />

Organisation des couches,<br />

Les assistants<br />

Architecture technique<br />

Schéma général,<br />

Définitions,<br />

Pfile/Spfile.<br />

L'instance<br />

Environnement / Arborescence des répertoires ORACLE®<br />

La Mémoire : System ou Shared Global Area ( SGA ),<br />

La zone des données : Database Buffer,<br />

Le buffer Redo log,<br />

La Shared Pool,<br />

Program Global Area ( PGA ) et l'exécution du SQL<br />

La Large Pool.<br />

Les Process obligatoires et optionnels<br />

La base de données<br />

Organisation des structures,<br />

Modèle physique des structures,<br />

Tablespace ,<br />

Segments,<br />

Extents et Bloc,<br />

La gestion de l'espace ,<br />

La gestion des transactions<br />

Les segments d'annulation et tablespace UNDO, temporaire et<br />

de données<br />

108<br />

Oracle net<br />

Les bases,<br />

Configuration et paramétrage,<br />

Principes de la réplication<br />

La gestion des transactions<br />

Traitement stockes et les procédures externes<br />

Les traitements stockés : procédures, fonctions, packages et<br />

triggers<br />

Le stockage et la compilation,<br />

Les procédures externes<br />

Gestion de la sécurité<br />

Gestion des utilisateurs, Gestion des privilèges système,<br />

Les rôles,<br />

Les privilèges sur les objets<br />

Les outils d 'administration<br />

SQL*LOADER : Principes et chemins,<br />

Export / Import<br />

Conclusion


Exploitation Oracle<br />

Durée 4 jours<br />

Objectifs<br />

Cette formation Exploitation Oracle vous permettra de connaître<br />

les principales fonctionnalités d'ORACLE et du langage SQL en<br />

vue d'utiliser des procédures d'administration d'une ou plusieurs<br />

bases (9i,10g,11g).<br />

Participants<br />

Ce cours s'adresse aux Exploitants de Bases de Données ou<br />

Pilotes d'applications.<br />

Pré-requis<br />

Connaître un système d'exploitation.<br />

Connaître Le Langage SQL.<br />

Contenu<br />

Introduction<br />

Fonctionnalités,<br />

Structures d'une base Oracle<br />

Organisation des couches, Bibliographie<br />

Accès aux données : Le langage SQL et l'outil SQL*Plus<br />

Rappels SQL, La gestion des transactions,<br />

L'outil SQL*Plus : environnement de travail, Les vues et le<br />

dictionnaire de données.<br />

Traitements stockés et procédures externes<br />

Exploitation de l'instance et de la base de données<br />

Architecture technique<br />

Schéma général, Définitions, d'une instance et d'une base de<br />

données<br />

Paramétrer l'instance : le fichier init.ora<br />

L'instance<br />

Environnement, L'arborescence des répertoires Oracle,<br />

La mémoire System (Shared Global Area,SGA), DATABASE<br />

BUFFER, le REDO LOG, la Shared Pool, le<br />

Program Global Area (PGA), la Large PoolLes process<br />

obligatoires et oprionnels<br />

Administrer<br />

Definir les mots de passe pour sys et system, Etats d'une<br />

instance, Démarrage et Arrêt de la base de données Oracle<br />

La base de données Oracle<br />

Présentation de la base de données, Création,suppression et<br />

manipulation des tablespaces,<br />

Les structures externes : fichiers redolog, de<br />

contrôle<br />

Les structures internes obligatoire: Undo segment, segment<br />

temporaire<br />

Les autres structures<br />

Le schéma Utilisateur<br />

Stockage et compilation des traitements<br />

stockés<br />

Oracle net : principes et mise en œuvre<br />

Les différents types d’architecture<br />

Les moyens de communication : SQLnet v2<br />

et Net8<br />

109<br />

L’implantation et architecture standard<br />

L’utilisateur en Multithreaded<br />

La gestion de la sécurité<br />

La gestion des utilisateurs et des privilèges<br />

système<br />

Les privilèges sur les Objets, les rôles, les<br />

profils<br />

Les outils d’administrationSQL*Loader<br />

Export/Import<br />

Les sauvegardes<br />

Disponibilité et sécurité de la base de<br />

données<br />

Les sauvegardes à froid/à chaud<br />

Recovery Manager<br />

Restauration


Administration Oracle 10g<br />

Durée 5 jours<br />

Objectifs<br />

La récente version d'Oracle propose de nouvelles fonctionnalités<br />

qui facilitent la gestion des bases de données, elle propose<br />

également de nombreuses nouveautés en matière de stockage et<br />

de corrections des erreurs humaines.<br />

Ce cours pratique vous permettra de réaliser les taches<br />

essentielles liées à l'administration des bases de données.<br />

Vous connaîtrez de façon approfondie les fonctionnalités<br />

d'ORACLE 10g, son architecture technique, ses concepts et ses<br />

mécanismes. Le cours vous fournira tous les éléments pour<br />

créer, configurer et maintenir une base de données ORACLE<br />

10g.<br />

Le but fondamental de cette formation est de vous fournir une<br />

véritable autonomie au quotidien.<br />

Participants<br />

Ce cours s'adresse aux Administrateurs de Bases de Données,<br />

Chefs de Projets et Concepteurs.<br />

Pré-requis<br />

Indispensable : le domaine relationnel, le langage SQL et un<br />

système d'exploitation.<br />

Recommandée : Le cours Introduction Technique à ORACLE, Le<br />

langage PL/SQL.<br />

Contenu<br />

Oracle 10g Introduction<br />

L'organisation du noyau 10g<br />

Les fonctionnalités<br />

Présentation d'oem 10g et du grid control, les packs optionnels<br />

La bibliographie<br />

L'architecture et structures d'Oracle 10g<br />

Le dictionnaire de données.<br />

L'architecture du noyau<br />

L'instance et la base de données - définitions<br />

Paramétrage : dynamique et/ou fichier de paramètres<br />

Les structures mémoire et les process Oracle 10g<br />

Les variables d'environnement<br />

L'instance : la sga -statique ou dynamique - et les process<br />

obligatoires et optionnels<br />

La pga et les process server<br />

Le cas particulier de ms<br />

Les structures de la base de données Oracle 10g<br />

Organisation des structures<br />

Modèle physique des structures<br />

Tablespace - les différents types , segments, extents et bloc<br />

La gestion de l'espace : les blocs oracle-taille fixe et/ou taille<br />

variable<br />

Particularités des tablespaces à blocs variables<br />

La norme omf<br />

Les composants de la base de données Oracle 10g<br />

Architecture des composants ( tablespaces, fichiers, segments,<br />

extents, partition)<br />

Les composants obligatoires<br />

Tablespace undo et segments d'annulation, gestion des<br />

concurrences d'accès<br />

Tablespace temporary et segments temporaires<br />

Les autres composants Les segments tables, index et cluster<br />

La notion de partition, d'objet et d'objet volumineux<br />

Administrer la sécurité d'Oracle 10g<br />

Les utilisateurs<br />

La gestion des privilèges<br />

La gestion des ressources<br />

110<br />

Communication et répartition<br />

Les différents types d'architecture réseau<br />

Implantation d'oracle net<br />

Distribution des données standard<br />

Les snaspshots<br />

Traitements stockés <strong>avec</strong> Oracle 10g<br />

Les traitements stockés : procédures, fonctions, packages et<br />

triggers<br />

Le stockage et la compilation<br />

Les procédures externes<br />

Statistiques et performances<br />

Optimiseur et statistiques<br />

Les optimiseurs d'oracle (nouveautés et obsolescences)<br />

Les statistiques<br />

Les utilitaires<br />

SQL*Loader : Charger des données (paramétrage , mise en<br />

œuvre)<br />

Export/Import, réorganisation des index en ligne<br />

Présentation des concepts de sauvegardes et restaurations<br />

Présentation du Mode ARCHIVE et mise en oeuvre<br />

Généralités sur les Sauvegardes et Restaurations. : Oracle " Flash<br />

back ", sauvegardes et restauration en ligne, …


Administration Oracle 10g<br />

Expertise<br />

Sauvegarde/Restauration, Optimisation, RMAN, Incident,OEM,<br />

Recovery, Haute disponibilité, Oracle Scheduler<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Administration Oracle 10g s'adresse aux<br />

administrateurs Oracle 10g qui souhaitent administrer leurs<br />

bases de données dans des conditions optimales de fiabilité et<br />

de sécurité.<br />

Parmi les points abordés, figurent notamment les sauvegardes et<br />

restaurations, l'utilisation de Recovery Manager, les<br />

fonctionnalités de haute disponibilité, les calculs de volumétrie<br />

pour une configuration optimale du serveur,...<br />

Autant de sujets que doivent maîtriser les administrateurs Oracle<br />

souhaitant acquérir un véritable niveau d'expertise dans leur<br />

domaine.<br />

Cette formation Administration Oracle 10g vous permettra de:<br />

- Savoir configurer OEM<br />

- Connaître les techniques de sauvegarde et de restauration<br />

- Etre à même d'utiliser Recovery Manager<br />

- Apprendre à consulter le catalogue RMAN<br />

- Savoir utiliser Recovery Manager <strong>avec</strong> OEM<br />

- Être en mesure d'identifier les restaurations incomplètes<br />

- Savoir automatiser des tâches <strong>avec</strong> Oracle Scheduler<br />

- Être capable de mettre en place de la haute disponibilité<br />

Participants<br />

Administrateurs Oracle 10g expérimentés<br />

Pré-requis<br />

Avoir suivi le stage Administration Oracle 10g ou connaissances<br />

équivalentes<br />

Contenu<br />

La haute disponibilité <strong>avec</strong> Oracle 10g<br />

Les solutions de haute disponibilité et les enjeux<br />

Oracle data Guard<br />

Real Application Cluster (RAC)<br />

Oracle Enterprise Manager (OEM)<br />

Configuration de Grid Control<br />

Utilisation de Grid Control<br />

Aide aux Dépannages<br />

Envoi de mail en PL/SQL<br />

Réalisation de trace par event<br />

Download des patches<br />

Relink des produits Oracle<br />

Ralentissements violents du serveur<br />

Résolution des échecs de connexion<br />

Configuration optimale de la base de données Oracle 10g<br />

Gestion des espaces de stockage<br />

Optimisation du stockage<br />

Gestion des objects : Tables, Index, cluster<br />

Contrôle de l'utilisation des tablespaces<br />

Le package DBMS_SPACE_ADMIN<br />

La « Virtual Private Database »<br />

La notion de Virtual Private Database<br />

Les contextes applicatifs<br />

Utilisation du package DBMS_RLS<br />

Sauvegardes et restaurations<br />

- Oracle 10g<br />

Les Fichiers Redo log et les fichiers de contrôle<br />

Les techniques de sauvegarde<br />

Le Mode ARCHIVELOG<br />

Sauvegarde complète, base arrêtée<br />

Sauvegarde base ouverte<br />

Restauration complète <strong>avec</strong> archivage<br />

Restauration d'un tablespace<br />

L'annulation d'actions erronées<br />

La commande RECOVER<br />

Utilisation de LOGMINER<br />

111<br />

Oracle FlashbackLe Flashback<br />

Flashback Database<br />

Flashback Query v10<br />

Flashback Version Query<br />

Flashback Transaction Query<br />

Scénarii d'incidents<br />

Redémarrage de la base <strong>avec</strong> des fichiers manquants<br />

Restauration d'un fichier<br />

Database <strong>avec</strong> les redo log online<br />

Redémarrage de la base <strong>avec</strong> certains fichiers<br />

Database anciens<br />

Restauration d'un tablespace Read Only<br />

Restauration d'une base sur un autre matériel<br />

Restitution de données anciennes<br />

Utilisation de Recovery Manager – RMAN<br />

Utilisation RMAN<br />

Commandes de maintenance du catalogue<br />

Enregistrement d'une base cible<br />

Réinitialisation du catalogue pour une base cible<br />

Resynchronisation du catalogue <strong>avec</strong> une base cible<br />

Regroupement des commandes en jobs<br />

La commande BACKUP<br />

Contrôle des sauvegardes<br />

Les commandes SWITCH, RESTORE, RECOVER<br />

Oracle Scheduler<br />

Architecture du scheduler<br />

Création des jobs, des programmes, des schedules, des classes de<br />

jobs et des windows<br />

Administration des objets et métrage du scheduler<br />

La standby Database<br />

La notion de Standby Database<br />

Création de la standby database<br />

Transparent application failover<br />

Contrôle de l'archivage<br />

Oracle data Guard<br />

Gestion des standby Databases<br />

Processus d'application des mises à jour sur la base standby<br />

Création d'une standby<br />

Database <strong>avec</strong> EM Grid Cotrol<br />

Gestion des disques en mode ASM<br />

Le mode ASM<br />

Allocation des devices<br />

Déplacement des fichiers vers les disques ASM<br />

Contrôle de la configuration<br />

Sécurisation du serveur Oracle<br />

Filtrage des clients sur un serveur<br />

Utilisation d'un proxy<br />

Cryptage des communications<br />

Oracle Walet Manager<br />

Cryptage des données<br />

Checklist de sécurité


Administration Oracle 11g<br />

Administrer le serveur de bases de données Oracle<br />

Objectifs<br />

Les <strong>entreprise</strong>s choisissent la base de données Oracle plus<br />

qu'aucune autre pour ses performances, sa fiabilité et sa<br />

sécurité. Oracle 11g est adapté aux environnements<br />

transactionnels et décisionnels sophistiqués, et plus<br />

particulièrement au grid computing. Non seulement ce SGBD<br />

améliore nettement les performances de 10g mais aussi, et<br />

surtout, il offre des avantages tels qu'une installation simple et<br />

rapide, et des fonctions complètes d'autogestion.<br />

Cette formation Administration Oracle 11g vous permettra de :<br />

- Connaître l'architecture du SGBD Oracle 11g pour plus de<br />

pertinence dans votre administration de la base au quotidien<br />

- Maîtriser les fonctionnalités avancées de l'administration de la<br />

base de données Oracle 11g comme les technologies avancées<br />

de compression, partitionnement et récupération de données, y<br />

compris en cas de panne système, de cryptage, d'automatisation<br />

ou d'autogestion des mises à jour, ainsi que l'amélioration des<br />

capacités de stockage<br />

Tous les aspects importants de l'exploitation et de l'administration<br />

d'Oracle 11g seront abordés pour vous rendre opérationnel au<br />

quotidien.<br />

Participants<br />

Administrateurs de bases de données et chefs de projet<br />

Pré-requis<br />

Indispensable : le domaine relationnel, le langage SQL et un<br />

système d'exploitation.<br />

Recommandée : Le langage PL/SQL<br />

Travaux pratiques<br />

De nombreux ateliers permettent un apprentissage pratique des<br />

nouvelles fonctionnalités d'Oracle 11g<br />

Contenu<br />

Introduction Administrateur Oracle 11g<br />

Evolution Technologique<br />

Des outils d'administration et de configuration<br />

Installation des logiciels oracle 11g<br />

Installation<br />

Enterprise Manager<br />

Tests de Post Installation<br />

L'Architecture d'Oracle11g<br />

L'instance Oracle<br />

La SGA : Shared Pool area, Database Buffers Cache, Redo Log<br />

Buffer<br />

Les Process Server<br />

Les fichiers de la Base de Données, les Fichier de Contrôle et les<br />

Fichiers Redo Log<br />

Automatic Diagnostic Repository<br />

Les tables dynamiques de performances<br />

Gestion de l'instance<br />

Méthodes de Contrôle d'Identification<br />

Démarrer une instance<br />

Suspension provisoire de l'activité<br />

Arrêter la Base de Données<br />

Redémarrage rapide après un crash d'instance<br />

Structures de la base de données Oracle 11g<br />

Les tablespaces Ultra Large Database (ULDB)<br />

Les Segments, les Extents, les blocs de Données<br />

Réorganisation du stockage des données<br />

112<br />

Création, modification, et suppression des Bases de Données<br />

Oracle 11g<br />

L'assistant de configuration de base de données<br />

Création d'une base de données<br />

Migration des versions antérieures<br />

Migration des bases de données Non Oracle<br />

Configuration réseau et Répartition des données<br />

Configuration de Oracle Net Services<br />

Accès aux bases distantes<br />

Répartition des données<br />

Les tables<br />

Création de table<br />

Les contraintes d'intégrité<br />

Le partitionnement des tables<br />

La vue matérialisée<br />

Les index<br />

L'index B*-tree<br />

L'index basé sur une fonction<br />

Les index Bitmap<br />

Partitionnement des Index<br />

Traitement des requêtes et Mécanismes transactionnels <strong>avec</strong><br />

Oracle 11g<br />

Les phases du traitement<br />

L'Optimiseur<br />

Collecte des Statistiques<br />

Les transactions<br />

Gestion des utilisateurs et Sécurité<br />

Création, Modification et suppression d'un Utilisateur<br />

Gestion des mots de passe<br />

Les Privilèges<br />

Les Roles<br />

Les Profiles<br />

Sauvegardes et Restaurations<br />

Trois techniques de Sauvegarde<br />

Le Mode ARCHIVELOG<br />

Sauvegarde complète, base arrêtée<br />

Sauvegarde base ouverte<br />

Restauration Complète <strong>avec</strong> et sans Archivage<br />

Restauration d'un tablespace<br />

Recovery Manager<br />

L'outil de chargement SQL*Loader<br />

Fonctionnalités de SQL*Loader<br />

Optimisation du chargement<br />

Chargement en parallèle<br />

La technologie Data Pump<br />

Fonctionnalités de Data Pump<br />

Transformation de données <strong>avec</strong> EXPDP/IMPDP<br />

Utilisation de DBMS_DATAPUMP<br />

Contrôle d'activité et automatisation de l'administration<br />

d’Oracle 11g<br />

L'audit standard<br />

Audit Système<br />

Audit sur Objets<br />

L'Audit Fin (Fine-Grained Auditing)<br />

Audit par trigger


Oracle 11g - Pour<br />

Administrateur Oracle<br />

Confirmé<br />

Durée 2 jours<br />

Objectifs<br />

Oracle 11g apporte plusieurs améliorations et nouveautés<br />

notables pour garantir une meilleure disponibilité des systèmes<br />

de base de données. Au-delà des évolutions déjà apparues dans<br />

la version 10g, Oracle 11g intègre 400 nouvelles fonctionnalités,<br />

notamment relatives à la compression, le partitionnement et la<br />

récupération de données, au cryptage, à l'automatisation ou à<br />

l'autogestion des mises à jour, ou encore à l'amélioration des<br />

capacités de stockage...<br />

Les administrateurs de bases de données qui participent à cette<br />

formation Oracle 11g mettront à jour leurs compétences de DBA<br />

sur la version 11g.<br />

Cette formation Oracle 11g vous permettra notamment de :<br />

- Comprendre comment améliorer la disponibilité et la sécurité<br />

des données grâce à des fonctionnalités Oracle Grid Computing<br />

et Oracle Active Data Guard.<br />

- Tirer parti des assistants pour assurer une surveillance<br />

proactive de la base de données<br />

- Savoir implémenter des fonctionnalités améliorées qui<br />

simplifient la gestion de bases de données<br />

- Aider les développeurs à utiliser les fonctionnalités d'Oracle<br />

Database version 10g dans leurs applications<br />

- Distinguer réelles évolutions techniques et évolutions marketing.<br />

Participants<br />

Administrateurs de bases de données (DBA)<br />

Toute personne en charge de déployer la version Oracle 11g<br />

Consultants souhaitant connaître les apports de cette nouvelle<br />

version<br />

Ingénieurs support<br />

Pré-requis<br />

Stage BAOR : "Administration Oracle 10g" ou connaissances<br />

équivalentes<br />

Une expérience significative de l'administration de serveur 10g<br />

est fortement recommandée pour suivre cette formation<br />

Travaux pratiques<br />

De nombreux ateliers permettent un apprentissage pratique des<br />

nouvelles fonctionnalités.<br />

Contenu<br />

Oracle 11g Introduction<br />

Evolution Technologique et des volumes de données<br />

Objectifs de la 11g<br />

Les outils de la version 11g<br />

Nouveaux outils installés <strong>avec</strong> Oracle 11g<br />

Data Pump<br />

Connexion proxy <strong>avec</strong> SQL*PLUS<br />

OEM 11g<br />

APEX<br />

Installation/configuration d’Oracle 11g<br />

Installation d’Oracle 11g<br />

Chargement et déchargement de données<br />

Gestion automatique<br />

Infrastructure simplifiant la gestion<br />

Les performances et Tuning automatique <strong>avec</strong> Oracle 11g<br />

AWR et ADDM<br />

Tuning automatique<br />

Amélioration de partitionnement et de la compression<br />

ASM<br />

113<br />

Haute disponibilité des bases Oracle 11g<br />

Améliorations du RAC<br />

Active Data Guard<br />

Load Balancing<br />

Sécurité des bases Oracle 11g<br />

Configuration sécurisée par défaut<br />

Fine Grained Access Control<br />

Cryptage des données<br />

Protection <strong>avec</strong> HSM<br />

Oracle Total Recall<br />

Améliorations de flashback<br />

Migration des bases de données<br />

Utilitaire DBNEWID<br />

Choix de la technique de migration<br />

Utilisation de l'assistant de migration<br />

Option Real Application Testing<br />

Database Replay<br />

Processus de Replay<br />

Analyse du Replay<br />

Package DBMS_SQLPA<br />

Les nouveautés de la version 11g en matière de<br />

développement<br />

Colonnes virtuelles<br />

Les clauses PIVOT et UNPIVOT<br />

Améliorations de PL/SQL<br />

PL/Scope<br />

Autres nouveautés


RMAN Sauvegarde et<br />

Restauration<br />

Durée 3 jours<br />

Objectifs<br />

Les participants à ce stage RMAN Sauvegarde et Restauration<br />

apprendront à anticiper et à gérer les incidents de perte de<br />

données afin de garantir les informations sensibles de leur<br />

organisation :<br />

- Savoir sécuriser une base de données<br />

- Mettre en place une stratégie de sauvegarde et de restauration<br />

<strong>avec</strong> RMAN<br />

- Découvrir l'utilité de RMAN dans les processus de sauvegardes<br />

et restaurations<br />

Participants<br />

Exploitants confirmés<br />

Administrateurs confirmés<br />

Pré-requis<br />

Connaissances indispensables du langage SQL et de<br />

l'administration Oracle<br />

Contenu<br />

Rappel sur la sécurisation d'une base de données<br />

Comprendre l'importance du SPFILE<br />

Multiplexer le fichier de contrôle<br />

Protéger les fichiers de Redo Log (groupes et membres)<br />

Savoir contrôler le cycle d'archivage des Redo Log<br />

Comprendre le monitoring préventif d'un tablespace<br />

Savoir configurer les seuils de stockage d'un tablespace<br />

Utiliser des alertes de stockage pour le contrôle de l'espace<br />

disque<br />

Rappel sur le mode archivelog et les sauvegardes et<br />

restaurations sans RMAN<br />

Mettre en place et gérer le mode ArchiveLog<br />

Gérer les archives de Redo Log<br />

Pratiquer des sauvegardes à chaud ou à froid des fichiers de la<br />

base de données sans RMAN<br />

Mettre en place des sauvegardes partielles (sauvegarder des<br />

tablespaces Online)<br />

Les restaurations incomplètes et le mode ResetLog<br />

Les sauvegardes logiques : exp/imp et expdp/impdp<br />

Introduction à Recovery Manager (RMAN)<br />

Apprendre les concepts et le vocabulaire utilisé dans RMAN<br />

Utilisation de RMAN à travers un outil de sauvegarde et son<br />

agent Oracle<br />

Choix pour le repository RMAN entre un catalogue externe<br />

database ou les control files<br />

Mettre en place et utiliser le catalogue RMAN<br />

Utiliser des commandes de génération de job, de contrôle de<br />

canal et de contrôle de job<br />

Paramètres de configuration persistants <strong>avec</strong> la commande<br />

CONFIGURE<br />

Sauvegardes <strong>avec</strong> RMAN<br />

Mettre en place de la stratégie de rétention des backups et des<br />

archive log<br />

Les backupset et les images copies<br />

Mettre en place des sauvegardes complètes de base de données<br />

hors ligne ou en ligne<br />

114<br />

Mettre en place des sauvegardes incrémentales<br />

La commande BACKUP et ses principales options<br />

Les spécificités du backup des archive logs<br />

Restauration et récupération <strong>avec</strong> RMAN<br />

Restauration de la base entière ou d'un tablepace/fichier<br />

La commande RESTORE et ses principales options<br />

Récupération (recover) jusqu'au bout de la base entière ou d'un<br />

tablepace/fichier<br />

La commande RECOVER et ses principales options<br />

Récupération complète de base données ou de tablespaces/fichiers<br />

Récupération incomplète complète de base données ou de<br />

tablespaces/fichiers<br />

Fonctions avancées de RMAN<br />

Superviser les fichiers sauvegardés et vérifier la cohérence des<br />

sauvegardes<br />

Épurer et gérer l'espace de stockage, la commande DELETE<br />

La flash_recovery_area et l'épuration automatique des backup et<br />

des archive logs<br />

Catalogage dans RMAN de backup ou d'archive log faites hors<br />

RMAN<br />

Gérer de manière centralisée les backup <strong>avec</strong> le catalogue RMAN<br />

Les différentes façons de scripter et scheduler <strong>avec</strong> RMAN<br />

Scénarios et scripts type de sauvegarde RMAN<br />

Détection et récupération de blocks corrompus <strong>avec</strong> RMAN<br />

Bases de données dupliquées <strong>avec</strong> RMAN<br />

Préparer un nouvel environnement de test ou de pré-exploitation<br />

Cloner une base de données base fermée ou ouverte <strong>avec</strong> la<br />

commande DUPLICATE<br />

Cloner une base de données <strong>avec</strong> une structure de fichiers<br />

différente<br />

Cloner une base non ASM en ASM ou vice-cersa<br />

La haute disponibilité et RMAN - Dataguard<br />

Sauvegarder une base de données RAC <strong>avec</strong> RMAN<br />

Initialiser ou réinitialiser à chaud une base standby dataguard <strong>avec</strong><br />

RMAN<br />

Les scénarios et spécificité des sauvegardes dans un<br />

environnement DATA GUARD ou RAC GUARD <strong>avec</strong> RMAN


Tuning d'une base Oracle<br />

Durée 3 jours<br />

Objectifs<br />

Oracle : Administration Oracle Niveau III.<br />

Après une analyse fine et détaillée des mécanismes internes et la<br />

présentation d'une méthodologie de Tuning .Vous acquerrez les<br />

connaissances nécessaires pour:<br />

- Optimiser l'organisation et les performances d'une base Oracle.<br />

- Optimiser la gestion de la mémoire.<br />

- Optimiser les fichiers de Redo Log et les Rolbacks segments.<br />

- Optimiser les entrées/sorties et le stockage physique.<br />

- Optimiser les requêtes SQL et les tris.<br />

Participants<br />

Ce cours concerne les administrateurs de base de donnée<br />

Oracle.<br />

Pré-requis<br />

Les participants doivent avoir une connaissance du langage de<br />

requêtes SQL ainsi que de bonnes connaissances en<br />

administration Oracle.<br />

Contenu<br />

Les principes de l'optimisation<br />

Rappel sur l'architecture oracle.<br />

Méthodologie d'optimisation<br />

Pourquoi et quand optimiser<br />

Les différentes étapes<br />

Les optimisations rentables/non-rentables<br />

Principes de l'optimisation et fonctionnement des différentes<br />

catégories d'applications.<br />

Applications transactionnelles.<br />

Applications décisionnelles.<br />

Applications Batch.<br />

Applications mixtes.<br />

Les outils de surveillance et de collectes<br />

Les différents outils à disposition et savoir collecter l'information<br />

Le fichier d'alerte de l'instance.<br />

Les fichiers de trace.<br />

Les vues dynamiques (V$).<br />

Les scripts UTLBSTAT et UTLESTAT.<br />

L'ordre SQL EXPLAIN PLAN et les modes AUTOTRACE.<br />

Les traces utilisateur et TKPROF.<br />

Le package DBMS_APPLICATION_INFO.<br />

l'outil statspack Travaux Pratiques<br />

Optimisation des requêtes et des tris<br />

Les différentes méthodes d'accès par indexIndex B-Tree<br />

Index sur fonction<br />

Index Bitmap<br />

Index à clé inversés<br />

Parcours complet de tables (Full Table Scan)Comment oracle<br />

travaille lorsqu'une requête SQL est lancée<br />

Différentes méthodes de jointures<br />

fonctionnement de l'optimiseur oracle, les HINTS et les<br />

statistiques<br />

Détecter et corriger des requêtes inefficaces.<br />

Optimiser les échanges client/serveur.<br />

Optimiser les tris effectués par oracle.<br />

Comprendre le fonctionnement d'un tri.<br />

Les outils de diagnostics (les vues V$, TKPTOF et les rapports<br />

UTLBSTAT/UTLESTAT)<br />

Règles et solutions à appliquer.<br />

Réduire le nombre de tris.<br />

Travaux Pratiques<br />

115<br />

Optimisation de la mémoire<br />

Optimiser la Shared Pool.<br />

Diagnostic et solutions pour le Library Cache.<br />

Diagnostic et solutions pour le Dictionnary Cache.<br />

Optimiser le Database Buffer CacheDiagnostic et corrections.<br />

Découpage en plusieurs Pools.<br />

Dimensionner la mémoire JAVA Travaux Pratiques<br />

Optimisation des fichiers de Redo Log<br />

Le fichiers de Redo Log et le buffer associé<br />

Rappel sur le fonctionnement des fichiers de Redo Log.<br />

Mise en place des diagnostics et corrections.<br />

Travaux Pratiques<br />

Optimisation du stockage<br />

Les entrées / sorties<br />

Le fonctionnement de la gestion des blocs et des extents<br />

Connaître les fichiers d'une base oracle et leur organisation.<br />

Les outils de diagnostic.<br />

La gestion des blocs et des extents<br />

Diagnostics et corrections<br />

Travaux Pratiques<br />

Optimisation des Rollback/Undo<br />

Segments<br />

Comment fonctionne les Rollback Segments.<br />

Rappel sur le fonctionnement des Rollback segments<br />

Optimiser les des Rollback Segments.<br />

Mettre en place des diagnostics et corrections.<br />

Travaux Pratiques<br />

Les contentions<br />

Principe des contentions.<br />

Les différentes contentions.<br />

Diagnostics et corrections.<br />

Travaux Pratiques<br />

L'utilisation de Ressource Manager<br />

Présentation<br />

Qaund utiliser le Ressource Manager ?<br />

Etude de cas


Oracle 9i/10g AS,<br />

Administration<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation vous apportera toutes les connaissances<br />

nécessaires pour administrer efficacement, optimiser et sécuriser<br />

un environnement de serveur d'applications Internet.<br />

Après une introduction sur l'installation et l'architecture d'Oracle<br />

Application Server (Oracle9iAS et 10gAS), les participants<br />

configureront ses composants et modules, le Web Cache et le<br />

conteneur d'applications <strong>J2EE</strong> (OC4J). Ils apprendront également<br />

comment déployer des applications PL/SQL, des applications<br />

<strong>Java</strong> mettant en œuvre des Servlets et des JSPs, des<br />

applications Web complètes, ainsi que des Web Services.<br />

Participants<br />

Administrateurs de sites et/ou d'applications qui seront<br />

responsables de configurer et de maintenir des applications<br />

basées sur Oracle AS.<br />

Pré-requis<br />

Des connaissances des applications Web (HTML), des<br />

technologies Oracle et des techniques d'administration.<br />

Travaux pratiques<br />

De nombreux travaux pratiques seront proposés sous 10gAS, les<br />

participants pourront mettre en oeuvre les différentes techniques<br />

abordées.<br />

Contenu<br />

Installation<br />

Planification de l'installation<br />

Conception de l'architecture du site<br />

Besoins matériels<br />

Tâches de pré installation<br />

Installations<br />

Les différents types d'installation<br />

Standard Edition, EE, pré requis<br />

Quelques recommandations utiles<br />

Résolutions des problèmes d'installations<br />

Infrastructure<br />

SSO (Single Sign On)Simplifier l'accès utilisateur <strong>avec</strong> SSO<br />

Etablir l'authentification interne et externe<br />

Personnaliser la page de connexion SSO<br />

OID (Oracle Internet Directory)<br />

Les composants d'OID<br />

Gestion des utilisateurs et des groupes <strong>avec</strong> DAS<br />

Administration<br />

Modification du mot de passe du référentiel de méta-données<br />

Sauvegarder et restaurer une infrastructure<br />

Configurer Oracle Management Server (OMS)<br />

Administrer Oracle AS à travers OEM / AS Control<br />

Présentation d' OEM (Oracle Enterprise Manager) et d'AS Control<br />

Arrêt / (re)démarrage des composants<br />

La console<br />

Configuration de OHS (Oracle HTTP Server)<br />

Les fichiers de configuration<br />

Fichiers de configuration d'OHS<br />

Arrêter et (re)démarrer le serveurHTTP<br />

Modules du serveur HTTP<br />

Les modules, gestion de la configuration<br />

Lecture intelligente de httpd.conf<br />

Fichiers logs et traceshttpd.pid, access_log, error_log<br />

Réinitialiser les fichiers journaux<br />

Sécurité<br />

Authentification (JAAS)<br />

Network security<br />

Obtention et installation de certificats SSL<br />

Sécurisation des ports <strong>avec</strong> HTTPS<br />

Gestion d'applications<br />

116<br />

Configuration des applications PL/SQL<br />

Configuration des options Web PL/SQL d'Oracle AS<br />

Les fichiers plsql.conf et dads.conf<br />

Configurer mod_plsql<br />

Chargement de page PL/SQL <strong>avec</strong> LOADPSP<br />

Configuration des applications CGI/ Perl<br />

Configuration du containeur OC4J<br />

MOD_OC4JIdentifier la requête à transmettre<br />

Identifier quel moteur OC4J va transmettre la requête<br />

Communiquer <strong>avec</strong> le moteur OC4J<br />

La configuration<br />

Les fichiers de configuration<br />

Administration à travers OEM et <strong>avec</strong> les lignes de commande<br />

Déploiement d'applications<br />

Applications Forms<br />

Applications Reports<br />

Applications java<br />

Autres composants (discoverer, top link, ...)Configuration des<br />

applications<br />

Web Services<br />

Qu'est-ce qu'un Web Service ?<br />

Utilité d'un Web Service<br />

Mise en Oeuvre<br />

Web cache<br />

Fonctionnalités et concepts de Web Cache Mise en oeuvre<br />

Démarrer le Web Cache<br />

Créer/modifier une règle de cache<br />

Gérer les erreurs<br />

Les statistiques<br />

Les fichiers de log du Web Cache<br />

Clustering<br />

Equilibrage de charge des applications<br />

Disponibilité du site <strong>avec</strong> plusieurs clusters<br />

Notion de "farm"<br />

Mise en oeuvre<br />

Création d'un cluster <strong>J2EE</strong><br />

Rattachement d'instances <strong>J2EE</strong><br />

Déploiement à chaud dans une instance<br />

Aperçu des fonctionnalités de Portal<br />

Centralisation des informations<br />

Personnalisation


Administration Oracle<br />

10gAS Avancé<br />

Durée 2 jours<br />

Objectifs<br />

Utiliser les outils de diagnostic et les procédures iAS pour<br />

optimiser les performances du serveur. Introduction de la haute<br />

disponibilité au travers des fonctionnalités de clustering (Load<br />

Balancing, les Clusters,Tolérance aux fautes dans un<br />

environnement distribué ). Optimiser : serveur web, conteneur<br />

<strong>J2EE</strong>, Gérer la haute disponibilité.<br />

Participants<br />

Ce cours s'adresse aux Administrateurs de bases de données,<br />

ingénieurs système, chef de projets<br />

Pré-requis<br />

Administration ORACLE Application Server<br />

Contenu<br />

Architecture et concepts du server 10gAs<br />

Oracle HTTP Server, Web Cache, <strong>Java</strong> Virtual Machine, OC4J,<br />

Concepts avancés : cluster et load-balacing<br />

Administration centralisée<br />

Configuration d'Oracle Enterprise Manager<br />

Service de Monitoring <strong>avec</strong> DMS<br />

Statistiques et monitoring pour les composants 10gAS<br />

Serveur http oracle<br />

Architecture, Utiliser les directives pour le tuning du serveur<br />

HTTP<br />

Mesurer les performances,<br />

Utilisation de mod_rewrite<br />

Conteneur j2ee (oc4j)<br />

Optimisation de JDBC, cache de connexions<br />

Optimisation des Applications Web et des EJB<br />

<strong>Java</strong> Object Cache,<br />

Surveillance de la performance des composants OC4J, OC4J<br />

Clustering et moad balancing<br />

Web cache<br />

Généralités. Facteurs affectant les performances.<br />

Rafraîchissement du cache<br />

Système de Cache Dynamique (ESI).<br />

Cache de plusieurs sites.<br />

Cache clustering<br />

Surveillance des performances du cache<br />

Autres configurations avancées<br />

Gestion des process.<br />

Détection automatique des erreurs OPMN<br />

Configurer mod_oc4j, opmn.xml.<br />

Exemple de configurations<br />

Gestion de la sécurité : OID<br />

Présentation. Mise en œuvre, utilisation<br />

117


ORACLE Développer des<br />

applications graphiques<br />

<strong>avec</strong> Forms<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation intensive vous permettra de maîtriser la création<br />

d'applications graphiques <strong>avec</strong> le module Forms de l'outil<br />

ORACLE Developer, le L4G d'ORACLE.<br />

Pour une meilleure prise en main, plus de la moitié du temps de<br />

ce module est consacrée aux travaux pratiques.<br />

Participants<br />

Ce cours s'adresse aux Chefs de projet, Concepteurs et<br />

Développeurs.<br />

Pré-requis<br />

Indispensable : les langages SQL, PL/SQL.<br />

Recommandé : le cours Introduction Technique à ORACLE.<br />

Contenu<br />

Introduction<br />

Les principales fonctionnalités<br />

Les composants de ORACLE Developer Forms<br />

L'interface de développement<br />

Les fenêtres de développement :Object Navigator (Navigateur<br />

d'Objets)<br />

Layout Editor (Editeur de Présentation)<br />

Properties (Palette de Propriétés)<br />

PL/SQL Editor (Editeur PL/SQL)<br />

Object Libraries (Bibliothèques d'Objets)<br />

Menu Editor (Editeur de Menus)Les assistants :Data Block<br />

Wizard (Assistant de Création de Blocs)<br />

Layout Wizard (Assistant de Présentation)<br />

Chart Wizard (Assistant de Création de Graphiques)<br />

LOV Wizard (Assistant de Création de List Of Values)<br />

Le module form<br />

Les objets :Triggers (Déclencheurs)<br />

Alerts (Alertes)<br />

Attached Libraries (Bibliothèques Attachées)<br />

Data Blocks (Blocs de Données)<br />

Canvases (Canevas). Editors (Editeurs)<br />

List Of Values : LOVs (Listes de Valeurs)<br />

Object Groups (Groupes d'Objets)<br />

Parameters (Paramètres)<br />

Popup Menus (Menus Contextuels)<br />

Program Units (Unités de Programme)<br />

Property Classes (Classes de Propriétés)<br />

Record Groups (Groupes d'Enregistrements)<br />

Reports (Etats). Visual Attributes (AttributsVisuels)<br />

Windows (Fenêtres)<br />

118<br />

Le module menu<br />

Création de menus<br />

Différents types de menu-items<br />

Attacher des menus à des forms<br />

Les routines usuelles<br />

Les applications<br />

Les messages<br />

Les enregistrements<br />

Les requêtes<br />

Le Timer<br />

Le Web<br />

Spécificités forms 9i n-tiers<br />

Des exemples de développement et mise en œuvre<br />

Les applications " multi-forms "<br />

L'utilisation variables système<br />

L'affichage message d'erreur dans une alerte<br />

La manipulation d'une liste<br />

Le remplissage d'un List Item à partir d'un Record Group<br />

La manipulation d'un Radio Group<br />

L'affichage d'une LOV<br />

Les Variables globales et paramètres<br />

Le pointeur de souris<br />

Migrer vers Forms 9i n-tiers


Oracle Forms<br />

fonctionnalités Avancées<br />

Durée 2 jours<br />

Objectifs<br />

Intégrer les nouvelles fonctionnalités du module Forms<br />

d'ORACLE Developer 6i.<br />

Participants<br />

Ce cours s'adresse aux Chefs de projet, Concepteurs et<br />

Développeurs.<br />

Pré-requis<br />

Forms 4.5 ou sup<br />

Contenu<br />

Ce cours est essentiellement composé de TPs<br />

Classes de Propriétés (Property Classes)<br />

Bulles d'aide (Tooltip)<br />

Canevas à onglets (Tab Canvas)<br />

Eléments récapitulatifs (Summary et Formula Items)<br />

Menus Instantanés (Popup Menus)<br />

Modules Menus (Nouvelles options de menus)<br />

Paramètres (Parameters)<br />

Remplissage de List-Item <strong>avec</strong> Record Group<br />

Objets OLE<br />

ActiveX<br />

Arbres hiérarchiques (Hierarchical Trees)<br />

Blocs basés sur procédure stockée renvoyant des données sous<br />

forme de tableaux<br />

Blocs basés sur procédure stockée renvoyant des données sous<br />

forme de curseurs référencés<br />

Triggers transactionnels<br />

Requêtes dans clauses FROM (FROM Clause Queries)<br />

Bibliothèques d'objets (Object Libraries)<br />

Groupes d'objets (Object Groups)<br />

Modèles de formulaires (Form Templates)<br />

LOB (Large Objects)<br />

Types d'objets (Object Types)<br />

Triggers INSTEAD OF<br />

Timers<br />

Zones <strong>Java</strong> (Bean Areas)<br />

Etats associés aux forms (Oracle*Reports)<br />

Graphiques associés aux forms (Oracle*Graphics)<br />

119


Oracle : Developper<br />

Reports<br />

Durée 3 jours<br />

Objectifs<br />

Créer des états <strong>avec</strong> le module Reports du package Developer.<br />

De nombreux Travaux pratiques (mise en œuvre) illustrent ce<br />

cours.<br />

Participants<br />

Ce cours s'adresse aux Chefs de projet, Concepteurs et<br />

Développeurs.<br />

Pré-requis<br />

Indispensable : les langages SQL et PL/SQL.<br />

Recommandé : le cours Introduction Technique à ORACLE,<br />

Developer Forms.<br />

Contenu<br />

Introduction<br />

Les principales fonctionnalités<br />

Les composants d' Oracle Developer Reports<br />

L'interface de développement<br />

Les fenêtres de développement :Object Navigator (Navigateur<br />

d'Objets)<br />

Live Previewer (Pré-Visualisateur)<br />

Data Model (Modèle de Données)<br />

Layout Model (Modèle de Présentation)<br />

Parameter Form (Formulaire de Paramétrage)<br />

Property Palette (Palette de Propriétés)<br />

PL/SQL Editor (Editeur PL/SQL)Les assistants :<br />

Report Wizard (Assistant de Création d'Etats)<br />

Data Wizard (Assistant de Création de Données)<br />

Chart Wizard (Assistant de Création de Graphiques)<br />

Web Wizard (Assistant de Création de pages Web)<br />

Le module report<br />

Les objets du Modèle de Données :System Parameters<br />

(Paramètres Système)<br />

User Parameters (Paramètres Utilisateur)<br />

Queries (Requêtes)<br />

Groups (Groupes)<br />

Formula Columns (Colonnes Formules)<br />

Summary Columns (Colonnes Récapitulatives)<br />

Placeholder Columns (Colonnes Conteneurs)<br />

Data Links (Liens entre Données)<br />

Les objets du Modèle de Présentation :Header Section (Section<br />

En-tête)<br />

Main Section (Section Principale)<br />

Trailer Section (Section de Queue)<br />

Body (Corps)<br />

Margin (Marges)<br />

Group Frames (Cadres de Groupes)<br />

Header Frames (Cadres d'en-tête)<br />

Repeating Frames (Cadres de Répétition)<br />

Boilerplates (Conteneurs)<br />

Fields (Champs)<br />

Les objets du Parameter Form<br />

Fields (Champs)<br />

Graphical Boilerplates (Conteneurs Graphiques)<br />

Text Boilerplates (Conteneurs Textes)<br />

Image Boilerplates (Conteneurs Images)<br />

Report Triggers (Déclencheurs au niveau Etat)<br />

Program Units (Unités de Programme)<br />

Attached Libraries (Bibliothèques Attachées)<br />

120<br />

Les styles de report<br />

Tabular (Tabulaire)<br />

Form-like (Formulaire)<br />

Mailing Label (Etiquette)<br />

Form Letter (Lettre-Type)<br />

Group Left et Group Above (Maître/Détail)<br />

Matrix et Matrix with Group (Matriciel)<br />

La mise en page et programmation pl/sql<br />

Confine mode et Flex mode (Mode Confiné et Mode Flexible)<br />

Anchor (Ancre)<br />

Pagination<br />

Button (Bouton)<br />

Triggers d'affichage conditionnel<br />

Triggers de formatage des objets<br />

Triggers de validation des paramètres<br />

Les packages intégrés<br />

Mise en œuvre<br />

Spécificités reports 9i n-tiers<br />

Migrer vers reports 9i n-tiers


Transact SQL<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation Transact SQL vous permettra de:<br />

- Être capable d'effectuer des requêtes de base<br />

- Savoir grouper et agréger des données<br />

- Disposer de bases solides afin de requêter des données issues<br />

de plusieurs tables<br />

- Comprendre les objets de programmation pour récupérer des<br />

données<br />

- Être en mesure de créer des objets de programmation<br />

Participants<br />

Cette formation Transact SQL s'adresse aux développeurs,<br />

ingénieurs système, responsables de la mise en œuvre et<br />

administrateurs de bases de données SQL Server qui seront<br />

chargés d'écrire des requêtes.<br />

Pré-requis<br />

Posséder une expérience pratique du système d'exploitation<br />

Windows® : être à l'aise <strong>avec</strong> l'environnement graphique.<br />

Comprendre les concepts de base de données relationnelles, tels<br />

que bases de données physiques et logique, modélisation et<br />

normalisation des bases de données, stockage des données dans<br />

les tables, clé primaire, clé étrangère, et jointure entre tables.<br />

Contenu<br />

Présentation du langage Transact-SQL<br />

Langage de programmation Transact-SQL<br />

Types d'instructions. Éléments de la syntaxe Transact-SQL<br />

Utilisation de la documentation en ligne de SQL Server<br />

Utilisation des outils de requête Transact-SQL<br />

Analyseur de requêtes SQL Server<br />

Utilisation de l'utilitaire osql<br />

Exécution d'instructions<br />

Création et exécution de scripts<br />

Extractions de données<br />

Extraction de données à l'aide de l'instruction SELECT<br />

Filtrage des données<br />

Mise en forme des ensembles de résultats<br />

Traitement des requêtes<br />

Regroupement et synthèse de données<br />

Énumération des n premières (TOP) valeurs<br />

Utilisation de fonctions d'agrégation<br />

Présentation de la clause GROUP BY<br />

Génération de valeurs d'agrégation dans des ensembles de<br />

résultats Utilisation des clauses COMPUTE et COMPUTE BY<br />

Jointure de tables<br />

Utilisation d'alias pour les noms de table<br />

Combinaison de données provenant de plusieurs tables<br />

Combinaison d'ensembles de résultats<br />

Exécution de requêtes sur plusieurs tables<br />

Utilisation de sous-requêtes<br />

Présentation des sous-requêtes Utilisation d'une sous-requête en<br />

tant que table dérivée, en tant qu'expression, pour corréler des<br />

données<br />

Utilisation des clauses EXISTS et NOT EXISTS<br />

Utilisation de sous-requêtes<br />

Modification de données<br />

Utilisation de transactions<br />

Insertion et suppression de données<br />

Mise à jour et modification de données<br />

Extension Transact SQLOUTER APPLY et CROSS APPLY<br />

PIVOT et UNPIVOT<br />

TRY et CATCH<br />

Présentation des objets de programmation<br />

Présentation, avantages des vues<br />

Création de vues, et utilisation<br />

Présentation des procédures stockées, des déclencheurs et des<br />

fonctions définies par l'utilisateur<br />

121


Mise en œuvre de SQL<br />

Server 2005<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation SQL Serveur 2005 de 5 jours permettra aux<br />

administrateurs bases de données SQL Server 2005 de:<br />

- Savoir résoudre les problèmes de performance<br />

- Comprendre comment créer des types de données et des tables<br />

- Apprendre à planifier, créer et optimiser des index<br />

- Savoir implémenter l'intégrité de données dans des bases de<br />

données Microsoft SQL Server 2005 en utilisant les contraintes,<br />

triggers et schémas XML<br />

- Être capable d'implémenter des procédures stockées et des<br />

fonctions<br />

- Savoir utiliser le Service Broker pour créer une solution de<br />

messaging-based<br />

Participants<br />

Développeurs de bases de données,<br />

Administrateurs et exploitants de bases de données<br />

Pré-requis<br />

Connaissance de Transact-SQL<br />

Contenu<br />

Créer des bases de données et des fichiers de bases de<br />

données SQL Serveur 2005<br />

Créer des bases de données<br />

Créer des groupes de fichiers<br />

Créer des schémas<br />

Créer des captures instantanées (Snapshots) de bases de<br />

données<br />

Créer des types de données et des tables<br />

Créer des types de données<br />

Créer des tables<br />

Créer des tables partitionnées<br />

Utiliser des données XML<br />

Récupération de code XML à l'aide de FOR XML<br />

Décomposition de données XML à l'aide d'OPENXML<br />

Présentation de XQuery<br />

Utilisation du type de données XML<br />

Création et paramétrage des index<br />

Planifier des index<br />

Créer des index<br />

Optimiser des index<br />

Créer des index XML<br />

Gérer l'intégrité des données<br />

A l'aide de contraintes<br />

Vue d'ensemble de l'intégrité de données<br />

Implémenter des contraintes<br />

A l'aide de déclencheurs et de schémas XML<br />

Implémentation de déclencheurs<br />

Implémentation de schémas XML<br />

Les vues<br />

Introduction aux vues<br />

Créer et gérer des vues<br />

Optimiser la performance en utilisant les vues<br />

Les procédures stockées<br />

Implémenter des procédures stockées<br />

Créer des procédures stockées paramétrées<br />

Créer des fonctions<br />

Gérer les erreurs<br />

Contrôler le contexte d'exécution<br />

Utiliser des fonctions<br />

Créer et utiliser des fonctions<br />

Travailler <strong>avec</strong> des fonctions<br />

122<br />

Contrôler le contexte d'exécution<br />

CLR (Common Language Runtime )<br />

Introduction au Common Language Runtime SQL Server<br />

Importer et configurer des assemblées<br />

Créer des objets de bases de données managées<br />

Gérer les transactions et les verrous<br />

Présentation de l'architecture des verrous<br />

Gestion des verrous<br />

Gestion des transactions<br />

Utiliser le Service Broker<br />

Vue d'ensemble du Service Broker<br />

Créer des objets de Service Broker<br />

Envoyer et recevoir des messages<br />

Utiliser le services de notifications (optionnel)<br />

Introduction<br />

<strong>Développement</strong> d'une solution de notification


Administrer une base de<br />

données SQL Server 2005<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation vous apportera toutes les connaissances<br />

indispensables pour installer, configurer et gérer un serveur de<br />

bases de données Microsoft SQL 2005.<br />

A l'issue de ce stage les participants sauront notamment :<br />

Comparer les versions et les nouvelles fonctionnalités de SQL<br />

Server 2005<br />

Installer et configurer un serveur de bases de données Microsoft<br />

SQL Server 2005<br />

Utiliser les outils de gestion et d'administration<br />

Gérer les bases de données et les index<br />

Gérer le suivi des performances d'un serveur de bases de<br />

données<br />

Gérer la sécurité des données dans SQL Server 2005<br />

Sauvegarder, restituer et récupérer les bases et les données<br />

Gérer les transformations et l'intégration des données<br />

Prévoir et mettre en œuvre une haute disponibilité des données<br />

Etablir et mettre en application un plan de réplication de données<br />

Gérer les tâches et les alertes<br />

Gérer le service des notifications<br />

Gérer le service Broker<br />

Gérer le service des rapports<br />

Participants<br />

Informaticiens administrateurs de bases de données ou<br />

ingénieurs systèmes ayant à installer, administrer et maintenir un<br />

serveur Microsoft SQL Server 2005. Personnes ayant à faire du<br />

support de premier niveau et de second niveau aux utilisateurs et<br />

aux équipes techniques applicatives<br />

Pré-requis<br />

Connaissances du langage SQL. Connaissance de l'utilisation<br />

d'un système fenêtré de type Windows.<br />

Travaux pratiques<br />

Au cours de cette formation SQL server 2005, vous apprendrez à<br />

installer, configurer et gérer un serveur de bases de données<br />

Microsoft SQL Server 2005. Les exercices alterneront <strong>avec</strong> le<br />

cours de manière à fournir une illustration concrète des thèmes<br />

étudiés.<br />

Contenu<br />

Introduction à l'architecture Microsoft SQL Server 2005<br />

Architecture de Microsoft SQL Server 2005<br />

Les composants indispensables: " Database Engine, Analysis<br />

Services, SQL Server Integration Services, Notification Services,<br />

Reporting Services, Service Broker, Common Language Runtime,<br />

Native http Support, Réplication, Full Text Search "<br />

Performance des serveurs : gestion dynamique de la mémoire et<br />

du CPU, montage à chaud<br />

Nouvelles fonctionnalités : type de données XML, amélioration du<br />

stockage, tables partitionnées et indexation native, niveau<br />

d'isolation des données par capture instantanée, SQLiMail<br />

Installation et configuration de Microsoft SQL Server 2005<br />

Versions de SQL Server 2005 et pré requis matériels et logiciels<br />

Migration vers SQL Server 2005 : cohabitation d'instances<br />

nommées<br />

Vérifications de pré installation : " System Consistency Checker "<br />

Sélection des composants à installer et ajout et / ou suppression<br />

de composants<br />

Installations silencieuses, automatisées, distantes, en cluster<br />

Inscription du serveur et options de configuration<br />

Contrôle de l'installation et paramétrage<br />

Travaux pratiques<br />

Installation standard de SQL Server 2005 ; Ajout de composants<br />

supplémentaires ; Préparation pour une installation silencieuse ;<br />

Contrôle de l'installation et paramétrage<br />

123<br />

Outils et interfaces d'administration<br />

SQL Server Management Studio : explorateur d'objets et de<br />

solutions, analyseur de requêtes,<br />

SQL Computer Manager : services, configuration bibliothèques<br />

réseau.<br />

Outil SQLCMD : exécution de scripts SQL, dialogue interactif<br />

SQL Management Objects : objets SMO et RMO.<br />

Travaux pratiques<br />

Utilisation des interfaces d'administration ; Création d'une base de<br />

données ; Importation de données dans la base ; Sauvegarde de la<br />

base par l'outil ou par SMO<br />

Gestion des bases de données et des index<br />

Création d'une base de données, insertion de données<br />

Sauvegarde/Restauration des données dans SQL Server 2005<br />

Gestion des types d'index, caractéristiques et opérations autorisées<br />

Gestion de l'outil intelligent de paramétrage d'index : " Database<br />

Tuning Advisor "<br />

Gestion et paramétrage des bases de données<br />

Maintenance des bases de données<br />

Assistant de migration de base de données Oracle<br />

Travaux pratiques<br />

Manipulation des bases de données ; Création des structures et<br />

remplissage des données <strong>avec</strong> les outils adaptés ; Maintenance de<br />

bases<br />

Gestion et suivi des performances de Microsoft SQL Server<br />

2005<br />

Gestionnaire de Profils : Analysis Services, Plans d'exécution,<br />

Verrous, XML, agrégats de données<br />

Déclencheurs pour les instructions DDL : CREATE, DROP, ALTER,<br />

UPDATE STATISTICS<br />

Gestion des vues statiques et dynamiques de méta-données<br />

Travaux pratiques<br />

Mise en place des surveillances sur les modifications de structure.<br />

Mise en oeuvre des événements de modification. Gestion de<br />

requêtes SQL de méta-données<br />

Gestion de la sécurité des données<br />

Introduction aux nouvelles architectures de sécurité : mots de<br />

passe, étendues hiérarchiques, utilisateurs, connexions SQL,<br />

schéma, méta données, contexte d'exécution<br />

Nouvelles instructions de sécurité : " Principals", " Securables ", "<br />

Permissions "<br />

Gestion de la sécurité : connexions SQL, connexions utilisateurs,<br />

Gestion des schémas et des espaces de noms<br />

Gestion des contextes de sécurité<br />

Gestion des permissions de serveur, de base de données, de<br />

groupe<br />

Gestion des certificats et du chiffrement<br />

Travaux pratiques<br />

Gestion de la sécurité : serveurs, bases de données, permissions<br />

avancées et schémas<br />

Gestion des sauvegardes et des récupérations de données<br />

Nouvelles fonctionnalités : capture instantanée, opérations en ligne,<br />

Sauvegardes en miroir, vérifications par checksum, récupération<br />

des données Sauvegardes et restitutions de données : complètes,<br />

différentielles, partielles<br />

Instructions supprimées: " BACKUP LOG WITH NO_LOG " et "<br />

BACKUP LOG WITH NO_TRUNCATE "<br />

Récupération des bases systèmes<br />

Gestion de défaillances de serveur, redémarrage en cas de<br />

défaillance<br />

Travaux pratiques<br />

Création d'une opération de sauvegarde ; Création d'une capture<br />

instantanée<br />

Gestion de l'intégration des données (SSIS)/ exportation de<br />

données<br />

Création de packages : importer des sources hétérogènes,<br />

alimenter les Data Warehouses ou DataMart<br />

Déverminage et déploiement de packages<br />

Travaux pratiques<br />

Création et exécution de packages de données<br />

Gestion de la disponibilité des données<br />

Introduction à la disponibilité des données : clustering, log shipping,<br />

mirroring<br />

Implémentation et gestion des miroirs de bases de données<br />

Définition des rôles de serveurs : serveur principal, serveur miroir,<br />

serveur témoins<br />

Gestion des processus de communication entre<br />

Présentation de l'intégration de services<br />

Transformations de données<br />

Conception graphique et assistants d'importation serveurs miroirs<br />

Travaux pratiques<br />

Création d'une infrastructure de haute disponibilité de données par<br />

serveurs miroirs ; Tests de disponibilité<br />

Gestion de la réplication des données


Optimisation d’une base<br />

SQL serveur 2005<br />

Durée 5 jours<br />

Objectifs<br />

Au cours de cette formation Optimsation SQL serveur 2005, les<br />

participants découvriront les principes de modélisation et sauront<br />

ainsi concevoir des bases de données de façon optimale.<br />

Cette formation permettra notamment de:<br />

Savoir formuler un modèle conceptuel<br />

Apprendre à analyser et à évaluer la conception logique de bases<br />

de données<br />

Être en mesure d'appliquer des conseils pratiques pour concevoir<br />

une base de données physique et assurer sa montée en charge<br />

Être à même de concevoir une stratégie d'accès aux bases de<br />

données<br />

Savoir modéliser les dépendances de bases de données<br />

Participants<br />

Développeurs de bases de données expérimentés dans le<br />

développement de solutions de bases de données SQL Server<br />

Pré-requis<br />

Expérience dans la création de requêtes Transact-SQL, Stage<br />

PSQA5 :"Administrer une base de données SQL Server 2005" ou<br />

connaissances équivalentes<br />

Travaux pratiques<br />

Au cours de cette formation, vous apprendrez à installer,<br />

configurer, gérer un serveur de bases de données de manière<br />

optimale Microsoft SQL Server 2005. Les exercices alterneront<br />

<strong>avec</strong> le cours de manière à fournir une illustration concrète des<br />

thèmes étudiés.<br />

Contenu<br />

Aborder la conception de bases de données<br />

systématiquement<br />

Présentation de la conception d'une base de données<br />

Collecte des besoins s'appliquant à la base de données<br />

Création d'une base de données conceptuelle<br />

Modélisation d'une base de données<br />

Au niveau logique<br />

Élaboration d'un modèle logique de base de données<br />

Particularités pour un traitement OLTP<br />

Particularités pour un entrepôt de données (Datawarehouse)<br />

Évaluation de modèles logiques<br />

Au niveau physique<br />

Création des objets physiques de la base de données<br />

Étude des contraintes<br />

Conception de la sécurité de la base de données<br />

Étude des options de la base de données et du serveur<br />

Évaluation du modèle physique<br />

Conception d'une stratégie d'accès à la base de données<br />

Conception d'un accès sécurisé aux données<br />

Conception de fonctions définies par l'utilisateur<br />

Utilisation des procédures stockées<br />

Modélisation des dépendances de la base de données<br />

Modélisation des dépendances d'une base de données locale<br />

Modélisation des dépendances d'une base de données distante<br />

Concevoir des procédures stockées<br />

Mesurer les performances de la base de données<br />

Importance des tests<br />

Les différents types de tests<br />

Utiliser Sysmon pour les performances des requêtes :<br />

Utiliser Profiler pour les performances des requêtes : Profiler<br />

Identifier les verrous et les blocages<br />

Optimisation des requêtes pour améliorer les performances<br />

Modèle d'optimisation des performances : requêtes<br />

Qu'est-ce que le flux logique d'une requête ?<br />

Considérations sur l'utilisation des sous-requêtes<br />

Concevoir des requêtes efficaces<br />

124<br />

Nouvelle analyse des curseurs dans les requêtes<br />

Modèle d'optimisation des performances : solutions fondées sur les<br />

requêtes de sets de données<br />

Cinq étapes pour élaborer un curseur<br />

Méthodologies pour repenser les curseurs<br />

Optimisation de la stratégie d'indexation<br />

Modèle d'optimisation des performances : index<br />

Considérations sur l'utilisation des index<br />

Meilleures utilisations des index clustérisés<br />

Bonnes pratiques pour une conception d'index non clustérisés<br />

Comment documenter une stratégie d'indexation<br />

Gérer les accès concurrents<br />

Modèle d'optimisation des performances : verrous et blocages<br />

Stratégies pour réduire les verrous et les blocages


SQL Server 2005 - Sécurité<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation permettra aux participants de :<br />

Savoir contrôler la sécurité du serveur<br />

Être en mesure de répondre aux menaces<br />

Être à même de concevoir des stratégies de sécurité<br />

Comprendre comment concevoir une stratégie de réplique aux<br />

menaces et aux attaques<br />

Participants<br />

Administrateurs des serveurs de bases de données<br />

Développeurs de bases de données expérimentés devant mettre<br />

en oeuvre des applications sécurisées<br />

Pré-requis<br />

Expérience dans la création de requêtes Transact-SQL<br />

Formation SQL Server 2005 : Administration des serveurs et des<br />

bases de données ou connaissances équivalentes<br />

Contenu<br />

Introduction à la conception de la sécurité SQL Server<br />

Principes de la sécurisation d'une base de données<br />

Méthodologie pour concevoir une stratégie de sécurité <strong>avec</strong> SQL<br />

Server<br />

Surveillance de la sécurité de SQL Server<br />

Conception d'une stratégie de sécurité pour une<br />

infrastructure SQL Server<br />

Intégration dans EAS (système d'authentification d'<strong>entreprise</strong>)<br />

<strong>Développement</strong> d'une stratégie de sécurité au niveau de<br />

Windows Server<br />

<strong>Développement</strong> d'une stratégie de communication sécurisée<br />

Définition des standards de surveillance de la sécurité de SQL<br />

Server<br />

Conception des stratégies de sécurité pour les bases de<br />

données et leurs instances<br />

Conception d'une stratégie de sécurité au niveau d'une instance<br />

Conception d'une stratégie de sécurité au niveau d'une base de<br />

données<br />

Conception d'une stratégie de sécurité au niveau d'un objet<br />

Définition des règles standards de surveillance de la sécurité pour<br />

les bases de données et leurs instances<br />

Intégration du chiffrement des données dans la conception<br />

de la sécurité d'une base de données<br />

Sécurisation des données par l'utilisation d'un chiffrement et de<br />

certificats<br />

Conception des stratégies de chiffrement des données<br />

Détermination d'une méthode de stockage des clés<br />

Conception d'une stratégie d'exception à la sécurité<br />

Analyse des exigences en matière de réglementation et de celles<br />

spécifiques à l'<strong>entreprise</strong><br />

Détermination des exceptions et analyse de leur impact<br />

Conception d'une stratégie de réplique aux menaces et aux<br />

attaques<br />

Conception d'une stratégie de réplique aux attaques de types<br />

virus et vers<br />

Mise en oeuvre d'une parade contre les attaques de type déni de<br />

service<br />

Conception d'une stratégie de réplique aux attaques de type<br />

injection SQL<br />

125


SQL Server 2005<br />

Intégration Services (SSIS)<br />

- Administration<br />

Durée 3 jours<br />

Objectifs<br />

SQL Server 2005 Integration Services est un ETL puissant<br />

permettant d'extraire des données à partir de sources variées, de<br />

les transformer suivant des règles simples ou complexes et de les<br />

charger vers différentes destinations . Cette formation SSIS de 3<br />

jours est destinée aux développeurs chargés de créer des<br />

applications de transfert de données à l'aide de SSIS.<br />

Cette formation vous permettra de:<br />

Appréhender les possibilités d'extraction, transformation et<br />

chargement de données de SSIS<br />

Apprendre à concevoir une solution ETL<br />

Maîtriser les outils de développement et de création de packages<br />

SSIS<br />

Apprendre à créer des flux de contrôle et de données<br />

Savoir journaliser, déboguer et traiter les erreurs des packages<br />

SSIS<br />

Apprendre à déployer, gérer et sécuriser les packages<br />

Participants<br />

Développeurs et chefs de projet en charge de la conception<br />

d'applications, d'extractions, transformations et chargements de<br />

données en utilisant SQL Server 2005 Integration Services<br />

Pré-requis<br />

Expérience du développement d'applications sur SQL Server<br />

2005,<br />

Connaissance du langage Transact SQL<br />

Contenu<br />

Introduction à SQL Server 2005 Integration Services<br />

Présentation des solutions Integration Services : utilisation<br />

courante, concepts fondamentaux, architecture<br />

Outils d'Intégration Services : Business Intelligence Development<br />

Studio, SQL Server Management Studio, assistants, utilitaires de<br />

ligne de commande<br />

<strong>Développement</strong> de solutions Integration Services<br />

Créer une solution d'Integration Services : projets, packages,<br />

connexions, flux de contrôle, flux de données, traitement des<br />

erreurs, explorateur de packages<br />

Utiliser des variables<br />

Construire et exécuter une solution<br />

Implémenter les flux de contrôle<br />

Tâches de flux de contrôle : transfert de données et d'objets, de<br />

bases de données, tâches d'analyse, de fichier et de protocole<br />

réseau FTP, messagerie Web, XML, exécution de scripts, de<br />

programmes et de packages, tâches de WMI et plan de<br />

maintenance<br />

Contraintes de précédences<br />

Containers de séquence, boucles FOR et FOREACH<br />

Implémenter les flux de données<br />

Sources et destinations de flux de données : DataReader, Excel,<br />

fichier plat, OLE DB, fichier brut, XML, SQL Server, Analysis<br />

Services...<br />

Transformations de flux de données : tris et regroupements,<br />

transformations de colonnes, recherches, processus<br />

personnalisés, séparations, fusions, jointures, prélèvements,<br />

analyses et audits de données<br />

126<br />

Chemin de flux de données, afficheurs de données, traitement des<br />

échecs<br />

Implémenter la journalisation<br />

Présentation de la journalisation<br />

Implémentation de la journalisation<br />

Débogage et traitement des erreurs<br />

Débogage de package : utilisation des points d'arrêt, fenêtre de<br />

débogage, compteurs de ligne, afficheurs de données, scripts,<br />

évènements<br />

Traitement des erreurs<br />

Implémenter les points de contrôle et les transactions<br />

Mise en oeuvre des points de contrôle<br />

Mise en oeuvre des transactions<br />

Déploiement des packages<br />

Configuration des packages : propriétés dynamiques d'accès aux<br />

données<br />

Déploiement des packages : options et utilitaires de déploiement<br />

Gestion et sécurisation des packages<br />

Administration des packages : stockages, importation, exportation,<br />

modification de configuration, planification, contrôle, sauvegarde et<br />

restauration de packages<br />

Sécurisation des packages : niveaux de protection, rôles et<br />

signatures des packages


SQL Server 2005 Reporting<br />

Services (SSRS) -<br />

Création, publication et<br />

gestion de rapports<br />

Durée 3 jours<br />

Objectifs<br />

SQL Server 2005 Reporting Services permet de créer et de<br />

publier des rapports à partir de sources variées aux formats<br />

différents.<br />

Cette formation SSRS de 3 jours est destinée aux concepteurs,<br />

développeurs et administrateurs chargés de créer et de publier<br />

des rapports ainsi que de les gérer sur un serveur de rapports<br />

Cette formation vous permettra également de:<br />

- Comprendre les fonctionnalités de SQL Server Reporting<br />

Services<br />

- Apprendre à créer et à diffuser des rapports<br />

- Être à même d'administrer une plate-forme de stockage et de<br />

déploiement de rapports au sein d'une <strong>entreprise</strong><br />

- Savoir concevoir une solution de reporting dans le cadre d'une<br />

architecture décisionnelle en prenant en compte les impératifs de<br />

sécurité et de performance.<br />

Participants<br />

Toute personne en charge du développement et de la mise en<br />

oeuvre d'une solution de reporting,<br />

consultants, spécialistes Business Intelligence souhaitant<br />

connaître la solution Microsoft pour les applications de reporting<br />

Pré-requis<br />

Avoir une bonne connaissance des systèmes de gestion de<br />

bases de données et de SQL Server en particulier,<br />

expérience du développement sous Transact SQL.<br />

Expérience de la conception de rapports<br />

Contenu<br />

Présentation générale de Microsoft SQL Server 2005<br />

Reporting Services<br />

Introduction aux services de rapport de Microsoft SQL Server<br />

2005<br />

Installer Reporting Services<br />

Les outils de Reporting Services<br />

Création d'un rapport simple<br />

Créer un rapport simple à l'aide de l'assistant de création de<br />

rapport et du concepteur de rapport<br />

Mettre en page un rapport<br />

Calculer des valeurs<br />

Améliorer des rapports de base<br />

Navigation interactive<br />

Afficher les données<br />

Manipulation des jeux de données<br />

Définir les données<br />

Utiliser les paramètres et les filtres<br />

Utiliser les listes de paramètres<br />

Utilisation des modèles de rapport<br />

Créer des modèles de rapport Utiliser Report Builder<br />

Publication et exécution des rapports<br />

Publier du contenu<br />

Exécuter un rapport<br />

Créer une instance en cache<br />

Créer des clichés instantanés et un historique de rapports<br />

Utilisation des abonnements pour distribuer des rapports<br />

Présentation des abonnements<br />

Créer des abonnements<br />

Gérer les abonnements<br />

Administration des services de rapport<br />

Administrer le serveur de rapport<br />

Analyse des performances et de la fiabilité<br />

Administrer les bases de données de rapport<br />

Administrer la sécurité<br />

127<br />

Programmation des services de rapport<br />

Interroger les informations du serveur à l'aide d'un service Web<br />

Automatiser les rapports<br />

Afficher des rapports sous différents formats<br />

Créer du code personnalisé


SQL Server 2005 Analysis<br />

Services (SSAS) - Mise en<br />

œuvre<br />

Durée 3 jours<br />

Objectifs<br />

Toutes les organisations produisent des volumes de données<br />

toujours plus importants. Être capable de les exploiter et de les<br />

analyser afin de prendre les bonnes décisions représente<br />

aujourd'hui un enjeu stratégique. La plate-forme SQL Server<br />

2005 Analysis Services permet d'organiser les données afin de<br />

les explorer, de les analyser et éventuellement d'anticiper leur<br />

évolution future. Les participants à cette formation SSAS<br />

acquerront les connaissances nécessaires à la création et<br />

l'administration des structures d'analyses de données.<br />

Cette formation vous permettra également de:<br />

- Appréhender les possibilités d'exploration et d'analyse de<br />

données de SSAS<br />

- Apprendre à concevoir une solution d'exploration et d'analyse<br />

de données<br />

- Maîtriser les outils de développement et de création d'une<br />

solution d'analyse de données<br />

- Apprendre à créer des cubes à partir de mesures et de<br />

dimensions<br />

- Savoir interroger un cube et personnaliser les fonctionnalités<br />

- Apprendre à déployer, gérer et sécuriser une base de données<br />

multidimensionnelle<br />

Participants<br />

Analystes, développeurs, administrateurs et concepteurs de<br />

solutions d'exploration et d'analyse de données en utilisant SQL<br />

Server 2005 Analysis Services<br />

Pré-requis<br />

Expérience de la conception, l'administration et l'implémentation<br />

des bases de données <strong>avec</strong> SQL Server 2005<br />

Contenu<br />

Introduction à SQL Server 2005 Analysis Services<br />

Introduction à l'analyse de données : besoins, types d'analyse,<br />

concepts de base OLAP<br />

Présentation de SQL Server Analysis Services : fonctionnalités,<br />

architectures, outils<br />

Installation de SQL Server 2005 Analysis Services : contraintes<br />

d'installation et de mise à jour<br />

Création de solutions d'analyse multidimensionnelle<br />

Développer des solutions <strong>avec</strong> Analysis Services<br />

Créer des sources de données et des vues de source de<br />

données<br />

Créer un cube<br />

Travailler <strong>avec</strong> des dimensions<br />

Configurer des dimensions<br />

Définir des hiérarchies<br />

Travailler <strong>avec</strong> des attributs de tri et de regroupement<br />

Travailler <strong>avec</strong> des mesures et des groupes de mesure<br />

Travailler <strong>avec</strong> des mesures : affichage des mesures, valeurs et<br />

expressions Travailler <strong>avec</strong> des groupes de mesure : propriétés,<br />

relations <strong>avec</strong> les dimensions, options de stockage,<br />

partitionnement, agrégation<br />

Interrogation de solutions d'analyse multidimensionnelle<br />

Les fondamentaux des expressions multidimensionnelles (MDX)<br />

Ajouter des calculs à un cube<br />

Personnalisation des fonctionnalités d'un cube<br />

Implémenter des indicateurs de performance (KPI)<br />

Implémenter des actions : expressions MDX ou basées sur le<br />

serveur<br />

128<br />

Implémenter des perspectives : focus sur une partie spécifique d'un<br />

cube<br />

Implémenter des traductions : localiser leurs valeurs affichées en<br />

fonction de la langue du client<br />

Déploiement et sécurisation d'une base de données d'Analysis<br />

Services<br />

Déployer une base de données d'analyse : projet Business<br />

<strong>Développement</strong> Studio, assistants de déploiement ou de<br />

synchronisation, scriptsXMLA<br />

Sécuriser une base de données d'analyse à l'aide des rôles et des<br />

permissions<br />

Administration d'une solution multidimensionnelle<br />

Configurer les paramètres et recalculer un cube<br />

Journaliser, surveiller et optimiser une solution Analysis Services<br />

Sauvegarder et restaurer une base de données Analysis Services<br />

Introduction au Data Mining<br />

Présentation du Data Mining : analyses statistiques pour dégager<br />

des modèles et des tendances d'évolution des données, outils<br />

prévisionnels<br />

Créer une solution de Data Mining<br />

Valider les modèles de Data Mining


De SQL Server 2005 à SQL<br />

Server 2008 pour<br />

Administrateur<br />

Durée 3 jours<br />

Objectifs<br />

Boosté par l'apparition d'outils décisionnels sur la version 2005,<br />

SQL Server s'implante de plus en plus rapidement dans les<br />

<strong>entreprise</strong>s. Bien que reposant sur la même architecture<br />

technique, la version 2008 apporte des améliorations notables du<br />

point de vue des performances, qui, selon les dires de Microsoft,<br />

sont multipliées par cinq. Au-delà des performances, les progrès<br />

sont également sensibles sur les champs de l'ergonomie et des<br />

fonctionnalités. Ainsi, SQL Server dans sa version 2008 propose<br />

des mécanismes d'administration basés sur des règles, la prise<br />

en charge optimisée des données non structurées telles que les<br />

images et les vidéos ou encore des possibilités de virtualisation<br />

des bases. Les participants à cette formation étendront leur<br />

expertise vers SQL Serveur 2008.<br />

Cette formation SQL server 2008 vous permettra de:<br />

-Comprendre les apports de SQL Server 2008<br />

-Apprendre à mettre en place les procédures d'exploitation<br />

adaptées à la nouvelle version de SQL Server<br />

Participants<br />

- Administrateurs de bases de données expérimentés SQL Server<br />

2005 (DBA)<br />

- Développeurs expérimentés qui souhaitent mettre à jour leurs<br />

compétences vers SQL Server 2008<br />

Pré-requis<br />

Bonne expérience du développement et de l'administration de<br />

bases de données SQL Server 2005<br />

Contenu<br />

Introduction à SQL Server 2008<br />

Les évolutions depuis SQL Server 2005<br />

Préparation à l'installation de SQL Server 2008<br />

Améliorer l'administration <strong>avec</strong> SQL Server 2008<br />

Configuration de serveurs<br />

Politique basée sur la gestion<br />

Améliorer l'exécution <strong>avec</strong> SQL Server 2008<br />

Gestion de la charge de travail <strong>avec</strong> Resource Governor<br />

Gestion de la surveillance <strong>avec</strong> Data Collector<br />

Gestion de l'exécution <strong>avec</strong> Plan Freezing<br />

Améliorer la sécurité <strong>avec</strong> SQL Server 2008<br />

Cryptage des bases de données<br />

Audit de toutes les actions<br />

Améliorer le développement des bases de données <strong>avec</strong> SQL<br />

Server 2008<br />

Amélioration des outils de développement<br />

Amélioration des types de données<br />

Travailler <strong>avec</strong> des données spatiales<br />

Améliorer la disponibilité des bases <strong>avec</strong> SQL Server 2008<br />

Toujours sur les technologies<br />

Réplication transactionnelle d'un réseau d'échanges partagé<br />

Améliorer les entrepôts de données <strong>avec</strong> SQL Server 2008<br />

Améliorations des ETL<br />

Utilisation de tables partitionnéesOptimisation du stockage de<br />

données<br />

Améliorer Reporting Services <strong>avec</strong> SQL Server 2008<br />

Gestion et architecture des services de reporting<br />

Écrire des rapports<br />

Traitement et rendu des rapports<br />

Améliorer Analysis Services <strong>avec</strong> SQL Server 2008<br />

Analyses multidimensionnelles <strong>avec</strong> SQL Server Analysis<br />

Services<br />

Exploitation de données <strong>avec</strong> SQL Server Analysis Services<br />

129


Administration SQL server<br />

2008<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation SQL server 2008 Administration vous permettra<br />

d'administrer le serveur et les bases de données SQL Server<br />

2008 au quotidien.<br />

À l'issue de cette formation SQL server 2008, vous saurez :<br />

- Installer et configurer SQL Server 2008<br />

- Gérer au mieux les fichiers de bases de données et de journal<br />

de transaction <strong>avec</strong> SQL Server 2008<br />

- Assurer la sécurité d'accès de objets, chiffrer au besoin vos<br />

données et vos sessions<br />

- Bâtir un plan de sauvegarde solide, et effectuer des<br />

restaurations rapides en cas de sinistre de vos bases SQL Server<br />

2008<br />

- Surveiller et optimiser votre serveur<br />

- Automatiser vos tâches administratives et mettre en place des<br />

procédures d'alerte en cas de problèmes<br />

- Utiliser Integration Services pour échanger vos données en<br />

environnement SQL Server ou hétérogènes<br />

Participants<br />

Destiné à un public qui a déjà des notions de bases de données,<br />

il détaille les éléments indispensables pour assurer la cohérence,<br />

la sécurité et les performances de votre serveur SQL Server.<br />

Pré-requis<br />

Connaissance du langage SQL et des principes essentiels des<br />

bases de données en générale.<br />

Travaux pratiques<br />

Chaque module est accompagné de travaux pratiques qui<br />

permettent d'expérimenter et d'assimiler les sujets abordés.<br />

Contenu<br />

Installation et configuration de SQL Server 2008<br />

Architecture générale de SQL Server 2008<br />

Éditions disponibles<br />

Installation et configuration de SQL Server 2008<br />

Migration de version antérieure de SQL Server<br />

Outils d'administration<br />

Bases de données système<br />

Gestion des espaces de stockage et des bases de données<br />

<strong>avec</strong> SQL Server 2008<br />

Moteur de stockage et stockage physique<br />

Gestion de la taille et de la croissance des bases<br />

Partitionnement des tables et index<br />

Clichés de bases de données (SNAPSHOT)<br />

Utiliser la gestion par règles (Policy-Based Management)<br />

Implémentation de la sécurité dans SQL Server 2008<br />

Modèle de sécurité dans SQL Server 2008<br />

Connexions et sessions<br />

Rôles, utilisateurs et schémas<br />

Attribution, déni et révocation des privilèges<br />

Chiffrement des données et certificats<br />

Chiffrement transparent d'une base de données<br />

Audit de sécurité<br />

Sauvegarde et restauration <strong>avec</strong> SQL Server 2008<br />

Mode de récupération et influence sur la récupération des<br />

données<br />

Planifier une stratégie de sauvegarde<br />

130<br />

Reprise d'une base de données par restauration<br />

Sauvegarde et restaurations des bases systèmes<br />

Sauvegarde de fichiers et groupes de fichiers<br />

Restaurations en ligne<br />

Planification et automatisation de tâches<br />

Utilisation de l'agent SQL Server pour la planification de travaux<br />

Création de travaux multi-serveurs<br />

Envoi d'e-mail par Database Mail<br />

Création d'alertes<br />

Déclencheurs et Notifications DDL<br />

Transfert et échange de données<br />

Échange de données par BULK COPY<br />

Utiliser Integration Services<br />

Maintenance et surveillance de SQL server 2008<br />

Vues dynamiques de gestion et procédures stockée de<br />

métadonnées<br />

Vérification et réparation des structures de stockage<br />

Maintenance des index<br />

Gestion des statistiques<br />

création de plans de maintenance<br />

Surveiller SQL Server <strong>avec</strong> le moniteur système<br />

Utiliser les notifications d’événements<br />

Performances et optimisation de SQL Server 2008<br />

les journaux d'événements<br />

utilisation du Profiler SQL<br />

Utilisation du Database Tuning Advisor<br />

Visualisation des verrous, détection des verrous mortels<br />

Utiliser Resource Governor pour contrôler la charge dédiée aux<br />

sessions<br />

Utilisation du Data Collector pour centraliser les données de<br />

performance


Administration SQL Server<br />

2008 perfectionnement<br />

Réplication, haute disponibilité, optimisation, Reporting Services<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Administration SQL Server 2008 vous permettra<br />

d'administrer les fonctions avancées de SQL Server 2008. À<br />

l'issue de cette formation Administration SQL Server 2008, vous<br />

saurez :<br />

- Mettre en place les différents modèles de réplication<br />

- Choisir et mettre en place les solutions de haute disponibilité<br />

- Optimiser SQL server pour les volumes de base importants<br />

- Administrer Reporting Service<br />

- Mettre en place un datawarehouse<br />

Pré-requis<br />

Bonne connaissance préliminaire de SQL Server 2008, avoir<br />

suivi le cours Administration SQL server 2008 ou connaissances<br />

équivalentes.<br />

Travaux pratiques<br />

Chaque module est accompagné de travaux pratiques qui<br />

permettent d'expérimenter et d'assimiler les sujets abordés.<br />

Contenu<br />

Mise en oeuvre de la réplication <strong>avec</strong> SQL server 2008<br />

Réplication transactionnelle<br />

Réplication transactionnelle point à point<br />

Réplication de captures instantanées<br />

Réplication de Fusion<br />

Réplication <strong>avec</strong> Oracle<br />

Solutions de haute disponibilité <strong>avec</strong> SQL server 2008<br />

Clustering <strong>avec</strong> basculement.<br />

Clustering Actif/Passif et Actif/Actif.<br />

Transfert de journal (log shipping).<br />

Miroirs de bases de données (database mirroring)<br />

Gérer la grande volumétrie<br />

Qu'est ce qu'une base de données à grande volumétrie ?<br />

Comment monter en charge.<br />

Dimensionnement des données et modélisation pour larges<br />

tables.<br />

Répartition des données sur de multiples volumes.<br />

Partitionnement de tables et index.<br />

Mettre en œuvre Reporting Services<br />

Utilité de Reporting Services<br />

Installation de Reporting Services.<br />

Administration du serveur de rapports.<br />

Sécurisation des rapports.<br />

Montée en charge et haute disponibilité pour Reporting Services.<br />

Optimiser Reporting Services<br />

Les entrepôts de données (Datawarehouse)<br />

Mettre en oeuvre un entrepôt de données (Data Warehouse).<br />

Les modèles OLTP et OLAP.<br />

La modélisation d'un entrepôt de données.<br />

Le dimensionnement et l'architecture matérielle<br />

131


Optimisation SQL Server<br />

2008<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation Optimisation SQL server 2008 vous donnera tous<br />

les outils pour assurer une performance optimale de vos serveurs<br />

SQL Server 2008. À l'issue de cette formation Optimisation SQL<br />

server 2008, vous saurez :<br />

- Configurer au mieux le serveur SQL<br />

- Optimiser les structures et les index<br />

- Lire un plan d'exécution et collecter les informations essentielles<br />

pour comprendre les écueils de performances<br />

- Écrire du code SQL performant<br />

Pré-requis<br />

Bonne connaissance préliminaire de SQL Server. Avoir suivi le<br />

cours Administration SQL server 2008 ou connaissances<br />

équivalentes.<br />

Travaux pratiques<br />

Chaque module est accompagné de travaux pratiques qui<br />

permettent d'expérimenter et d'assimiler les sujets abordés.<br />

Contenu<br />

Optimisation du système<br />

Les règles de base de l'optimisation, comprendre pour pour<br />

otpimiser<br />

Optimisation automatique/ Optimisation manuelle<br />

Maintenir une baseline<br />

Optimisation des structures de stockage<br />

Optimisation du journal de transactions<br />

Optimiser son matériel<br />

Choisir l'architecture matérielle<br />

Comment SQL Server utilise la mémoire vive<br />

Configuration du serveur<br />

Optimiser les objets et la structure de la base de données<br />

SQL server 2008<br />

Modélisation de la base de données<br />

La normalisation<br />

bien choisir ses types de données<br />

Partitionnement de table et d'index<br />

Optimisation de tempdb<br />

Contrôler l'attribution des ressources par le gouverneur de<br />

ressources<br />

Analyser les performances SQL server 2008<br />

Analyse <strong>avec</strong> les outils de SQL Server Management Studio<br />

Sql trace et Le profiler<br />

Le moniteur système<br />

Programmer des alertes de performances<br />

Les événements étendus en SQL Server 2008<br />

Autres outils de supervision<br />

Indexation<br />

Principes de l'indexation<br />

Types d'index<br />

Choisir et optimiser ses index<br />

Vues de gestion dynamique pour maintenir les index<br />

Les vues indexées<br />

Les statistiques<br />

Database Engine Tuning Advisor<br />

Transactions et verrous<br />

Qu'est-ce que la transaction sous SQL server 2008<br />

Le verrouillage<br />

les niveaux d'isolation de la transaction<br />

Les attentes, les blocages et les deadlocks<br />

Détecter les blocages par notification d'événements<br />

Optimiser le code SQL<br />

Lire un plan d'exécution<br />

Gestion avancée des plans d'exécution<br />

Les indicateurs de requête et de table<br />

Les tables temporaires<br />

Éviter les curseurs<br />

Optimiser les procédures stockées<br />

132


Programmation d'une base<br />

de données Microsoft SQL<br />

Server 2008<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation programmation SQL Server fournit aux<br />

participants les connaissances et les compétences nécessaires<br />

pour implémenter une base de données Microsoft SQL Server<br />

2008.<br />

A la fin de cette formation programmation SQL Server, les<br />

participants seront à mêmes de :<br />

- Créer des bases de données et fichiers de base de données<br />

- Créer des types et des tables de données<br />

- Utiliser XML dans Microsoft SQL Server 2008<br />

- Planifier, créer et optimiser des index.<br />

- Mettre en œuvre l'intégrité des données dans Microsoft SQL<br />

Server 2008<br />

- Implémenter des vues<br />

- Créer des procédures stockées et des fonctions<br />

- Implémenter du code managé dans la base de données<br />

- Gérer les transactions et les verrous<br />

- Utiliser le Service Broker<br />

Participants<br />

Cette formation programmation SQL Server est destinée aux<br />

professionnels de l’informatique qui implémenter des bases de<br />

données SQL Server.<br />

Pré-requis<br />

Avant d'assister à cette formation programmation SQL Server, les<br />

participants doivent avoir les connaissances suivantes :<br />

- Connaissances de base du système d'exploitation Microsoft<br />

Windows et de ses principales fonctionnalités.<br />

- Une bonne connaissance de Transact-SQL<br />

- Connaissance des bases de données relationnelles<br />

- Une expérience de conception des bases de données<br />

Contenu<br />

Création de bases de données et fichiers de base de<br />

données<br />

Création de bases de données<br />

Création de groupes de fichiers<br />

Création de schémas<br />

Création de clichés instantanés (Snapshot) de bases de données<br />

Création de types de données et de tables<br />

Création de types de données<br />

Création de tables<br />

Création de tables partitionnées<br />

Création et optimisation d’index<br />

Planification d’index<br />

Création d’index<br />

Optimisation d’index<br />

Implémentation de l’intégrité des données par l’utilisation<br />

des contraintes et des déclencheurs<br />

Vue d’ensemble de l’intégrité des données<br />

Implémenter les contraintes<br />

Implémenter les déclencheurs (Triggers)<br />

Utilisation de XML<br />

Utiliser le type de données XML<br />

Récupérer des données XML <strong>avec</strong> FOR XML<br />

Fragmenter du XML en utilisant OpenXML<br />

Introduction à XQuery Création d'index XML<br />

Mise en œuvre des schémas XML<br />

Mise en œuvre des Vues<br />

Présentation des Vues<br />

Création et Gestion des vues<br />

Optimisation de la performance en utilisant les vues<br />

Mise en œuvre de procédures stockées<br />

Mise en œuvre des procédures stockées<br />

133<br />

Créer des procédures stockées paramétrées<br />

Travailler <strong>avec</strong> les plans d'exécution<br />

Gérer les erreurs de manipulation<br />

Implémenter des fonctions<br />

Créer et utiliser des fonctions<br />

Travailler <strong>avec</strong> des fonctions<br />

Contrôler le contexte d’exécution<br />

Implémenter du code managé dans la base de données<br />

Introduction à SQL Server Common Language Runtime<br />

L'importation et la configuration des assemblies<br />

Création d’objets d’une base de données managée<br />

Gestion des transactions et des verrous<br />

Présentation des transactions et des verrousGestion des<br />

transactions<br />

Comprendre l’architecture des verrous SQL Server<br />

Gestion des verrous<br />

Utilisation de Service Broker<br />

Présentation de Service Broker<br />

Créer des objets <strong>avec</strong> Service Broker<br />

Envoi et réception de messages


PostGreSQL :<br />

Administration de la base<br />

de données<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation PostgreSql vous apprendra à installer et à<br />

administrer au quotidien votre serveur de base de données<br />

PostgreSQL. Vous verrez comment manipuler les données,<br />

comment gérer une base et vous apprendrez à maîtriser les<br />

principales techniques et outils d'administration.<br />

Participants<br />

Chefs de projet, développeurs, administrateurs de bases de<br />

données et administrateurs des systèmes.<br />

Pré-requis<br />

Connaissance d'autres bases de données, du langage SQL, et de<br />

l'administration de base de systèmes Linux ou Windows.<br />

Contenu<br />

Formation PostGreSQL<br />

Présentation de PostgreSQL<br />

Historique du projet<br />

Présentation des projets et outils de la ferme de projets<br />

pgFoundry<br />

Comparatif <strong>avec</strong> les autres moteurs SGBDR<br />

(avantages/inconvénients)<br />

Installation de PostgreSql<br />

Les étapes d'installation de PostgreSQL<br />

Les distributions Linux<br />

Sur ma distribution Debian<br />

Sur les distributions à base de RPM (RedHat, Fedora, Mandriva)<br />

A partir des sources Les binaires pour MS-Windows<br />

Utilisation de l'assistant d'installation<br />

Préparation du système d'exploitation<br />

Les changements depuis la version 8.0<br />

Initialisation et exécution d'une instance<br />

Initialisation d'une instance<br />

Arrêt et démarrage du serveur (commandes d'administration)<br />

Architecture des processus du serveur (le Postmaster et les<br />

processus en arrière-plan)<br />

Création d'instances supplémentaires<br />

Créer une nouvelle instance ou une nouvelle base ?<br />

Les scripts installés par Debian<br />

Connexions et outils d'administration PostgreSql<br />

Sessions<br />

Jeux de caractères (UTF, ISO, ...)<br />

Que faire pour corriger les problèmes de caractères ?<br />

La sécurité des sessions coté serveur(pg_hba.conf)<br />

Quelles applications peuvent utiliser SSL ?<br />

Droits d'accès<br />

L'intérêt des rôles (utilisateurs et groupes)<br />

Gratification et révocation des privilèges<br />

Outils en ligne de commande et graphique<br />

L'outil en ligne de commande : psql (shell SQL)<br />

Tour d'horizon des possibilités synatxiques<br />

La richesse du client lourd PgAdminIII (administration,<br />

développement)<br />

L'outil en ligne : phpPgAdmin.<br />

Le gestionnaire de connexions : Pgpool<br />

134<br />

Définition des données <strong>avec</strong> PostgreSql<br />

Création de schémas, tables, index, domaines, séquences<br />

Les différents types de données, opérateurs et fonctions<br />

Manipulation des données<br />

Requêtes SQL Lectures des données<br />

Insertion et mise à Jour des données<br />

Fonctionnement des transactions<br />

Les niveaux d'isolations et les verrous<br />

La recherche de texte : tsearch2<br />

Pratiques de programmation pour l'administration PostgreSql<br />

Coté serveur Gestion des procédures stockées<br />

Le langage PL/pgSQL<br />

Le langage PL/Perl<br />

Les extensions en C.<br />

Les déclencheurs<br />

Coté client<br />

Les applications Web en PHP<br />

Les pilotes PostgreSQL et PDO<br />

Les applications Web en <strong>Java</strong><br />

Pourquoi utiliser JNDI sur les serveurs d'applications<br />

Administration de PostgreSql au quotidien<br />

Fichiers et répertoires PostgreSQL<br />

Arborescence standard suite à l'installation de PostgreSQL<br />

Emplacement des éléments fondamentaux<br />

Répertoires et fichiers créés à la suite d'une création de base<br />

Les fichiers à sauvegarder à froid pour une base précise<br />

Administration du serveur PostgreSQL<br />

Le fichier fondamental postgreSQL.conf<br />

Les logs binaires<br />

Surveillance et valeurs recommandées pour la mémoire<br />

Le collecteur de statistiques<br />

Les logs d'activités<br />

Catalogue Système<br />

Les vues et tables des informations du serveur<br />

Outils pour obtenir des informations sur l'état des bases<br />

Outils pour vérifier la cohérence des données<br />

Sauvegardes et Restauration PostgreSql<br />

Différences entre pg_dump et pg_dumpall<br />

Utilisations typiques de pg_dump en ligne de commande<br />

Les restaurations <strong>avec</strong> pg_restore et psql<br />

Les logs binaires : Write Ahead Logging (WAL)<br />

Taches de maintenance et d'exploitation PostgreSql<br />

L'analyse des requêtes <strong>avec</strong> Explain<br />

L'analyse et le nettoyage des espaces de tables et d'index <strong>avec</strong><br />

Vacuum<br />

La reconstruction d'index <strong>avec</strong> Reindex<br />

L'automatisation des taches de maintenance <strong>avec</strong> autovacuum<br />

Optimisation PostgreSql<br />

Quelles sont les informations utiles ?<br />

Sur quels paramètres intervenir ?<br />

Conseils sur la performance


PostgreSQL<br />

<strong>Développement</strong><br />

Durée 2 jours<br />

Objectifs<br />

PostgreSQL est un SGBD de référence dans le monde des<br />

Logiciels Libres. Il offre une richesse fonctionnelle importante lui<br />

permettant de rivaliser <strong>avec</strong> des produits commerciaux tels que<br />

Oracle ou DB2.<br />

Au cours de ces deux jours de formation PostGreSQL nous<br />

apprendrons comment bien utiliser PostgreSQL. Nous verrons<br />

comment interagir <strong>avec</strong> le serveur et quels sont les meilleurs<br />

options pour gérer tant des requêtes simples que des requêtes<br />

compliquées.<br />

Pour terminer nous aborderons la programmation côté serveur.<br />

Cette formation PostgreSQL vous permettra de:<br />

- Installer et configurer PostgreSQL<br />

- Créer une base de données optimale<br />

- Analyser et comprendre les logs<br />

- Profiter des fonctionnalités avancées de PostgreSQL<br />

- Aborder la programmation côté serveur<br />

Participants<br />

Cette formation PostgreSQL s'adresse aux développeurs utilisant<br />

PostgreSQL Administrateur de bases de données<br />

Pré-requis<br />

Une connaissance des concepts SQL est recommandée<br />

Travaux pratiques<br />

Plus de 50%<br />

Contenu<br />

Présentation de PostgreSQL<br />

PostgreSQL : serveur de base de données relationnelle objet<br />

Historique, licence, mode de développement<br />

Les composants du serveur PostgreSQL: serveur, client,<br />

connecteurs jdbc, tcl, pl, python<br />

Les apports de la version 8.3<br />

Installation et configuration de PostgreSQL<br />

Installation de PostgreSQL<br />

Installation <strong>avec</strong> un système de paquetage<br />

Interagir <strong>avec</strong> le serveur<br />

Le concept du client serveur<br />

Le client PostgreSQL<br />

Utiliser les clients graphiques<br />

Spécificités SQL de PostgreSQL<br />

Spécificités DDL (Définition des objets)<br />

Spécificités DML (Manipulation des données)<br />

Optimisation des requêtes<br />

Programmation coté serveur<br />

Importation et exportation de données<br />

L'intérêt de la programmation côté serveur et ses limites<br />

Mise en oeuvre de déclencheurs (triggers)et programmation de<br />

procédures stockées<br />

Déclaration et utilisation de variables<br />

Gestion des curseurs<br />

Mise en oeuvre <strong>avec</strong> PL/pgsql et présentation des autres outils<br />

disponibles<br />

135


PostgreSQL<br />

Administration Avancée<br />

(Tuning, Optimisation,<br />

Warm Standby, Haute<br />

disponibilité)<br />

Durée 4 jours<br />

Objectifs<br />

Cette formation PostGreSQL Administration avancée vous<br />

permettra de maîtriser les notions avancées de l'administration<br />

d'une base de données PostgreSQL au quotidien comme la<br />

configuration fine d'une instance pour de meilleures<br />

performances et une plus grande stabilité, la gestion efficace des<br />

connexions, l'utilisation des scripts pour faciliter l'exploitation,<br />

l'analyse de requêtes SQL et la mise en place d'un mécanisme<br />

de reprise sur panne (Warm Standby).<br />

Participants<br />

Cette formation Optimisation PostGreSQL s'adresse aux<br />

administrateurs de bases de données et administrateurs des<br />

systèmes.<br />

Pré-requis<br />

Bonne connaissance de PostgreSQL, du langage SQL, et des<br />

systèmes d’exploitation. Avoir suivi la formation « Administration<br />

PostGreSQL » (Ref BPGA) ou connaissances équivalentes.<br />

Travaux pratiques<br />

- Paramétrage<br />

- Restauration en mode Point In Time Recovery<br />

- Installation du Warm Standby<br />

- Partitionnement de tables<br />

- Exploitation des tables systèmes<br />

- Utilisation de EXPLAIN et analyse de trafic<br />

Contenu<br />

Présentation des aspects avancés de PostgreSQL<br />

Rappels succincts sur PostgreSQL<br />

Tour d'horizon de « l'écosystème PostgreSQL »<br />

Instance,tuning, supervision, réplication et haute disponibilité.<br />

Configuration d'une instance PostgreSQL<br />

Les répertoires de données<br />

Les logs de transactions<br />

Les logs d'activités<br />

Installation des tâches automatiques<br />

Administration Système<br />

Choix du filesystems<br />

Optimisation du système d'esploitation<br />

Utilisation des tablespaces<br />

Administration d'une instance<br />

Taches Courantes<br />

Utilisation des espaces de stockages<br />

Définition de l'espace des logs de transactions.<br />

VACUUM et autovacuum<br />

Sauvegarde et Restauration d’une base PostgreSQL<br />

Sauvegarde à froid<br />

Sauvegarde à chaud<br />

Sauvegarde en ligne et Point In Time Recovery Warm Standby<br />

Techniques Avancées<br />

Window functions<br />

Modules contrib ( pgBench )<br />

XML<br />

Recherche Plein Texte ( FTS )<br />

Héritage<br />

Partitionnement Horizontal ( DBLink et PL/Proxy )<br />

Optimisation PostgreSQL<br />

Les paramètres par défaut sont-ils les meilleurs ?Prise en compte<br />

du matériel Impacts des paramètres système (mémoire, disques)<br />

136<br />

Limiter les connections (max_connections)<br />

Bien dimensionner la mémoire partagée (shared buffers et<br />

effective_cache_size) Opérations de tri et de hachage (work_mem)<br />

Optimiser la gestion du journal de transactions<br />

(checkpoint_segments)<br />

Supervision d'une instance PostgreSQL<br />

Exploiter les informations du catalogue système<br />

Analyse des logs d'activités <strong>avec</strong> pgFouine<br />

Mise en place de scripts Munin pour visualiserl 'activité<br />

Surveiller l'instance <strong>avec</strong> Nagios<br />

Tester les performances <strong>avec</strong> pgFouine<br />

Analyse des messages de Vacuum


MySQL Prise en main et<br />

développement<br />

Durée 2 jours<br />

Objectifs<br />

Le SGBD MySQL dispose, depuis la version 5, de la majorité des<br />

fonctionnalités et des mécanismes disponibles chez ses<br />

concurrents commerciaux ou libres (Oracle, DB2, PostgreSQL…).<br />

Cette formation vous permettra de savoir installer MySQL et d'en<br />

assurer l'essentiel de la gestion quotidienne. Le stage présentera<br />

également les aspects développement de MySQL et notamment<br />

les extensions procédurales (procédures stockées, curseurs,<br />

triggers…) apparues <strong>avec</strong> la version 5.<br />

Participants<br />

Développeurs et administrateurs de bases de données.<br />

Pré-requis<br />

La formation peut se dérouler indifféremment en environnement<br />

Unix, Linux ou Windows, des connaissances de base sur l'un ou<br />

l'autre de ces systèmes sont suffisantes pour suivre la formation.<br />

Travaux pratiques<br />

Tout au long du stage, de nombreux travaux pratiques permettent<br />

de valider les connaissances théoriques.<br />

Contenu<br />

Introduction, installation 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 />

Présentation de l'outil graphique MySQL Query Browser<br />

Travaux pratiques<br />

Exemple complet d'installation sur un système Linux<br />

Modèle relationnel, conception et création d'une base MySQL<br />

Élé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<br />

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 />

Gestion des index<br />

La base INFORMATION_SCHEMA<br />

Travaux pratiques<br />

Conception et création d'une base "ecole" en tables MyISAM<br />

Visualisation du schéma des tables<br />

Insertion de données, vérification des contraintes<br />

Pratique du SQL <strong>avec</strong> MySQL<br />

Sélections simples, comparaisons, tris<br />

Sélections multitables, différents types de jointures<br />

Requêtes imbriquées<br />

Requêtes préparées<br />

Recherches full-text<br />

Modifications (insertions, mises à jours, suppressions)<br />

137<br />

Gestion des vues<br />

Travaux pratiques<br />

Sélections simples<br />

Sélections multiples, jointures internes et externes, requêtes<br />

imbriquées<br />

Modifications et suppressions de données<br />

Création et utilisation des vues<br />

Tables transactionnelles InnoDB<br />

Notion de transaction, niveaux d'isolation<br />

Structure physique des tables<br />

Programmation des transactions (START TRANSACTION, COMMIT,<br />

ROLLBACK)<br />

Travaux pratiques<br />

Création d'une base "ecolebis" en tables InnoDB<br />

Mise en œuvre de transactions<br />

SQL Procédural<br />

Procédures stockées et fonctions<br />

Définition des procédures, appels, instructions de contrôle, curseurs<br />

Déclencheurs (triggers): création et utilisation<br />

Gestion des erreurs<br />

Travaux pratiques : Écriture de procédures stockées<br />

Récupérations de résultats à l'aide de curseurs<br />

Création et utilisation de triggers<br />

Connexions, droits d'accès, sécurité<br />

Principe d'authentification et de vérification des droits<br />

Gestion des utilisateurs et de leurs privilèges<br />

Sécurisation des procédures stockées<br />

Travaux pratiques<br />

Création de différents types de comptes MySQL<br />

Gestion des privilèges et des mots de passe<br />

Maintenance des données<br />

Importation et exportation de données<br />

Les différents journaux de MySQL (erreurs, requêtes, requêtes<br />

lentes, journal binaire)<br />

Types et stratégies de sauvegardes<br />

La commande mysqldump<br />

Travaux pratiques<br />

Exportation de données vers des fichiers texte, réimportation des<br />

données<br />

Activation des différents journaux<br />

Sauvegardes et restaurations <strong>avec</strong> la commande " mysqldump"<br />

Aspects avancés, optimisation<br />

Jeux de caractères, internationalisation<br />

Formats géométriques, données géographiques<br />

Optimisation des requêtes (types d'index, interprétation de l'outil<br />

EXPLAIN)<br />

Interfaces de programmation (exemple PHP/MySQL)<br />

Connecteurs MySQL


MySQL Administration<br />

Durée 3 jours<br />

Objectifs<br />

MySQL est devenu en quelques années le serveur de base de<br />

données libre le plus utilisé, notamment dans le contexte des<br />

applications Internet/Intranet. A l'issue de ce stage, vous saurez<br />

installer et administrer MySQL au quotidien, d'une manière<br />

efficace et sécurisée.<br />

Un panorama des fonctionnalités pour développeurs, apparues<br />

<strong>avec</strong> la version 5, sera également présenté.<br />

Participants<br />

Développeurs, administrateurs système et administrateurs de<br />

bases de données.<br />

Pré-requis<br />

Il est souhaitable de posséder de bonnes notions de base sur le<br />

langage SQL. La formation peut se dérouler indifféremment en<br />

environnement Unix, Linux ou Windows, des connaissances de<br />

base sur l'un ou l'autre de ces systèmes sont suffisantes pour<br />

suivre la formation.<br />

Travaux pratiques<br />

Tout au long du stage, de nombreux travaux pratiques permettent<br />

de valider les connaissances théoriques.<br />

Contenu<br />

Introduction et installation<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 />

Changements de versions, mises à jour<br />

Travaux pratiques<br />

Exemple complet d'installation sur un système Linux<br />

Manipulation des données<br />

Prise en main de l'outil client ligne de commande "mysql"<br />

Scripts clients et utilitaires<br />

Outils graphiques: MySQL Administrator, MySQL Query Browser,<br />

Migration Toolkit<br />

Types de données et fonctions MySQL<br />

Types de tables (MyISAM, MEMORY, MERGE, InnoDB…)<br />

Création de bases, d'index et de tables<br />

Gestion des vues<br />

La base de données INFORMATION_SCHEMA<br />

Importation et exportation de données<br />

Travaux pratiques<br />

Création d'une base "ecole" en tables MyISAM<br />

Visualisation du schéma des tables<br />

Insertion de données<br />

Exportation de données vers des fichiers texte, réimportation des<br />

données<br />

138<br />

SQL Procédural<br />

Procédures stockées et fonctions<br />

Définition des procédures, appels, instructions de contrôle, curseurs<br />

Déclencheurs (triggers): création et utilisation<br />

Gestion des erreurs<br />

Travaux pratiques<br />

Écriture de procédures stockées simples<br />

Récupérations de résultats à l'aide de curseurs<br />

Création et utilisation de triggers<br />

Connexions, droits d'accès, sécurité<br />

Principe d'authentification et de vérification des droits<br />

Structure des tables de la base "mysql" de gestion des droits<br />

Sécurisation de la post-installation<br />

Gestion des utilisateurs et de leurs privilèges<br />

Sécurisation des procédures stockées<br />

Travaux pratiques<br />

Sécurisation complète de la post-installation<br />

Création de différents types de comptes MySQL<br />

Gestion des privilèges et des mots de passe<br />

Tables transactionnelles InnoDB<br />

Notion de transaction, niveaux d'isolation<br />

Structure physique des tables<br />

Paramétrages et optimisation<br />

Travaux pratiques<br />

Création d'une base "ecolebis" en tables InnoDBMise en œuvre de<br />

transactions<br />

Modifications des paramètres de stockage ("tablespaces",<br />

journaux…)<br />

Fichiers de logs, sauvegardes, réplication<br />

Les différents journaux de MySQL (erreurs, requêtes, requêtes<br />

lentes, journal binaire)<br />

Stratégies de sauvegardes (serveur arrêté, serveur actif, types de<br />

tables, verrouillages...)<br />

Les commandes (mysqldump, InnoDB Hot Backup, autres<br />

commandes…)<br />

Réplication maître-esclave (mise en œuvre, résolution des<br />

problèmes)<br />

Travaux pratiques<br />

Activation des différents journaux<br />

Sauvegardes et restaurations <strong>avec</strong> la commande " mysqldump"<br />

Utilisation du journal binaire<br />

Mise en œuvre d'une réplication "maître-esclave"<br />

Optimisation de la production<br />

Observation de l'activité du serveur<br />

Variables dynamiques, paramétrages et optimisation du serveur<br />

MySQL<br />

Cache des requêtes Multiples instances de serveur MySQL<br />

Travaux pratiques<br />

Optimisation de paramètres du serveur


MySQL Administration<br />

avancée Optimisation et<br />

Cluster<br />

Durée 2 jours<br />

Objectifs<br />

MySQL dans sa dernière version propose des solutions capables<br />

de rivaliser dorénavant <strong>avec</strong> les grands SGBD.<br />

Ce cous propose de vous rendre opérationnel sur différents<br />

aspects avancés tels que les stratégies d’optimisation des<br />

requêtes, les bonnes pratiques concernant le paramétrage et la<br />

maintenance des différents types de table, l’optimisation du<br />

serveur MySQL proprement dit, la réplication et l’architecture<br />

MySQl Cluster.<br />

Cette formation complète le stage « MySQL : Administration »<br />

Participants<br />

Développeurs, administrateurs système et administrateurs de<br />

bases de données.<br />

Pré-requis<br />

Idéalement, il convient d'avoir suivi le stage «MySQL :<br />

Administration (code MSA)». Dans tous les cas, il est nécessaire<br />

d'avoir une certaine pratique de l’administration de serveurs<br />

MySQL.<br />

Travaux pratiques<br />

Tout au long du stage, de nombreux travaux pratiques permettent<br />

de valider les connaissances théoriques.<br />

Contenu<br />

Introduction<br />

Architecture interne de MySQL<br />

Protocoles de communication<br />

Utilisation des disques et de la mémoire<br />

Point sur les méthodes d'installation et de mises à jour<br />

Compatibilités entre versions<br />

Particularités par rapport aux systèmes d'exploitation<br />

Optimisation des requêtes<br />

Le journal des requêtes lentes<br />

Choisir le bon type de tables<br />

Choisir les bons types de données<br />

Utiliser les vues et les contraintes<br />

Particularités du SQL de MySQL<br />

Comprendre l'optimiseur MySQL<br />

Stratégies d'index<br />

Interpréter l'outil EXPLAIN<br />

Optimiser les requêtes select et leurs différentes clauses<br />

Optimiser les autres requêtes (insert,update,delete)<br />

Optimiser les «import-export»<br />

Requêtes préparées<br />

Tables transactionnelles InnoDB<br />

Architecture interne des tables InnoDB<br />

Structure des tables et des index<br />

Gestion des tablespaces et des entrées/sorties disque<br />

Gestion des accès concurrents, verrouillage InnoDB<br />

Niveaux d'isolation des transactions<br />

Paramétrages et optimisation<br />

Défragmentation des tables<br />

Maintenance des tables, sauvegardes, restaurations<br />

Gestion des erreurs InnoDB, résolution de problèmes<br />

139<br />

Tables MyISAM<br />

Architecture interne des tables MyISAM<br />

Paramétrages et optimisation<br />

Méthodes de verrouillage des tables<br />

Accélération des recherches «fulltext»<br />

Maintenance des tables, résolution de problèmes<br />

Optimisation de la production<br />

Observation de l'activité du serveur<br />

Variables dynamiques<br />

Paramétrages et optimisation du serveur MySQL<br />

Cache des requêtes<br />

La base INFORMATION_SCHEMA<br />

Scripts serveur MySQL et utilitaires<br />

Multiples instances de serveur MySQL<br />

Interactions <strong>avec</strong> le système d'exploitation<br />

Réplication<br />

Réplication simple maître-esclave<br />

Stratégies évoluées de réplication<br />

Détails de l'implémentation<br />

Etats des threads et fichiers de relais<br />

Options de démarrage de la réplication<br />

Optimisation<br />

Résolution des problèmes courants<br />

MySQL Cluster<br />

Architecture d'un cluster MySQL<br />

Configuration hardware<br />

Configuration système<br />

Le moteur NDB<br />

Processus et fichiers<br />

Serveur de gestion<br />

Mise en oeuvre<br />

Administration et maintenance<br />

Sauvegardes, restaurations<br />

Cluster et réplication<br />

Limitations et évolutions<br />

Aspects complémentaires<br />

Audit de sécurité du serveur<br />

Gestion des erreurs MySQL<br />

Plan de développement de MySQL<br />

Fonctionnalités annoncées de MySQL 5.1<br />

Le projet MySQL 6 Falcon


Filière Internet Apache PHP<br />

140


HTML L'essentiel<br />

Durée 3 jours<br />

Objectifs<br />

Quelque soit la technologie que vous utilisiez, que vous allez<br />

utiliser, le langage HTML est un passage obligé. En effet,<br />

JAVA, .NET, PHP ou autre langage ou architecture, en dernier<br />

ressort, génère du HTML.<br />

C’est dire l’importance de ce langage et la nécessité de la<br />

connaître.<br />

Au cours de cette formation HTML, vous allez apprendre à<br />

décrire et réaliser des pages Web comprenant du texte mis en<br />

forme et structuré, des images, des formulaires. Le multifenêtrage<br />

sera également couvert, les hyperliens, ainsi qu’une introduction<br />

aux scripts serveur de type PHP. L’insertion de code javascript<br />

ainsi que DHTML sera également couverte.<br />

Participants<br />

Cette formation HTML s’adresse à toute personne ayant à<br />

réaliser des pages HTML.<br />

Pré-requis<br />

- Connaître un navigateur.<br />

- Maîtriser l'environnement micro-informatique.<br />

Contenu<br />

Rappels du fonctionnement d'un serveur Web et du dialogue<br />

Navigateur/Serveur Web.<br />

Présentation de l’URL et localisation d’un document<br />

Le protocole HTTP<br />

Les autres protocoles tels que FTP, TELNET, etc…<br />

Le format des documents<br />

Le format HTML<br />

Les différents types de format<br />

Les formats texte, image, vidéo<br />

Présentation du protocole http<br />

Principe du protocole<br />

Les différents types de requêtes (GET, POST, etc..)<br />

Généralités du HTML<br />

Structure type d’une page HTML<br />

Format des commandes<br />

Exemple de message<br />

Structure d’un document HTML<br />

Les balises principales >HTML>,<br />

L’instruction < !DOCTYPE><br />

Les balises , et <br />

L’en-tête HTML<br />

La balise <br />

La reconnaissance par les moteurs de recherche<br />

Les styles de Paragraphe<br />

Les en-têtes de paragraphe<br />

Les sauts de paragraphe<br />

Formatage des textes<br />

Les balises et <br />

Le formatage des textes par balises<br />

Les séparateurs graphiques<br />

Exemples<br />

Les hyperliens<br />

Les liens hypertexte<br />

Les autres types de liens<br />

Les listes<br />

Les listes à puce<br />

Les listes numérotées<br />

Les listes de définition<br />

Les listes de menu et répertoire<br />

Les listes imbriquées<br />

Exemples<br />

TRAVAUX PRATIQUES<br />

Mise en œuvre des techniques acquises<br />

Les styles<br />

Les styles physiques les caractères<br />

Les caractères accentués<br />

Les styles logiques<br />

Les modifications de fonte : <br />

Les balises <br />

141<br />

Exemples<br />

Les images et les couleurs<br />

L’insertion d’images<br />

Les formats GIF, JPEG, PNG<br />

La balise <br />

La balise et <br />

Le fond d’écran<br />

Les images de fond<br />

Les images réactives<br />

Définition d’une image réactive<br />

Les coordonnées<br />

Les server-side imagemap (zones sensibles)<br />

Les client-side imagemap<br />

Les tables<br />

Définir une table<br />

Les balises de définition de table et leurs attributs ,<br />

, , , etc…<br />

Le multifenêtrage<br />

Définition<br />

Utilisation<br />

Création<br />

Les balises de multifenêtrage : et <br />

La balise <br />

TRAVAUX PRATIQUES<br />

Création de frames<br />

Les formulaires<br />

Définition d’un formulaire<br />

La balise <br />

La balise <br />

La balise <br />

La balise <br />

La balise <br />

Travaux pratiques<br />

Réalisation de divers formulaires<br />

Notions de PHP<br />

Définition des scripts CGI<br />

Présentation du langage PHP<br />

Principes du langage PHP<br />

Les fonctions PHP<br />

Ecriture de scripts pour les formulaires<br />

Envoyer un e-mail à partir d’un formulaire PHP<br />

TRAVAUX PRATIQUES<br />

Exemple de script PHP<br />

Les feuilles de style CSS<br />

Présentation des feuilles de style<br />

Définition d’un style<br />

La balise LINK<br />

La notion de cascade<br />

Les attributs des styles<br />

Exemples de feuilles de style<br />

TRAVAUX PRATIQUES<br />

Utilisation des feuilles CSS<br />

Les calques<br />

Présentation et définition des calques<br />

Mise en place des calques <strong>avec</strong> les feuilles de style<br />

Utilisation des balises


CSS - Cascading Style<br />

Sheets<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation CSS vous permettra de maîtriser la conception<br />

d’un site Internet <strong>avec</strong> les CSS(cascading style sheet)technique<br />

qui sépare le contenu de la forme. Savoir positionner les<br />

éléments d’une page <strong>avec</strong> les CSS et apprendre comment<br />

améliorer le graphisme et la mise à jour d’un site.<br />

Participants<br />

Infographiste, développeur Web.<br />

Pré-requis<br />

Être à l’aise <strong>avec</strong> l’utilisation d’Internet. Ce cours pourra être<br />

utilisé <strong>avec</strong> le logiciel Dreamweaver<br />

Contenu<br />

Le HTML<br />

Principes de base du langage<br />

Les balises obsolètes<br />

Création de pages et tableaux en Html<br />

Les feuilles de styles<br />

Css1, Css2 et Xml<br />

Les sélecteurs de classes<br />

Les pseudo-classes<br />

Les unités de valeurs<br />

La gestion du texte<br />

La gestion du graphisme<br />

Les arrières plans<br />

La gestion des tableaux<br />

La lecture du flux<br />

Design de sites <strong>avec</strong> les CSS<br />

Gérer l'affichage <strong>avec</strong> les CSS<br />

Les modèles de boîtes<br />

Gérer le positionnement<br />

Feuilles de styles en fonction des médias et supports<br />

Les listes<br />

Améliorer les formulaires<br />

Trucs et astuces pour la mise en page <strong>avec</strong> les CSS<br />

Exercices d'application et réalisation d'un projet personnel<br />

<strong>avec</strong> les CSS<br />

142


Dreamweaver site statique<br />

prise en main<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Dreamweaver vous permettra de pouvoir<br />

développer des sites statiques, d'intégrer une chaîne de<br />

production. Comprendre les mécanismes de l’intégration Web.<br />

Participants<br />

Toute personne qui désire créer un site Web statique.<br />

Pré-requis<br />

Connaître et comprendre son environnement informatique ainsi<br />

que ses fonctionnalités de bases. Des notions en HTML sont un<br />

plus.<br />

Contenu<br />

Dreamweaver : Environnement du logiciel<br />

Html et les navigateurs<br />

Déclaration et gestion du site<br />

Gestion des éléments du site<br />

Interface et environnement de travail<br />

Regroupement des palettes flottantes<br />

Modification de l'interface utilisateur<br />

Palettes Propriétés interactives<br />

Palette d'insertion<br />

Les différentes vues : code et graphique<br />

Les aides à la mise en page : grille, règles et loupe<br />

<strong>Développement</strong> et Intégration <strong>avec</strong> Dreamweaver<br />

Texte et mise en forme<br />

Enrichissement du caractère<br />

Enrichissement du paragraphe<br />

Hyperliens, ancres<br />

Formats et insertion d'images<br />

Barre d'outils de retouche d'image<br />

Création et mise en forme de tableaux<br />

Travail en mode Layout<br />

Tableaux et graphismes<br />

Les Frames<br />

Créer des frames<br />

Interactions entre frames<br />

Mise en page et création de formulaires<br />

Les objets formulaires Feuille de styles<br />

Les feuilles de styles : principe des CSS<br />

Création d'une CSS<br />

Application d'une CSS<br />

Accès au CSS via le code<br />

Les objets Flash<br />

Création de boutons<br />

Création de texte<br />

Les objets multimédias<br />

Applet, ActiveX et Shockwave<br />

Comportement<br />

Appliquer des comportements<br />

<strong>Java</strong>script et les comportements<br />

143


Dreamweaver site statique<br />

perfectionnement<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Dreamweaver perfectionnement vous permet<br />

d’aller plus loin <strong>avec</strong> Dreamweaver et d’étudier de nouvelles<br />

stratégies de développement.<br />

Particpants<br />

Toutes personnes voulant augmenter la richesse graphique et<br />

comportementale de leurs sites Web grâce Dreamweaver.<br />

Pré-requis<br />

Avoir une bonne connaissance du logiciel et des outils ou avoir<br />

suivi le stage Dreamweaver Site Statique Initiation.<br />

Contenu<br />

Les éléments stratégiques<br />

Configuration du site : définition et gestion de l'environnement de<br />

travail<br />

Carte du site, arborescence : architecture de site, de<br />

développement<br />

Gestion des éléments du site<br />

Automatisation du processus de production<br />

La bibliothèque<br />

Les objets Spry (CS3)<br />

L'interactivité AJAX (CS3)<br />

Stocker divers types d'éléments de page dans une bibliothèque<br />

Utiliser des éléments d'une bibliothèque<br />

Modifier un élément de la bibliothèque<br />

Les modèles : modèle simple/modèle imbriqué<br />

Les différents types de régions (modifi able, répétée, facultative)<br />

Optimisation de la production<br />

Utilisation avancée des commandes, rechercher/remplacer<br />

Gestion du code Html<br />

Optimisation de l'utilisation des styles CSS<br />

Stratégie d'utilisation des modèles et de la librairie<br />

Dynamic Html et Calques<br />

Compatibilité<br />

Gestion avancée des calques<br />

Le timeline<br />

Scénarios multiples et gestion<br />

Comportements<br />

Comportements et actions<br />

Appliquer des comportements, multimédia et interactivité<br />

Gestions des Plug-ins, détection de Plug- ins, navigateurs, <strong>Java</strong>,<br />

ActiveX, Shockwave,QuickTime<br />

Personnalisation de l'interface<br />

Macromedia Exchange (installation et utilisation)<br />

Téléchargement d'objets, de comportements, d'actions, de<br />

commandes<br />

Installation et gestion<br />

Création d'objets personnalisés<br />

Création de commandes via la palette Historique<br />

Déployer son site Web<br />

Gestion avancée du site<br />

Extraire - Archiver<br />

Gestion des Design Notes<br />

Fonction de synchronisation<br />

144


Dreamweaver site<br />

dynamique<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Dreamweaver pour site dynamiqye, vous<br />

permettra de développer et maintenir des sites Web<br />

dynamiques(boutique en ligne, trombinoscope,consultation de<br />

news, etc.) en PHP, ASP, JSP etc. en limitant ses connaissances<br />

en programmation.<br />

Participants<br />

Pour toutes personnes impliquées dans la mise en œuvre, le<br />

développement ou la maintenance d’un site Web dynamique.<br />

Pré-requis<br />

Des connaissances pratiques de Dreamweaver au niveau du<br />

cours « Dreamweaver Site Statique Prise en main» sont<br />

nécessaires.<br />

Contenu<br />

Introduction aux bases de données<br />

Notion sur les bases de données relationnelles<br />

Création d'une base de données<br />

Définition des tables, des index, des clés, des relations<br />

Les requêtes<br />

Introduction au SQL<br />

Les principales commandes SQL (INSERT SELECT UPDATE<br />

DELETE)<br />

Création de requêtes simples<br />

Introduction aux langages dynamiques<br />

L'environnement de travail<br />

Les règles de syntaxe<br />

Les variables<br />

Les transferts de variables<br />

Les sessions<br />

Les cookies<br />

Les instructions de contrôle<br />

Dreamweaver Dynamique<br />

Préparation du site Web<br />

Architecture d'un site dynamique<br />

Choix du modèle Serveur<br />

Paramètre du Serveur Web<br />

Paramètre du Serveur d'Applications<br />

Se connecter à une base de données<br />

Connexion à une ou plusieurs bases<br />

Paramétrage du Live Data<br />

Création d'une requête<br />

Les requêtes de sélection<br />

Les Recordsets<br />

Recherche par critères<br />

Affichage conditionnel<br />

Variable de formulaire<br />

Variable de session<br />

Cookies<br />

145


<strong>Java</strong>Script Développer en<br />

HTML dynamique<br />

Durée 3 jours<br />

Objectifs<br />

Langage de l'Internet côté client, le javascript permet la<br />

manipulation interactive des éléments constituant une page WEB.<br />

La généralisation des clients légers dans les <strong>entreprise</strong>s, la<br />

présence indispensable sur le réseau Internet et une<br />

généralisation des approches transversales de type intranet ou<br />

extranet passe par des ihm plus efficaces, rendus possibles par<br />

l'implémentation conjointe du javascript et du dHtml.<br />

Aujourd'hui, le développement et la normalisation des échanges<br />

clients-serveurs sous forme XML permet d'entrevoir, grâce à<br />

AJAX, une amélioration sensible de l'interactivité au niveau des<br />

interfaces utilisateurs. L'utilisation de javascript étant au cœur de<br />

cette petite révolution, sa maîtrise représente un atout clef pour<br />

aborder le Web 2.0.<br />

Cette formation javascript aborde les aspects pertinents du<br />

langage dans un esprit de développeur. Ce cours s'appuie sur de<br />

nombreux exemples concrets que vous mettrez en oeuvre et<br />

pourrez réutiliser.<br />

Participants<br />

Ce stage pratique s'adresse à tous les informaticiens désireux<br />

d'appliquer les dernières technologies du Dynamic HTML pour<br />

leurs projets Web.<br />

Pré-requis<br />

La connaissance du langage HTML et d'un langage de<br />

programmation est nécessaire.<br />

Travaux pratiques<br />

Les participants développeront des pages Web utilisant les<br />

techniques du Dynamic HTML <strong>avec</strong> des éditeurs simples. Ils<br />

auront l'occasion de se familiariser également <strong>avec</strong> les dernières<br />

évolutions du langage <strong>Java</strong>Script comme AJAX et de développer<br />

des scripts pour la manipulation de flux XML.<br />

Contenu<br />

Formation javascript<br />

Introduction aux techniques http, aux navigateurs et leurs<br />

DOM<br />

Les principes de base des technologies clients serveurs.<br />

Présentation des différentes possibilités <strong>avec</strong> illustration par des<br />

exemples complexes et concrets.<br />

Mode d'appels des scripts depuis les pages HTML.<br />

Comment créer une zone de saisie?<br />

Les différents modes de saisie HTML<br />

Introduction aux navigateurs, au <strong>Java</strong>Script et au DOM.<br />

Les principes d'utilisation des DOM, les différences principales<br />

entre les navigateurs et les conseils d'utilisation.<br />

L'interpréteur <strong>Java</strong>Script: entrées/sorties des programmes.<br />

Le langage <strong>Java</strong>Script<br />

Introduction au langage <strong>Java</strong>Script, présentation d'exemples<br />

simples, les versions de <strong>Java</strong>Script, <strong>Java</strong>Script embarqué dans<br />

les pages HTML.<br />

La grammaire du langage, les variables, les types de données,<br />

les opérateurs, les instructions, les structures de programmation,<br />

la définition et l'utilisation de fonctions.<br />

Les objets et leurs utilisations en <strong>Java</strong>Script, les dialogues <strong>avec</strong><br />

l'utilisateur, les tableaux, la gestion des événements et les<br />

différences selon les navigateurs, les objets prédéfinis.<br />

Les pièges classiques en javacripts<br />

146<br />

Les objets du langage <strong>Java</strong>script:<br />

Gestion des chaînes de caractères à travers l'objet String<br />

Les principales fonctions mathématiques dans l'objet Math<br />

Manipulation des dates via l'objet Date<br />

Manipulation des tableaux via l'objet Array<br />

Les expressions régulières dans le javascript<br />

<strong>Java</strong>script : Les objets de la page HTML.<br />

L'objet windows : gestion des fenêtres et de leur communication.<br />

Les popups<br />

L'objet document : Le fonctionnement de l'objet document.<br />

Interactivité, contrôle et transformation des pages HTML<br />

L'objet form : Contrôle des données saisies dans un formulaire,<br />

gestion des contenus des champs de saisie. Formulaire<br />

dynamique.<br />

Le DOM XML.<br />

Rappel sur les principes du XML. Différence entre XML et HTML<br />

Le DOM XML et ses possibilités en javascript<br />

Gestion de document au format XML, lecture des pages HTML<br />

sous forme d'objet XML (XHTML)<br />

Les nouveaux objets javascript.<br />

Fonctionnement de AJAX<br />

Pourquoi AJAX (Asynchronous <strong>Java</strong>script And Xml )<br />

Utilisation de HTTPRquest pour la communication client-serveur<br />

(AJAX)<br />

XML et XSLT


Ajax<br />

Durée 2 jours<br />

Objectifs<br />

L'émergence du Web 2.0 s'accompagne de nombreuses<br />

avancées technologiques. Parmi celles-ci, AJAX (Asynchronous<br />

<strong>Java</strong>script +XML) permet d'étendre les possibilités de scripting<br />

dans les navigateur et ainsi de rendre les pages Web plus<br />

interactives et conviviales pour l'internaute. Cette formation Ajax<br />

vous permettra de:<br />

- Découvrir les apports d'Ajax sur les interfaces Web<br />

- Comprendre en quoi Ajax constitue une avancée technologique<br />

majeure<br />

- Bénéficier de retours d'expériences pour identifier les pièges à<br />

éviter en phase de conception<br />

- Savoir utiliser les scripts Ajax pour rendre les pages Web plus<br />

interactives<br />

Participants<br />

Chefs de projet, Développeurs, Développeurs Web<br />

Pré-requis<br />

Connaissance du développement Web, Maîtrise de <strong>Java</strong>Script<br />

Contenu<br />

Les solutions à la problématique du client Web riche<br />

Client lourd, client léger, client riche et «smart client»<br />

Éventail des solutions Web client riche<br />

Ajax par l'exemple<br />

Étude de cas : Google suggest<br />

Généralisation du principe<br />

Appels <strong>Java</strong>Script asynchrones sans Ajax<br />

Exposé des méthodes<br />

Choisir la bonne méthode d'appel asynchrone<br />

Risques et limites à l'utilisation d'Ajax<br />

Les erreurs classiques de conception<br />

Quand et comment ne pas utiliser Ajax<br />

Motifs de conception Ajax<br />

«Programming patterns»<br />

«Usability patterns»<br />

Être productif <strong>avec</strong> Ajax<br />

Productivité de l'environnement de développement<br />

Les bibliothèques <strong>Java</strong>Script pour Ajax<br />

Construire des objets Ajax réutilisables<br />

Ajax et l'usine logicielle<br />

Impacts d'Ajax sur les architectures logicielles<br />

Les outils «software factory» pour <strong>Java</strong>Script<br />

147


SPIP Développeur<br />

Outil de Gestion de Contenu Editorial<br />

Durée 2 jours<br />

Objectifs<br />

SPIP est la plate-forme de management de contenu éditorial en<br />

ligne de référence, proposé en licence Open Source. Lors de<br />

cette formation SPIP Développeur de 2 jours, vous apprendrez<br />

notamment à :<br />

• Placer aisément et instantanément un contenu éditorial en ligne<br />

– textes, images, documents, objets multimédia dans un site web,<br />

intranet, extranet ou CDROM.<br />

• Comprendre la notion de projet de mise en ligne de contenu<br />

éditorial.<br />

• Être capable de modifier les pages HTML de présentation des<br />

données du contenu éditorial.<br />

Cette formation replace le site dans le projet éditorial et les tâches<br />

du comité de rédaction<br />

Participants<br />

Les développeurs qui sont chargés de la partie présentation des<br />

données d’un site de publication de contenu éditorial.<br />

Pré-requis<br />

Cette formation SPIP développeur suppose des compétences<br />

techniques sur HTML<br />

Contenu<br />

Gestion de contenu sur Internet<br />

Les parties prenantes du projet<br />

Mise en œuvre du site web<br />

Choisir et enregistrer le nom de domaine,<br />

Conditions à vérifier pour faire fonctionner un site sous SPIP<br />

Installer SPIP<br />

Choix local/distant - installation PHP/Mysql en local ( EasyPHP)<br />

Trouver les informations et éléments pour travailler <strong>avec</strong> SPIP<br />

Installer et configurer SPIP sur un serveur local - sur le serveur<br />

distant<br />

Utilisation de phpmyadmin<br />

Les dossiers de SPIP<br />

L’environnement d'administration de SPIP – partie privée<br />

Partie privée – partie publique<br />

Les statuts d’un article – mise en ligne<br />

SPIP développement<br />

Stratégie de développement<br />

Différence entre recherche-traitement de données et présentation<br />

des données<br />

Stratégie de reprise de données d’un site existant.<br />

Squelettes<br />

Introduction - méthodologie de développement<br />

Structure d'un squelette html<br />

Couple fichiers squelette html / PHP<br />

Comment SPIP s’intègre dans un squelette html<br />

Dreamweaver <strong>avec</strong> SPIP, les extensions utiles<br />

La charte graphique du site, les feuilles de style CSS.<br />

Boucles SPIP<br />

Les boucles et les balises SPIP<br />

Critères de sélection et critères d’affichage<br />

Utiliser des filtres<br />

148<br />

Boucles conditionnelles<br />

Formulaires<br />

Les différents formulaires<br />

Administrer le site Publier le site en ligne (outil FTP)<br />

Attributs lectures/écritures des dossiers distants<br />

Sauvegardes et restauration de la base de données<br />

Le dossier IMG d’un site SPIP<br />

La syndication<br />

Ergonomie web<br />

Information à voir vs information à lire<br />

Lecture web – mode consommation et mode recherche<br />

8 niveaux de jugement d’un site web<br />

Typographie<br />

Les logiques d’accès<br />

Notion de points d’entrée au contenu éditorial<br />

Les logiques d’accès et les techniques de navigation<br />

Contenu et sens<br />

Les niveaux de sens en fonction de la pertinence associés au<br />

contenu éditorial<br />

Trouver de l’aide et de l’assistance<br />

Replacer SPIP dans la philosophie Open Source<br />

Sites utiles, serveurs de news, forums, wikis<br />

Multilinguisme


SPIP Administration et<br />

<strong>Développement</strong><br />

SPIP Outil de Gestion de Contenu Editorial<br />

Durée 3 jours<br />

Objectifs<br />

SPIP est la plate-forme de gestion de contenu éditorial en ligne<br />

de référence, proposé en licence Open Source. Cette formation<br />

Administrateur SPIP, stage pratique de 3 jours, vous apprendra<br />

notamment à :<br />

•Placer aisément et instantanément un contenu éditorial en ligne<br />

– textes, images, documents, objets multimédia dans un site web,<br />

intranet, extranet ou CDROM<br />

•Comprendre la notion de projet de mise en ligne de contenu<br />

éditorial.<br />

•Utiliser la partie privée du site pour valider le contenu rédigé par<br />

les rédacteurs.<br />

•Gérer l’arborescence du site et organiser les contributeurs.<br />

•Administrer et référencer le site.<br />

Cette formation SPIP replace le site dans le projet éditorial et les<br />

tâches du comité de rédaction.<br />

Participants<br />

Ingénieurs, programmeurs, analystes ou responsables techniques<br />

qui veulent développer ou maintenir un site SPIP<br />

Pré-requis<br />

L’administrateur SPIP doit avoir auparavant suivi la formation<br />

SPIP Rédiger et publier du contenu.<br />

Elle ne suppose pas de compétences techniques très avancées. Il<br />

est toutefois conseillé aux futurs administrateurs de bien<br />

connaître l’environnement internet et d’être familiers <strong>avec</strong> les<br />

outils bureautiques.<br />

Contenu<br />

Gestion de contenu sur Internet<br />

Parties prenantes du projet<br />

Le projet éditorial pour le Web et l’attribution des tâches<br />

Le projet éditorial pour le web et l’attribution des tâches<br />

Le comité éditorial<br />

SPIP outil de publication<br />

Un site sous SPIP replacé dans la notion de gestion de projet :<br />

Webmaster, administrateur, rédacteur, développeur, graphiste<br />

Mettre en œuvre le site Web<br />

Choisir et enregistrer le nom de domaine, Choisir son hébergeur,<br />

conditions à vérifier pour faire fonctionner un site sous SPIP.<br />

Installer SPIP<br />

Choix local/distant<br />

Installer/configurer SPIP sur un serveur local.<br />

Installer/configurer SPIP sur le serveur distant.<br />

Les dossiers de SPIP<br />

L’environnement d'administration de SPIP – partie privée<br />

Accès partie privée / publique. Configurer l’interface - langues<br />

Les parties prenantes du site (rédacteurs, administrateurs)<br />

Rajouter /Supprimer des rédacteurs. Les statuts d’un article, la<br />

mise en ligne<br />

Modifier l’arborescence du site<br />

Les statuts d’un article, la mise en ligne<br />

Rubriques et sous-rubriques<br />

Modifier l’arborescence du site<br />

Structurer les rubriques et sous-rubriques<br />

Les logiques d’accès<br />

Notion de points d’entrée au contenu éditorial<br />

Les logiques d’accès et les techniques de navigation<br />

Les mots-clef<br />

Contenu et sens<br />

Les niveaux de contenu en fonction de la pertinence<br />

Gérer le projet éditorial<br />

Forums, fonctionnement – modération<br />

Statistiques du site<br />

149<br />

SPIP l’environnement de développement<br />

Minimum de compétences pour que l’administrateur puisse<br />

dialoguer efficacement <strong>avec</strong> le graphiste concernant la charte<br />

graphique et le développeur concernant les boucles SPIP.<br />

Différence entre recherche-traitement de données et présentation<br />

des données<br />

Comment fonctionne les squelettes html, les boucles, les balises<br />

Administrer le site<br />

Les bonnes pratiques<br />

Publier le site en ligne (outil FTP)<br />

Faire des sauvegardes et restauration de la base de données<br />

Les images, photos, documents et objets multimedia du site – le<br />

dossier IMG<br />

Référencer le site Métatag – stratégie de référencement


Flash CS3, prise en main<br />

Durée 4 jours<br />

Objectifs<br />

Cette formation flash vous permettra de comprendre le<br />

fonctionnement du logiciel, de réaliser des animations utilisant<br />

tous les outils de design et les fonctions de base du langage<br />

ActionScript.<br />

Participants<br />

Cette formation flash s’adresse aux graphistes, webmasters,<br />

développeurs de site Internet.<br />

Pré-requis<br />

Cette formation flash requiert une bonne connaissance de<br />

l’environnement informatique (pratique courante de MacOs ou de<br />

Windows). La pratique courante d'un logiciel de dessin vectoriel<br />

(Adobe Illustrator ou FreeHand) et d'un logiciel de dessin bitmap<br />

(Adobe Photoshop ou Fireworks) est souhaitable.<br />

Contenu<br />

Les bases de Flash<br />

Flash les grands principes<br />

Le vocabulaire propre à Flash<br />

Présentation de l'interface<br />

Dessiner des formes simple sur la scène<br />

Peindre à l'aide de couleurs ou de ''bitmap'', gérer les dégradés<br />

Gérer les calques<br />

Gérer la ligne temporelle et les images clés<br />

Créer des objets dans la bibliothèque<br />

L'animation : interpolation de mouvement, de forme<br />

Les masques<br />

La gestion des textes<br />

La gestion des boutons<br />

Analyser et préparer<br />

Déterminer les objectifs de l'animation Flash<br />

Déterminer la structure de votre animation en fonction de sa<br />

finalité<br />

Analyser en terme de graphique, movie clip, bouton<br />

Élaborer le process de réalisation<br />

Réaliser l'animation<br />

Importer les données externes dans la bibliothèque<br />

Création des graphiques dans la bibliothèque<br />

Création des movie clip dans la bibliothèque<br />

Création des boutons dans la bibliothèque<br />

Assemblage des éléments sur la scène<br />

Programmer en ActionScript les bases<br />

Les grands principes de la programmation<br />

Savoir analyser un problème<br />

Mini lexique du vocabulaire indispensable<br />

Concevoir un organigramme<br />

Générer les lignes de code<br />

Programmation<br />

Rendre interactif les éléments de votre animation à l'aide<br />

d'ActionScript<br />

Où écrire le code<br />

''Débugger'' un programme<br />

Tester l'animation<br />

Traiter les autres médias<br />

Pourquoi et comment gérer les médias lourds en externe<br />

Lier de la vidéo au format flv à une animation<br />

Incorporer du son mp3<br />

Publier et tester<br />

Publier une animation<br />

Envoyer par FTP les fichiers swf et html chez l'hébergeur<br />

Convertir une animation en exécutable autonome<br />

150


Flash Bannière<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation Flash vous permettra de créer facilement des<br />

bannières attractives,optimisées et animées pour le Web.<br />

Participants<br />

Pour toutes personnes voulant ajouter une bannière Flash sur un<br />

site Web pour un rendu plus dynamique.<br />

Pré-requis<br />

Connaître et comprendre son environnement de travail ainsi que<br />

les fonctionnalités de bases. La connaissance de la mise en page<br />

HTML et d’un outil de dessin vectoriel est souhaitable.<br />

Contenu<br />

Organisation d'un projet sur Flash<br />

Techniques de base de Flash<br />

Introduction à l'animation vectorielle<br />

Présentation de Flash<br />

La scène<br />

Le scénario<br />

La bibliothèque<br />

L'inspecteur<br />

Les outils de dessin<br />

Les menus<br />

Utilisation de texte<br />

Les symboles<br />

Symboles graphiques<br />

Symboles clips d'animation<br />

Symboles boutons<br />

La bibliothèque<br />

Savoir utiliser la bibliothèque<br />

L'animation<br />

Image par image<br />

Interpolation des formes<br />

Objet vectoriel<br />

Texte<br />

Interpolation de mouvement<br />

Objet vectoriel<br />

Texte<br />

Image<br />

Gestion des couleurs : Alpha (transparence), luminosité, teinte et<br />

fonctions avancées<br />

Gestion de la rotation<br />

Interpolation de mouvement + Guide<br />

Faire suivre un objet (graphique) le long d'une trajectoire<br />

Synchronisation des animations<br />

Gestion de la tête de lecture<br />

Cadence des images<br />

Masque<br />

151


Flash Programmation<br />

ActionScript 2<br />

Durée 5 jours<br />

Objectifs<br />

L’Action Script est le langage de programmation disponible dans<br />

Flash pour la création d’applications avancées. Cette formation<br />

ActionScript vous apprendra les bases de la programmation afin<br />

de pouvoir développer des animations Flash interactives et des<br />

sites Full Flash.<br />

Participants<br />

Utilisateurs de Flash voulant améliorer leurs animations grâce à la<br />

programmation.<br />

Pré-requis<br />

Connaître l’environnement de flash (bibliothèque, symbole,<br />

occurrence, timeline, movie clip) et maîtriser les actions de base<br />

(goto, play, stop, getUrl)<br />

Contenu<br />

L'éditeur de Script<br />

Les fonctionnalités<br />

La syntaxe<br />

Les aides de l'éditeur<br />

Utiliser un éditeur externe<br />

Les concepts d'Action Script<br />

La hiérarchie du document<br />

Le cycle des événements<br />

Le déroulement du script<br />

Introduction à la programmation<br />

Les différents types de variables<br />

Les fonctions personnalisées<br />

Les instructions de contrôle<br />

L'objet MovieClip<br />

Les propriétés du MovieClip<br />

Les principales méthodes du MovieClip : drag & drop, détection<br />

de collision, duplication, création dynamique de clip, chargement<br />

d'animation<br />

Utilisation du MovieClip pour la création de : boutons avancés, de<br />

menus, de curseurs, de jeux...<br />

Gestion dynamique des images<br />

Les champs texte<br />

Les différents types de champ texte : saisie dynamique<br />

Texte Unicode<br />

Texte en fichier externe<br />

HTML et champ texte<br />

Les feuilles de styles<br />

Les classes prédéfinies<br />

Array, Math, Date, Color, MovieClip, Mouse, PrintJob, Sound,<br />

TextField, TextFormat<br />

Le débogage<br />

La fenêtre de débogage<br />

Trace, Break, Continue, point d'arrêt<br />

Les différents modes de débogage<br />

La fenêtre de sortie<br />

La gestion du téléchargement<br />

La distribution des scripts<br />

Utilisation du Movie Explorer<br />

Stratégies par fichiers, niveaux et instances<br />

Les librairies partagées (réutiliser une librairie ou travailler<br />

en équipe)<br />

152


Flex: Maîtriser le<br />

développement<br />

d'application <strong>avec</strong> Adobe<br />

Flex 3<br />

Durée 5 jours<br />

Objectifs<br />

Flex est l'outil développé par Adobe pour le développement<br />

d'applications Internet Riches, pour le lecteur Flash (Content<br />

management system, Back-office, Applications Intranet...)<br />

Sa technologie repose sur l'Action Script 3.0 et sur le langage de<br />

description d'interfaces graphiques MXML (comparable à XUL-<br />

Mozilla Foundation ou XAML-Microsoft).<br />

Cette formation Flex est destinée à l'apprentissage de Flex dans<br />

l'environnement libre TOMCAT- AXIS-MySQL. Nous découvrirons<br />

ainsi comment développer des applications Flex riches à moindre<br />

coût sans sacrifier performances et souplesse.<br />

Participants<br />

Développeurs, chefs de projet souhaitant réaliser des applications<br />

Flash pour l'<strong>entreprise</strong><br />

Pré-requis<br />

Cette formation Flex s’adresse aux personnes qui ne connaissent<br />

pas encore Flex et ActionScript 3 afin<br />

d’avoir une première approche sur le langage ActionScript 3.<br />

Avoir des notions d'un langage de programmation (<strong>Java</strong>, C++,<br />

C#, ActionScript...) et d'XML<br />

Travaux pratiques<br />

Tout au long du stage, de nombreux travaux pratiques permettent<br />

de valider les connaissances théoriques.<br />

Contenu<br />

Présentation de Flex 3<br />

Les clients riches Internet<br />

La ligne de produits Flex : SDK, FlexBuilder, Flex data services,<br />

charting<br />

Machine vituelle flash et flash player<br />

Le processus de développement d'une application Flex<br />

Aide et autres ressources.<br />

L'outil FlexBuilder 3<br />

Eclipse et FlexBuilder 3<br />

L'interface de FlexBuilder : éditeurs, vues et perspectives<br />

Créer un projet et votre première application<br />

Compiler le projet et le lancer<br />

Le debug<br />

Atelier :<br />

Création d’une première application en Flex<br />

Fondamentaux Flex<br />

Créer une application Flex<br />

Organiser une application Flex <strong>avec</strong> les conteneurs, les contrôles<br />

et les binding<br />

Créer et utiliser des composants custom.<br />

Atelier :<br />

Création d’une application multi conteneur<br />

Gérer les événements<br />

Comprendre la notion d'événements, gérer les événements,<br />

utiliser l'objet événement.<br />

153<br />

Atelier : Gestion des événements utilisateur<br />

Utiliser les contrôles<br />

Comprendre la notion de contrôle, utiliser les contrôle de type<br />

Button, Text, Checkbox<br />

Afficher des images, fournir des données aux contrôles<br />

Atelier :<br />

Création d’un formulaire de saisie<br />

Gérer la présentation de l'application<br />

Organiser le contenu <strong>avec</strong> les conteneurs Application, Panel, Form,<br />

Box, DividedBox, Tile, ControlBar...<br />

Bonnes pratiques<br />

Règles de dimensionnement des conteneurs.<br />

Positionnement absolu ; le conteneur Canvas<br />

Créer des contraintes de positionnement <strong>avec</strong> FlexBuilder et en<br />

MXML<br />

Contraintes <strong>avec</strong> des composants imbriqués<br />

Atelier :<br />

Changement de disposition sur une application<br />

Utiliser les états pour concevoir une application<br />

La notion d'état<br />

Avantages<br />

Créer des états <strong>avec</strong> FlexBuilder<br />

Regarder le MXML généré et changer d'état en ActionScript<br />

Les états des composants imbriqués.<br />

Atelier :<br />

Utilisation des états pour les formulaires<br />

La navigation dans l'application<br />

Personnaliser l'application<br />

Utiliser les styles et les thèmes pour changer le look and feel<br />

Appliquer les effets et les transitions pour animer l'application.<br />

Atelier :<br />

Appliquer une feuille style à l’application<br />

Utiliser les modèles de données MXML et ActionScript<br />

Le pattern Model View Controler (MVC)<br />

Créer des modèles de données xml <strong>avec</strong> le tag modelCréer des<br />

classes ActionScript 3.0 : package, constructeurs, propriétés,<br />

méthodes<br />

Instancier des objets ActionScript en MXML.<br />

Atelier :<br />

Création d’une arborescence et d‘objets<br />

Charger des données XML <strong>avec</strong> HTTPService<br />

Récupérer des données lors de l'exécution<br />

Créer des requête http<br />

Gérer les résultats <strong>avec</strong> les bindings et les gestionnaires<br />

d'événement<br />

Gérer les erreurs<br />

Interroger différents domaines.<br />

Afficher les données <strong>avec</strong> une DataGrid<br />

Fournir des données à la DataGrid<br />

Spécifier et formater les colonnes<br />

Le rendu et l'édition des colonnes<br />

Les composants de type ItemRender et ItemEditor.<br />

Atelier :<br />

Afficher des données dans un tableau dynamique<br />

Manipuler les données XML <strong>avec</strong> E4X<br />

Comprendre la structure du XML<br />

Manipuler le XML en ActionScript 3.0<br />

Exemple de manipulation <strong>avec</strong> un contrôle Tree<br />

La classe XML<br />

Manipuler, filter, trier et itérer les objets de type XML.<br />

Atelier : Projet de synthèse des différents point abordés


Flex et ActionScript 3<br />

perfectionnement<br />

Durée 3 jours<br />

Objectifs<br />

Flex est l'outil développé par Adobe pour le développement<br />

d'applications Internet Riches, pour le lecteur Flash (Content<br />

management system, Back-office, Applications Intranet...).<br />

Ce cours intensif de niveau avancé vous permettra d’accroitre<br />

votre capacité de production <strong>avec</strong> Flex et Action Script 3.<br />

Vous allez découvrir les différents modes de communications<br />

entre une application Flex et des serveurs. Vous apprendrez<br />

également à maitriser la création d’application Flex <strong>avec</strong> un<br />

modèle MCV et à enrichir cette application <strong>avec</strong> des composants<br />

puissants comme le Drag and Drop.<br />

Enfin une approche de Adobe AIR vous ferra découvrir le<br />

nouveau système d’applications riches sans navigateur.<br />

Participants<br />

Cette formation s’adresse aux personnes qui connaissent déjà<br />

Flex et ActionScript 3 et qui souhaitent approfondir leurs<br />

connaissances<br />

Pré-requis<br />

La connaissance du développement orienté objet en général ainsi<br />

que la connaissance du model DOM sont nécessaire pour cette<br />

formation.<br />

La formation Flex niveau 1 ou des connaissances identiques sont<br />

fortement recommandée.<br />

Travaux pratiques<br />

Tout au long du stage, de nombreux travaux pratiques permettent<br />

de valider les connaissances théoriques.<br />

Contenu<br />

Rappels Flex<br />

Les clients riches Internet<br />

Machine vituelle flash et flash player<br />

Flex Builder<br />

Debugueur<br />

L'échange de données entre composants<br />

Passer des données complexes aux composants<br />

Comprendre les meilleures pratiques pour l'échange de données<br />

Echanger des données <strong>avec</strong> les événements<br />

Créer, envoyer et gérer des événements "custom"<br />

Charger des données XML <strong>avec</strong> HTTPService<br />

Récupérer des données lors de l'exécution<br />

Créer des requête http<br />

Gérer les résultats <strong>avec</strong> les bindings et les gestionnaires<br />

d'événement<br />

Gérer les erreurs<br />

Interroger différents domaines<br />

Travaux Pratiques<br />

Manipuler des données provenant d’un HTTPService<br />

Créer dynamiquement des composants <strong>avec</strong> le Repeater<br />

Comprendre la philosophie du Repeater<br />

Principales propriétés et méthodes : dataprovider, currentItem<br />

getRepeaterItem()<br />

Accéder aux composants dynamiquement créés<br />

Travaux Pratiques Afficher des données dans un tableau<br />

dynamique<br />

Accéder à des services Web <strong>avec</strong> WebServices<br />

Processus pour appeler des services Web<br />

Déclencher les services et manipuler les résultats<br />

Gérer les réultats et les erreurs <strong>avec</strong> les gestionnaires<br />

d'événement<br />

Passer des paramètres aux services Web explicitement et <strong>avec</strong><br />

des bindings<br />

154<br />

Travaux Pratiques Manipuler des données provenant d’un<br />

WebService<br />

Valider et formater les données<br />

Valider les données d'un formulaire<br />

Créer des validateurs en MXML et en ActionScript<br />

Déclencher les validations <strong>avec</strong> des événements et en ActionScript<br />

Gérer les erreurs de validation<br />

La validation et les modèles de données<br />

Expressions régulières<br />

Formater les données<br />

Exemple du CurrencyFormatter<br />

Formater dans les contrôles de type List ou DataGrid<br />

Travaux Pratiques Appliquer des validateurs sur un formulaire de<br />

saisie<br />

Manipuler les types complexes<br />

Comprendre les nouvelles classes de collection<br />

Filter et trier les collections<br />

Comprendre les interfaces<br />

Itérer sur une collection <strong>avec</strong> IcusrsorView<br />

Travaux Pratiques<br />

Utiliser les types complexes<br />

Manipuler les données XML <strong>avec</strong> E4X<br />

Comprendre la structure du XML<br />

Manipuler le XML en ActionScript 3.0<br />

Exemple de manipulation <strong>avec</strong> un contrôle Tree<br />

La classe XML<br />

Manipuler, filter, trier et itérer les objets de type XML<br />

Travaux Pratiques Manipuler des données XML<br />

Intégrer Caingron ou un autre MVC<br />

Créer son propre Framework MVC<br />

Présentation et intégration de CairnGorn Travaux Pratiques<br />

Intégrer un MVC dans son application<br />

Evénements personnalisés<br />

Déclarer des événements personnalisés<br />

Binder les objets<br />

Utilisation des bind pour la mise à jour de données<br />

Travaux Pratiques Intégration des Bindable dans une application<br />

Drag an Drop<br />

Présentation du mécanisme<br />

Drag and Drop entre des List, DataGrid<br />

Drag and Drop de composants personnels<br />

Travaux Pratiques Création de multiples Drag and Drop<br />

Introduction à AIR<br />

Structure d’une application AIR<br />

Une première application<br />

Construction d’un widget AIR<br />

Travaux Pratiques Créer une mini application AIR


L’essentiel de PHP - Pour<br />

non développeur<br />

Durée 3 jours<br />

Objectifs<br />

Ce cours s’adresse aux personnes non-spécialistes ou débutant<br />

en programmation mais ayant déjà une certaine culture Web.<br />

Il s’agit d’apprendre les bases fondamentales de la<br />

programmation Web dans le contexte de PHP.<br />

À la fin de ce cours intensif, les participants pourront aisément<br />

lire, comprendre, corriger, modifier et faire évoluer un programme<br />

PHP existant.<br />

Ils découvriront également les possibilités offertes par les<br />

bibliothèques de scripts pour la réalisation d'applications par<br />

assemblages de modules.<br />

Enfin ils seront capables d’écrire des applications simples de<br />

bout en bout<br />

Participants<br />

Toute personne souhaitant s’initier au langage PHP, webmestre,<br />

infographiste, etc ….<br />

La connaissance d’un langage de programmation n’est pas<br />

nécessaire.<br />

Les personnes maîtrisant déjà un langage de programmation<br />

sont invitées à suivre directement le cours « PHP/MySQL,<br />

développer des sites web dynamiques <strong>avec</strong> bases de données »<br />

Pré-requis<br />

Les participants doivent connaître les bases du HTML et<br />

posséder une culture WEB.<br />

Travaux pratiques<br />

Des stations de travail sous Windows ou Linux équipées du<br />

serveur Web Apache <strong>avec</strong> le module PHP et un serveur MySql<br />

Contenu<br />

Les Bases de la programmation adaptée à PHP<br />

Qu'est-ce qu'un programme ?<br />

Modes d'exécution : Programme interprétés, compilés et semicompilés.<br />

Les différents éléments d'un programme et leurs rôles.<br />

Les différents langages du Web et leurs raisons d'être.<br />

La place de PHP.<br />

Mon premier programme.<br />

Contextes d'Exécution des programmes PHP<br />

Client/Serveur<br />

L'utilisation de PHP dans le cadre des applications Web.<br />

Requêtes HTTP et entêtes spécifiques<br />

Les bases du langage : aspects syntaxiques et articulation<br />

Les types de variables<br />

Pourquoi typer une variable ?<br />

Typage faible.<br />

Entiers, chaînes de caractères, nombres réels, autres.<br />

Les types évolués.<br />

Les fonctions<br />

Pourquoi sont-elles incontournables en programmation<br />

(réutilisabilité, lisibilité, ...)Exemple de modification de programme<br />

"mal écrit" .<br />

Le passage d'argument.<br />

Le code retour d'une fonction.<br />

Contrôle de flux<br />

La sélection alternative (si ... alors ... sinon ...)<br />

Les boucles (tant que ...)<br />

Aspects complémentaires<br />

Les expressions et les opérateurs, comment les combiner<br />

Les commentaires<br />

Inclusions<br />

Comprendre les messages d'erreur.<br />

Premières applications WEB en PHP<br />

Automatisation d'une page Web<br />

Les principes client serveur<br />

Intégration de PHP dans une page HTML<br />

Librairies<br />

155<br />

Fonctions de base, variables serveur et variable PHP<br />

Les formulaires simples<br />

Passage et transmission de variables (GET/POST).<br />

Lecture écriture de fichier<br />

Vérification de login/mot de passe<br />

Redirection.<br />

Les variables complexes : tableaux<br />

Constructeur array<br />

Fonctions associées aux tableaux<br />

Fonctions d'extraction<br />

Fonctions de navigation dans un tableau<br />

Utilisation d'une base de données MySql<br />

Présentation de MySql.<br />

Concepts fondamentaux: Bases, tables, champs, enregistrements.<br />

Création d'une base multi-tables.<br />

Introduction au langage SQL (sélection, modification, suppression).<br />

Fonctions PHP Mysql<br />

Traitement des résultats des requêtes<br />

Briques Logicielles<br />

Pear.<br />

Tableau comparatif des briques existantes.<br />

Mise en œuvre.<br />

Outils et Ressources<br />

Les principaux outils de développement (IDE).<br />

Les sites de documentation.<br />

Les sites de scripts.


PHP 5 , développer un site<br />

Web dynamique <strong>avec</strong> base<br />

de données<br />

Durée 4 jours<br />

Objectifs<br />

Ce cours vous permettra de maîtriser d'une manière<br />

opérationnelle le langage PHP dans le contexte de<br />

développement de sites Internet dynamiques. Il vous permettra<br />

aussi d'aborder les aspects connexes à ce type de<br />

développement : bases de données, langage SQL, manipulation<br />

de fichiers graphiques,…<br />

Participants<br />

Cette formation s’adresse aux informaticiens qui souhaitent<br />

acquérir une formation opérationnelle sur PHP dans le contexte<br />

du développement, et aux webmasters ayant déjà une bonne<br />

connaissance d'un langage de programmation client (javascript<br />

ou vbscript).<br />

Pré-requis<br />

Les participants doivent impérativement connaître les bases du<br />

HTML hors logiciel WYSIWYG (document, mise en forme,<br />

images, tableaux et formulaires) et au moins un langage de<br />

programmation.<br />

Travaux pratiques<br />

Des machines sous Windows ou Linux équipées du serveur Web<br />

Apache <strong>avec</strong> le module PHP et un serveur MySql ou Oracle<br />

seront mis à la disposition des participants. Les participants vont<br />

créer un site complet de vente en ligne BDPhilia.com chacun des<br />

ateliers se complétant (des corrections sont mises à disposition).<br />

Contenu<br />

Introduction<br />

Qu'est-ce que PHP ?<br />

Interactivité <strong>avec</strong> les internautes.<br />

Les fonctionnalités du langage<br />

Automatisation d'une page Web<br />

Les principes client serveur<br />

Premiers éléments du langage.<br />

Intégration de PHP dans une page HTML.<br />

Variables et fonctions<br />

Librairies<br />

Fonctions de base,variables serveur et variable PHP<br />

Contrôles de flux et boucles.<br />

Travaux Pratiques<br />

Réalisation de fonctions personnalisées.( TTC, frais de port,..)<br />

Réalisation d'une librairie html<br />

Détection du navigateur.<br />

Réalisation de fonctions personnalisées<br />

Réalisation d'une librairie de fonctions<br />

Les formulaires simples<br />

Passage et transmission de variables.<br />

Lecture écriture de fichier<br />

Vérification de login/mot de passe<br />

Redirection<br />

Travaux Pratiques<br />

Réalisation d'une page de recherche : l'utilisateur peut définir<br />

plusieurs critères et les transmettre au moteur de recherche.<br />

Les fonctionnalités avancées du langage<br />

Les tableaux complexes<br />

Constructeur array<br />

Fonctions associées aux tableaux<br />

Fonctions d'extraction<br />

156<br />

Variables persistantes: Cookies et Session<br />

Avantages et inconvénients des cookies et sessions.<br />

Limitations et précautions.<br />

Les variables de session<br />

les Cookies<br />

Sérialisation des variables complexes<br />

Utilisation.<br />

Travaux Pratiques<br />

Réalisation d'un panier d'achat.<br />

Gestion des quantités commandées (ajout, retrait, suppression)<br />

Utilisation d'une base de données MySql<br />

Présentation de phpMyAdmin.<br />

Concepts fondamentaux: Bases, tables, champs, enregistrements.<br />

Création d'une base multi-tables.<br />

Fonctions PHP Mysql<br />

Introduction au langage SQL (sélection, modification, suppression).<br />

Requêtes SQL avancées (jointures de tables).<br />

Traitement des résultats des requêtes<br />

Travaux Pratiques<br />

Création d'une base Mysql<br />

Remplissage de la base à partir d'une base texte<br />

Création de fiches produit à la volée par extraction des données de<br />

la base.<br />

Les formulaires complexes<br />

Moteur de recherche: formulaire en relation <strong>avec</strong> une base de<br />

données.<br />

Fonctions avancées de sélection: modification de la base, tris<br />

(ORDER BY), recherches (WHERE).Travaux Pratiques<br />

Réalisation d'un moteur de recherche et de la présentation des<br />

résultats.<br />

Intégration des modules réalisés<br />

Travaux Pratiques<br />

Intégration des différents modules réalisés.<br />

Gestion du stock et interface backoffice pour la gestion des<br />

nouveaux ouvrages.<br />

Librairie GD : gestion graphique sous PHP<br />

Génération d'images<br />

Présentation de la librairie GD.<br />

Création d'image, réutilisation.<br />

Superposition de texte pour protection de droits<br />

Intégration au site<br />

Intégration des modules réalisés<br />

Travaux Pratiques<br />

Intégration des différents modules réalisés.<br />

Affichage des images, <strong>avec</strong> mention de copyright.<br />

Initiation à la POO<br />

P.O.O.PHP et la programmation orientée objet.<br />

Évolution du moteur objet dans PHP5.


PHP 5 perfectionnement<br />

(Fonctions avancées &<br />

Programmation Orientée<br />

Objet)<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation PHP 5 perfectionnement vous propose une<br />

introduction poussée à la POO permettra l'utilisation optimale des<br />

briques logicielles développées par les différents groupes de<br />

travail (PEAR / PHPLib), ainsi que leur adaptation éventuelle aux<br />

nécessités d'un développement spécifique.<br />

Les aspects avancés liés aux bases de données seront étudiés<br />

au travers d'exemples spécifiques : authentification LDAP,<br />

transactions et procédures stockées sous Oracle, champs<br />

multidimensionnels et requêtes paramètrées sous PostgreSql,<br />

jointures sous MySql, etc.<br />

L'ouverture vers les nouvelles perspectives offertes par le Web<br />

2.0 est également abordée au travers d'une introduction au<br />

principe AJAX, et par l'utilisation de clients riches communiquant<br />

en flux XML <strong>avec</strong> le serveur.<br />

Participants<br />

Cette formation PHP 5 s’adresse aux développeurs PHP ayant<br />

déjà une bonne pratique du langage en mode procédural,<br />

désirant améliorer la pérennité et la maintenabilité de leurs<br />

développements.<br />

Pré-requis<br />

Les participants doivent impérativement connaître le programme<br />

de niveau 1.<br />

Travaux pratiques<br />

Des machines sous windows XPPro et/ou Linux équipées des<br />

serveurs Apache2 <strong>avec</strong> PHP5, MySql, Oracle, LDAP, FTP et mail<br />

seront mis à la disposition des participants.<br />

Contenu<br />

Introduction<br />

Optimisation des développements par utilisation de briques<br />

logicielles.<br />

<strong>Développement</strong> et réutilisabilité : stratégies et enjeux.<br />

Programmation Orientée Objet (POO)<br />

Classes, Propriétés, Méthodes<br />

Visibilité & Protection.<br />

Constructeur, destructeur<br />

Appel implicite vs.explicite.<br />

Héritage & Agrégation<br />

Règles de propagation.<br />

Polymorphisme<br />

Travaux Pratiques<br />

Réalisation d'une classe Formulaire.<br />

PEARstructure, conventions et paramètres.<br />

principales librairies.<br />

Gestion des erreurs<br />

Création d'un gestionnaire<br />

Travaux Pratiques<br />

Réalisation d'une classe de gestion avancée d'erreurs.<br />

Bufferisation & fichiers log<br />

Travaux Pratiques<br />

Implémentation d'un affichage bufférisé et d'un fichier log dans la<br />

classe.<br />

Authentification LDAP<br />

Introduction<br />

OpenLdap.<br />

Configuration et démarrage (fichiers conf et ldif)<br />

Lecture<br />

Connexion anonyme, Interrogation et récupération de données<br />

Ecriture<br />

Connexion administrateur<br />

Formatage des données et Insertion<br />

157<br />

Travaux Pratiques<br />

Implémentation d'une classe d'authentification.<br />

Bases de données : manipulations avancées<br />

Aspects avancés<br />

Bases multitables et jointure : avantages et limites de la théorie.<br />

Intégrité transactionnelle : assurer la cohérence des données dans<br />

un environnement internet.<br />

Procédures stockées : Réutilisation de l'existant lors de migration<br />

technologiques.<br />

Champs multidimensionnels<br />

XML<br />

Sécurité : formatage des entrées et requêtes paramétrées.<br />

ODBC : outil passe-partout win32.Pear ADO : Abstraction des<br />

accès.<br />

Etude de Cas Oracle : Commit / Rolback et pointeurs abstraits pour<br />

procédure stockées.<br />

MySql : conversion multitables et adaptation des requêtes DML.<br />

XML / DOM / XSLT<br />

XML format & validation<br />

DOM création, analyse.<br />

Transformateurs XSL<br />

XSL / XSLT<br />

Clients riches : SWF et AJAX<br />

Principe & enjeux.<br />

Travaux Pratiques<br />

Création d'états multipaginés en Ajax.<br />

Webservice & SOAP<br />

Introduction.<br />

Annuaires de services & accessibilité<br />

WSDL et SOAP<br />

Créer un webservice et son fichier de description.<br />

Utiliser un webservice.<br />

Travaux Pratiques<br />

Utilisation d'un webservice.<br />

PDF pour AcrobatReader<br />

Opérations de base.texte et mise en page.<br />

Opérations avancées.<br />

Images et tracés vectoriels.<br />

Travaux Pratiques<br />

Implémentation d'une classe PDF pour la génération automatisée<br />

d'une facture.<br />

E-mail<br />

MIME : Pièces jointes et formats HTML.<br />

Les formats Mixed, Multipart, Alternative / Related<br />

Les encodages particuliers<br />

Paramétrage d'un serveur de test<br />

Travaux Pratiques<br />

Réalisation d'une fonction classe xMail pour l'envoi de mails au<br />

format mime.<br />

Utilisation de la classe créée pour l'envoi d'une facture PDF en<br />

pièce joint<br />

Sécurité<br />

Configuration de PHP<br />

Les différentes types d'attaques (Injections SQL, de commandes ,<br />

Cross-site scripting, CSRF, ...)<br />

Les bonnes pratiques et règles de sécurité<br />

Debug et amélioration des performances<br />

Gestion des erreurs<br />

Optimisation des algorithmes<br />

Techniques de mise en cache<br />

Les bonnes pratiques Certification PHP et rappels<br />

La certification PHP<br />

Configuration, les bases, les tableaux<br />

Gestion des chaînes, expressions régulières<br />

Gestion de fichiers


PHP Extensions :<br />

Fonctions avancées &<br />

Modules Externes<br />

Durée 2 jours<br />

Objectifs<br />

Eviter de réinventer la roue en tirant parti des extensions PHP et<br />

des briques logicielles développées par les différents groupes de<br />

travail (PEAR / PHPLib). Les aspects avancés liés aux bases de<br />

données seront étudiés au travers d'exemples spécifiques :<br />

extension LDAP, APIs spécifiques aux bases Oracle, Postgresql<br />

ou Mysql.<br />

Les apis XML (DOM et SAX) permettront d'aborder plus<br />

sereinement la problématique des flux RSS, la génération de<br />

réponses AJAX ou l'utilisation de webservices .<br />

Enfin, les extensions Mail et PDF sont également abordées en<br />

profondeur, afin de répondre aux préoccupations courantes de<br />

développement.<br />

Participants<br />

Cette formation s’adresse aux développeurs PHP ayant déjà une<br />

bonne pratique du langage en mode objet, désirant aller plus loin<br />

dans leurs développements.<br />

Pré-requis<br />

Les participants doivent impérativement connaître la<br />

programmation objet sous PHP (PHHO ou PHOOP).<br />

Travaux pratiques<br />

Des machines sous windows XPPro équipées des serveurs<br />

Apache2 <strong>avec</strong> PHP5, MySql, Oracle, LDAP et mail seront mis à<br />

la disposition des participants.<br />

Contenu<br />

Rappel : Programmation Orientée Objet (POO)<br />

Classes, Propriétés, Méthodes<br />

Visibilité & Protection.<br />

Héritage<br />

Règles de propagation.<br />

Polymorphisme<br />

PEAR et PHPLib<br />

PEARstructure, conventions et paramètres<br />

principales librairies<br />

Atelier : Utilisation des librairies Html, Formulaires, CSS et<br />

DBPHPLib<br />

structure, conventions et paramètres<br />

principales librairies<br />

Atelier<br />

Utilisation des librairies Template et Authentification .<br />

Authentification LDAP<br />

Introduction OpenLdap.<br />

Configuration et démarrage (fichiers conf et ldif)<br />

Lecture<br />

Connexion anonyme, Interrogation et récupération de données<br />

Ecriture<br />

Connexion administrateur<br />

Formatage des données et Insertion<br />

Atelier<br />

Implémentation d'une classe d'authentification.<br />

Bases de données : manipulations avancées<br />

Aspects avancés<br />

Bases multitables et jointure : avantages et limites de la théorie.<br />

Intégrité transactionnelle : assurer la cohérence des données<br />

dans un environnement internet.<br />

Procédures stockées : Réutilisation de l'existant lors de migration<br />

technologiques.<br />

Champs multidimensionnels<br />

158<br />

XML<br />

Sécurité : formatage des entrées et requêtes paramétrées.<br />

ODBC : outil passe-partout win32.<br />

Etude de Cas Oracle : Commit / Rolback et pointeurs abstraits pour<br />

procédure stockées.<br />

MySql : conversion multitables et adaptation des requêtes DML.<br />

XML / DOM / XSLT<br />

XMLformat & validation<br />

DOM création, analyse.<br />

Transformateurs XSLXSL / XSLT<br />

Clients riches : AJAX<br />

Principe & enjeux.<br />

Atelier<br />

Création d'un flux XML pour une page Ajax.<br />

Atelier<br />

Création d'un flux RSS.<br />

Webservice & SOAP<br />

Introduction.<br />

annuaires de services & accessibilité<br />

WSDL et SOAP<br />

Créer un webservice et son fichier de description.<br />

Utiliser un webservice.<br />

Atelier<br />

Utilisation d'un webservice.<br />

PDF pour AcrobatReader<br />

Opérations de base.texte et mise en page.<br />

Opérations avancées.<br />

Images et tracés vectoriels.<br />

Atelier<br />

Implémentation d'une classe PDF pour la génération automatisée<br />

d'une facture.<br />

E-mail<br />

MIME : Pièces jointes et formats HTML.<br />

Les formats Mixed, Multipart, Alternative / Related<br />

Les encodages particuliers<br />

Paramétrage d'un serveur de test<br />

Etude d'une librairie<br />

Atelier<br />

Réalisation d’une fonction classe xMail pour l'envoi de mails au<br />

format mime.<br />

Utilisation de la classe créée pour l'envoi d'une facture PDF en<br />

pièce jointe.


PHP: Optimisation et<br />

industrialisation des<br />

développements<br />

Durée 4 jours<br />

Objectifs<br />

PHP ayant résolument pénétré le monde de l'<strong>entreprise</strong> au sens<br />

large, de la PME aux Grands Comptes, en passant par la quasitotalité<br />

des administrations, il devient urgent de s'intéresser aux<br />

méthodes en rapport <strong>avec</strong> l'échelle des développements<br />

entrepris.<br />

Cette formation Optimisation PHP est axée sur 3 thèmes :<br />

l'optimisation du code au niveau algorithmique, l'adaptation de<br />

l'architecture logicielle aux nécessités du travail en équipes<br />

pluridisciplinaires ou multisites et la rationalisation des<br />

développements orientés maintenabilité et réutilisabilité.<br />

Participants<br />

Cette formation Optimisation PHP s’adresse aux développeurs<br />

PHP ayant déjà une bonne pratique du langage en mode objet,<br />

désirant améliorer la pérennité et la maintenabilité de leurs<br />

développements.<br />

Pré-requis<br />

Les participants doivent impérativement connaître la<br />

programmation orientée objet sous PHP.(PHHO, PHOOP ou<br />

PHA)<br />

Contenu<br />

Introduction<br />

Problèmes classiques rencontrés en développement standard.<br />

Culture d'<strong>entreprise</strong> : impacts à long et moyen terme.<br />

Inflation non contrôlée du code et théorie de l'avalanche.<br />

<strong>Développement</strong> et réutilisabilité : stratégies et enjeux.<br />

Optimisation de Code<br />

Outils de test & mesure<br />

Outils de mesure (Benchmarking)<br />

Outils de profiling & d'analyse<br />

Outils de Simulation de charge client/serveur<br />

Optimisation gestion du buffer de sortie<br />

compression/décompression à la volée.<br />

cache client (Expire, ETags et Cache-Control)<br />

cache serveur<br />

Optimisation des algorithmes<br />

Gestion des flux de sortie.<br />

Optimisation des boucles.<br />

Récursion vs. itération<br />

Optimisation des requêtes SQL<br />

Optimisation des tables<br />

Fichiers texte et bases de données : une complémentarité vitale.<br />

Programmation parallèle : tirer parti des multi-core.<br />

Atelier<br />

Optimisation graduelle d'une page type, <strong>avec</strong> mesures<br />

comparées des performances obtenues.<br />

Productivité<br />

La POO : bienfaits et limites<br />

Etude de cas.<br />

Pertinence de l'approche POO vs. procédurale.<br />

La solution mixte.<br />

Atelier<br />

Analyse de performances et consommation mémoire pour les<br />

différents types d'approches.<br />

IDE<br />

Les principaux IDE du marché.<br />

Configuration.<br />

Atelier<br />

Installation d'Eclipse et configuration du débuggeur.<br />

Conventions et Bonnes pratiques<br />

Les Tests Unitaires et l'approche TDD/XP.<br />

Conventions de codage et outils de validation<br />

Commentaires et Documentation<br />

Atelier<br />

Mise en oeuvre des classes de tests unitaires.<br />

159<br />

Utilisation des outils de vérification (checker)<br />

Utilisation des outils de style (beautifier)<br />

Utilisation des modules de documentation automatique.<br />

Rationalisation de développements<br />

Architecture Multicouches<br />

Programmation "spaghetti" et maintenabilité.<br />

Approche pluridisciplinaire et soustraitance.<br />

MVC : diviser pour mieux régner.<br />

MVC sans l'objet<br />

Atelier<br />

Passage d'une page "spaghetti" à un modèleMVC.<br />

Frameworks (cadres)<br />

Philosophie<br />

Etude d'un framework "maison"<br />

Comparaison fonctionnelle des principaux frameworks du marché.<br />

Atelier<br />

Réalisation d'un moteur de recherche basé sur un framework<br />

"maison".<br />

Installation et mise en oeuvre du framework Symfony.<br />

Design Patterns (Motifs de Conception)<br />

Principe de base & Avantages<br />

Structure des patterns Factory - Singleton - Chaîne de Commande -<br />

Observateur - Stratégie<br />

Structure des patterns Adapteur - Iterateur - Decorateur - Délégué -<br />

Etat - FlyWeight<br />

Encapsulation des concepts variables.<br />

Atelier<br />

Mise en oeuvre des différents motifs de conception.


PHP Sécurité<br />

Durée 3 jours<br />

Objectifs<br />

De par sa nature même, le service dynamique de pages web<br />

ouvre de nombreuses portes sur le monde extérieur. Pour le<br />

développeur, il est primordial de prendre conscience des types<br />

d'attaques auxquelles son code sera potentiellement exposé.<br />

Cette formation PHP sécurité se concentre sur le point de vue du<br />

développeur, les aspects "sécurisation serveur" étant abordés<br />

dans les cours d'administration.<br />

Une approche pratique basée sur des sessions de hacking<br />

éthique.<br />

Participants<br />

Cette formation s’adresse aux développeurs PHP ayant déjà une<br />

bonne pratique du langage, désirant développer des applications<br />

sécurisées.<br />

Pré-requis<br />

Les participants doivent bien connaître la programmation sous<br />

PHP / Sql et avoir de bonnes notions de programmation Client<br />

(javascript).<br />

Travaux pratiques<br />

Des machines sous windows XPPro équipées des serveurs<br />

Apache2 <strong>avec</strong> PHP5, MySql, Oracle, LDAP et mail seront mis à<br />

la disposition des participants.<br />

Contenu<br />

Comprendre pour réduire les risques des applications PHP.<br />

Les Risques<br />

Destruction de données<br />

Détournement de site<br />

Publication de données confidentielles<br />

Abus de ressources<br />

Vol d'identité<br />

Plan Sécurité<br />

Conception, <strong>Développement</strong> et Maintenance<br />

Sécurité et Pages Web.XSS<br />

Principe et méthodes de protection<br />

moteur de recherche<br />

Atelier<br />

CSRF principe et contre-mesures<br />

virus en base de données<br />

Atelier<br />

Formulaires PHP: la grande porte<br />

Les failles<br />

validation et limitations de l'approche javascript<br />

chaînage, attaques HTTP et Ajax.<br />

Contre-mesures<br />

Validation des entrées tests et principe des listes<br />

expressions régulières, standards et filtres<br />

Upload failles et contre-mesures<br />

Atelier<br />

Sécurité PHP : Cookies et Sessions Cookies<br />

Principes et risques.<br />

Manipulation <strong>Java</strong>script<br />

Tableaux de cookies.<br />

Sessions<br />

Mode Cookie vs. Header<br />

Principe du vol de session.<br />

Sécuriser PHP : les bons réglages<br />

PHP.inidirectives sensibles, sessions et erreurs<br />

Protéger les scripts protection physique.<br />

exécution de scripts distants ou à la volée<br />

Atelier<br />

160<br />

Réglage des options sensibles. Discussion sur les conséquences<br />

au niveau développement.<br />

Sécurité PHP : Bases de Données<br />

Failles potentielles.<br />

risques : données et administration.<br />

stockage<br />

Injections SQL.<br />

principe et contre-mesure.<br />

procédures stockées et requêtes paramétrées.<br />

Limites.<br />

Fichiers d'accès.<br />

Organisation et valeurs par défaut<br />

Accès anonymes et protocoles<br />

Atelier<br />

Sécuriser l'emploi des extensions en PHP.<br />

Se protéger contre le SPAM.<br />

Spam via un formulaire de contact : Injections et contre-mesures<br />

Atelier<br />

Utiliser un formulaire de contact pour envoyer un mail à 3 adresses<br />

différentes.<br />

Accès réseau par PHP.<br />

Appels séquentiels et récursifs<br />

Attaque furtive.<br />

Atelier<br />

Soumettre une url détournée.<br />

La boîte à outils.<br />

BFA.<br />

Principe : Dictionnaire<br />

Identification et Contre-mesures.<br />

Atelier<br />

Mise en oeuvre des outils nécessaires à une BFA.<br />

Phishing.<br />

Principe et Formation des utilisateurs.<br />

Atelier<br />

Analyse de différents cas, identification des victimes potentielles.<br />

DoSQuotas et gestion des charges.<br />

Atelier<br />

Mots de Passe.<br />

Renforcement et stockage<br />

Création et rappel<br />

Atelier<br />

Chiffrement et Signature.<br />

Cryptage / décryptage : Implémentation PHP et MySql.<br />

Atelier<br />

Cryptage des données client.<br />

Atelier<br />

Frameworks et briques logicielles.<br />

Gestion de la sécurité dans les développements composites<br />

Audit de Sécurité.<br />

Méthodologie de base, Cross-test et Rapport d'Audit.<br />

Atelier


Ajax et PHP<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation Ajax et PHP se concentre sur le développement<br />

d'applications Ajax dans un contexte PHP. Après une étude<br />

technique du principe Ajax, les participants apprendront à utiliser<br />

les librairies PHP (internes et tierces) pour la gestion des<br />

appels/réponses asynchrones, en mode XML et JSON. Dans un<br />

souci de productivité et de cohérence des développements, les<br />

principaux frameworks PHP/Ajax seront également étudiés.<br />

Participants<br />

Cette formation s’adresse aux développeurs PHP qui souhaitent<br />

faire évoluer l'interactivité de leurs applications par une utilisation<br />

pertinente d'Ajax.<br />

Pré-requis<br />

Les participants doivent avoir des bases de <strong>Java</strong>script. Connaître<br />

la manipulation XML sous PHP (cours PHA ou PHEXT sont<br />

fortement recommandé.<br />

Travaux pratiques<br />

Des machines sous Windows ou Linux équipées du serveur Web<br />

Apache <strong>avec</strong> le module PHP et un serveur MySql, PostgreSQL<br />

ou Oracle seront mis à la disposition des participants. Les<br />

participants vont créer un site complet de vente en ligne.<br />

Contenu<br />

PHP et Ajax : Introduction<br />

Qu’est-ce qu'Ajax ?<br />

Pourquoi Ajax ?<br />

Risques induits : navigation, sécurité et performances.<br />

CSS : Afficher en souplesse<br />

Aspects pertinents des CSS dans un contexte Ajax<br />

Bases<br />

Sélecteurs.<br />

Pseudo-sélecteurs.<br />

Styles CSS et Ajax<br />

Atelier<br />

Génération XML en PHP<br />

Extension PHP DomXml<br />

Le DOM.<br />

Gestion des entités spéciales.<br />

Envoi de chaînes html.<br />

Générer du XML utilisable.<br />

<strong>Java</strong>script dans le cadre d'Ajax<br />

Rappel<br />

Bases du langage et contexte d'exécution<br />

L'objet en <strong>Java</strong>script<br />

Création et instanciation<br />

Paramétrage et récupération d'information.<br />

Tableaux<br />

Méthodes particulières.<br />

DOM XML<br />

Le flux entrant<br />

Le document de sortie<br />

Frames - utilisation et pertinence<br />

XMLHttpRequest méthodes et propriétés.<br />

Avantages, risques et limitations<br />

Et sans javascript ? éviter le blocage.<br />

Atelier<br />

Validation d'un formulaire simple multiplateforme.<br />

161<br />

Gestion de l'historique Ajax <strong>avec</strong> PHP<br />

Navigation Ajax<br />

historique navigateur<br />

problème du bouton retour(back).<br />

Solution PHP<br />

Historique serveur.<br />

cache client / cookies.<br />

Mise en Oeuvre<br />

Ajax<br />

Accordéons<br />

Un Lecteur RSS Ajax<br />

Pagination et tris<br />

Validation incrémentale<br />

Autocomplétion<br />

Drag & Drop<br />

Les Images<br />

APIs géographiques<br />

Atelier<br />

Formulaire de recherche en autocomplétion, résultat multipaginé,<br />

validation du bon de commande et panier d'achats en drag'n drop.<br />

Librairies et Frameworks PHP pour Ajax<br />

Librairies et frameworks<br />

<strong>Java</strong>script<br />

Utiliser Prototype et Scriptaculous dans des projets PHP.<br />

Yahoo et Google : Implémenter les APIs PHP<br />

Dojo, Sack, Sajax et Xajax : Paramétrages dans un contexte PHP.<br />

ITMill<br />

PEAR:: HTML_AJAX, la librairie PHP pour Ajax<br />

Implémentation Framework (serveur)<br />

Symfony<br />

Backbase Server pour PHP<br />

Atelier<br />

Reprise des exercices précédents à l'aide de librairies.<br />

JSON sous PHP : une approche différente<br />

Ajax sans XML<br />

Notation objet<br />

transmission.<br />

PHP5 : gestion native JSON<br />

Atelier


Administrer un intranet<br />

sécurisé <strong>avec</strong> IIS 6<br />

Internet Information Server<br />

Durée 3 jours<br />

Objectifs<br />

IIS est aujourd'hui l'un des serveurs Web les plus utilisés tant<br />

pour les sites Internet que pour les Intranet. Toutefois les<br />

attentes vis-à-vis des serveurs Web ont évolué : il faut consolider<br />

plusieurs serveurs en un seul, bâtir des solutions à très haute<br />

performance, et surtout, isoler les processus pour garantir la<br />

sécurité. Par ailleurs, le développement de services et<br />

d'applications Web, plus complexe que la mise en ligne de<br />

simples sites Web nécessite une intégration forte <strong>avec</strong> la<br />

technologie .Net. Les participants à cette formation sauront<br />

mettre en oeuvre une solution robuste et en assurer la<br />

maintenance.<br />

Cette formation II6 vous permettra de:<br />

Comprendre les apports de la version 6 de IIS<br />

Savoir consolider des serveurs Web<br />

Être en mesure de réaliser la migration de sites existants<br />

Pouvoir garantir l'isolation et la sécurité de plusieurs sites sur un<br />

même serveur<br />

Être en mesure d'administrer la Metabase<br />

Participants<br />

Administrateurs de sites Web, Personnes en charge de<br />

l'administration de serveurs d'applications Web et de services<br />

Web, Responsables de la production Web<br />

Pré-requis<br />

Expérience significative dans l'administration de serveurs<br />

Windows Server 2003<br />

Contenu<br />

Introduction à IIS 6.0<br />

Architecture globale<br />

Principes de gestion des requêtes http<br />

Architecture de la Metabase<br />

Principes fondamentaux de la sécurité<br />

Installer IIS 6.0<br />

Installation de IIS 6.0<br />

Vérifier les paramètres de mode d'isolation et configurer les<br />

mises à jour automatiques<br />

Créer un nouveau site Web et un annuaire virtuel<br />

Configuration de la sécurité<br />

Mettre en oeuvre le serveur Web comme un serveur<br />

d'applications<br />

Configurer le serveur d'applications : méthode d'authentification<br />

et autorisations<br />

Mettre en oeuvre le pooling d'applications en mode d'isolation de<br />

processus de travail<br />

Activation de l'encryption de données<br />

Réduction des risques d'attaques<br />

Créer des sites additionnels<br />

Création de sites web pour héberger plusieurs applications<br />

Création de sites FTP pour permettre l'échange de fichiers<br />

Administrer la Metabase<br />

Gestion et opérations courantes<br />

Sauvegarde et restauration de la base<br />

Importation et exportation de la configuration<br />

Gérer les serveurs et les applications<br />

Gestion des applications serveur<br />

Gestion des pools d'applications<br />

Surveiller la performance et la sécurité<br />

Collecte des logs pour la sécurité et les performances<br />

Analyse des résultats<br />

Mise en oeuvre d'actions correctives et préventives<br />

Dépanner les problèmes d'accès<br />

Migrer des sites et des applications hébergées sur des<br />

versions précédentes<br />

Préparation du serveur à la migration<br />

Migration manuelle<br />

Utilisation de l'outil de migration pour automatiser les migrations<br />

162


IIS 7 : Administration et<br />

Dépannage de IIS 7.0 sous<br />

windows server 2008<br />

Durée 3 jours<br />

Objectifs<br />

Totalement ré-architecturé en version 6.0, IIS subit encore une<br />

nouvelle métamorphose en version 7.0 : interface<br />

d'administration revue, fichiers de configuration au format XML,<br />

modularisation, meilleure intégration de .Net. A l'issue de cette<br />

formation IIS, les participants seront en mesure d'installer et de<br />

configurer IIS 7.0 de manière à l'adapter parfaitement à<br />

l'environnement applicatif.<br />

Cette formation IIS vous permettra de:<br />

- Apprendre à installer et configurer des serveurs Web et des<br />

serveurs d'applications sous Windows Server 2008<br />

- Savoir comment assurer la disponibilité et la sécurité des<br />

applications Web<br />

- Être capable de réduire les risques grâce à la modularité d'IIS<br />

7.0<br />

Participants<br />

Ingénieurs systèmes chargés de l'exploitation et de la<br />

maintenance des serveurs Web sous Windows Server 2008<br />

Pré-requis<br />

Bonnes connaissances des protocoles et de l'architecture des<br />

applications Web,<br />

connaissances de base de l'administration des serveurs<br />

Windows<br />

Contenu<br />

Configurer un serveur Web IIS 7.0<br />

Présentation des services Internet IIS 7.0<br />

Installation du rôle de serveur Web dans Windows Server 2008<br />

Configuration des fonctionnalités de développement<br />

d'applications, d'intégrité et HTTP<br />

Configuration des fonctionnalités de performances, de sécurité et<br />

de composants du serveur<br />

Configurer un site Web et des pools d'applications<br />

Vue d'ensemble<br />

Création d'un site Web<br />

Création d'un pool d'applications<br />

Assurer la maintenance d'un pool d'applications<br />

Configurer les applications<br />

Configuration des paramètres des applications<br />

Configuration de la sécurité ASP.NET<br />

Configurer des modules IIS 7.0<br />

Configuration des modules natifs<br />

Configuration des modules managés<br />

Sécuriser les serveurs et sites Web <strong>avec</strong> IIS 7.0<br />

Configuration de serveurs et de sites Web sécurisés<br />

Configuration des autres aspects de la sécurité des serveurs<br />

Web<br />

Configuration de la journalisation pour IIS 7.0<br />

Utiliser la délégation et de l'administration à distance<br />

Configuration de l'administration à distance<br />

Configuration de l'administration déléguée<br />

Configuration de la délégation des fonctionnalités<br />

Utiliser la ligne de commande et les scripts pour l'administration<br />

Outils d'exécution des tâches d'administration<br />

Exécution de scripts pour les tâches d'administration<br />

Gestion des tâches IIS<br />

Améliorer les performances de IIS<br />

Les meilleures pratiques pour améliorer les performances d'IIS<br />

Configuration des options pour améliorer les performances d'IIS<br />

Optimiser les pools d'applications<br />

163<br />

Garantir la disponibilité du site Web <strong>avec</strong> des batteries de<br />

serveurs Web<br />

Sauvegarde et restauration de sites Web<br />

Utilisation des configurations partagées<br />

Configuration de l'équilibrage de la charge réseau pour IIS<br />

Résoudre les problèmes des serveurs Web IIS 7.0<br />

Utilisation des journaux d'IIS 7.0 pour la résolution des problèmes<br />

Problèmes liés à l'authentification<br />

Problèmes liés à l'autorisation<br />

Problèmes liés à la communication<br />

Problèmes liés à la configuration


Filière Microsoft<br />

164


Ecriture de scripts pour<br />

Windows (WSH)<br />

Utiliser la puissance des scripts en environnement Windows<br />

Durée 3 jours<br />

Objectifs<br />

L'automatisation de l'administration des systèmes Microsoft est<br />

principalement gérée à l'aide de l'environnement Windows<br />

Scripting Host, mais il nécessite aussi parfois le recours à des<br />

technologies de scripts plus anciennes. Les limites de WSH<br />

peuvent par ailleurs être rapidement atteintes et le besoin de<br />

migration vers des solutions d'avenir comme PowerShell se faire<br />

sentir. Les participants à cette formation scripts windows sauront<br />

mettre en oeuvre et maintenir des solutions de scripts facilitant<br />

les tâches d'administration courantes.<br />

Cette formation scripts Windows vous permettra de:<br />

- Appréhender les différences entre les différentes technologies<br />

de scripting<br />

- Créer des scripts automatisés gérant le registre, les fichiers et<br />

l'annuaire<br />

- Concevoir des outils graphiques d'administration système<br />

- Se préparer aux évolutions majeures des scripts Windows<br />

Participants<br />

Administrateurs Windows Server<br />

Pré-requis<br />

Connaissance de l'administration de Windows Server et d'Active<br />

Directory<br />

Travaux pratiques<br />

Au cours de cette formation scripts Windows, différents ateliers<br />

permettront d'acquérir la pratique de l'écriture de scripts<br />

d'administration permettant la maintenance des environnements<br />

Microsoft.<br />

Contenu<br />

Rappels d'algorithme<br />

Les instructions<br />

Les variables<br />

Sous-programmes<br />

Structures itératives et conditionnelles<br />

Le débogueur<br />

Travail <strong>avec</strong> les objets<br />

Créer et utiliser des objets<br />

Les modèles objet<br />

Les modèles objet standards<br />

Panorama des technologies de script<br />

Les interpréteurs command.com, cmd.exe, BourneShell et<br />

PowerShell<br />

Windows Scripting Host<br />

Applications HTML (mshta.exe)<br />

Les APIs Win32, COM et le .Net Framework<br />

L'interpréteur cmd.exe<br />

Variables d'environnement<br />

Sauts, conditions et itérations<br />

Redirection<br />

WSH (Windows Scripting Host)<br />

Indépendance du langage (<strong>Java</strong>Script, Perl, VBScript...)<br />

ADSI (Active Directory Services Interface)<br />

FSO (File System Object)WMI (Windows Management<br />

Instrumentation)<br />

ADO (Active Data Objects)<br />

Messages e-mail<br />

Gestion des droits d'accès<br />

Les journaux d'évènements<br />

Les librairies de type (TLB)<br />

Extensibilité par processus : pilotage d'applications<br />

Applications HTML<br />

Documents HTML<br />

165<br />

Présentation du modèle dynamique (DHTML)<br />

Créations d'outils;assistants graphiques d'administration système<br />

PowerShell<br />

Présentation de la plate-forme .Net<br />

Avantages et limites<br />

Bases du Shell (typage, expressions avancées...)


PowerShell - Ecriture de<br />

script système pour<br />

Windows<br />

Durée 3 jours<br />

Objectifs<br />

Cette formation PowerShell apporte les compétences et<br />

connaissances pour utiliser Windows PowerShell afin<br />

d'administrer et automatiser l’administration de Windows Server<br />

2008.<br />

Cette formation PowerShell vous permettra de:<br />

- Installer et lancer Windows PowersShell<br />

- Travailler <strong>avec</strong> les objets dans Windows PowerShell y compris<br />

cmdlets, les types de données, les variables et les modèles<br />

d’information des objets<br />

- Mettre en œuvre les séquences de fonctionnement en les<br />

plaçant dans un ‘pipeline»<br />

- Contrôler le formatage résultant des objets émis à la fin du<br />

«pipe»<br />

- Mettre en œuvre les séquences de fonctionnement en les<br />

plaçant dans un script<br />

- Mettre en œuvre le contrôle des flux à l’intérieur des scripts et<br />

définir les fonctions et les filtres pour permettre la modularisation<br />

des scripts complexes<br />

- Manipuler les fichiers et les valeurs de registre<br />

- Gérer les volumes de stockage des disques, les copies<br />

cachées, les dossiers partagés et Terminal Server à l’aide de<br />

WMI dans Windows PowerShell<br />

- Administrer et maintenir Active Directory à l’aide de Windows<br />

PowerShell<br />

- Maintenir les stratégies de groupe à l’aide de Windows<br />

PowerShell<br />

- Maintenir les services Web et les applications à l’aide de<br />

Windows PowerSehll<br />

Participants<br />

Administrateurs, Développeurs.<br />

Pré-requis<br />

Des connaissances de base dans l'administration de Windows<br />

2008 ainsi que sur WSH (cours MSEW) sont recommandées<br />

Contenu<br />

Introduction à PowerShell<br />

Installer PowerShell dans Windows Server 2008<br />

Vue d’ensemble de Windows PowerShell<br />

Vue d’ensemble des objets<br />

Travailler <strong>avec</strong> les Cmdlets<br />

“Complétion”, Alias et Historique<br />

Utiliser les variables et les types<br />

Assembler les processus <strong>avec</strong> un «pipe»Utiliser le «pipe»<br />

Utiliser les flèches<br />

Filtrer et itération à travers le «pipe»<br />

Renouveler les objets dans le «pipe»<br />

Gestion des process et formatage du résultat<br />

Présenter les informations <strong>avec</strong> un formatage spécifique<br />

Mise en œuvre des scripts powershell pour séquencer les<br />

opérations<br />

Ecrire des scripts PowerShell<br />

La sécurité dans Windows PowerShell<br />

Méthodologies des scripts<br />

Personnaliser Windows PowerShell <strong>avec</strong> les profils<br />

Mise en œuvre des contrôles de flux et des fonctions<br />

Contrôler le flux d’exécution dans les scripts<br />

Contrôler les flux des boucles<br />

Développer et utiliser les fonctions<br />

Gérer les données <strong>avec</strong> PowerShell<br />

Gérer les données <strong>avec</strong> Powershell<br />

166<br />

Gérer le registre et les certificats <strong>avec</strong> Powershell<br />

Filtrer et sélectionner <strong>avec</strong> des expressions régulières<br />

Gérer les journaux d’événements<br />

Importer et exporter des objets<br />

Gestion de Windows <strong>avec</strong> PowerShell et WMI<br />

Introduction aux objets WMI<br />

Gérer les disques à l’aide de Windows PowerShell et WMI<br />

Gérer les clichés instantanés à l’aide de PowerShell et WMI<br />

Gérer les dossiers partagés <strong>avec</strong> Windows PowerShell et WMI<br />

Configurer Terminal Server à l’aide de Windows PowerShell et<br />

WMI<br />

Administration de Active Directory <strong>avec</strong> Windows PowerShell<br />

Administrer les domaines et les forêts à l’aide des objets .net<br />

Gérer les comptes utilisateurs et les groupes à l’aide des objets<br />

COM<br />

Gérer les relations entre les utilisateurs et les groupes<br />

Administration des stratégies de groupe dans Windows<br />

PowerShell<br />

Gérer les GPOs à l’aide de l’interface GPMC COM<br />

Gérer les objets GPO<br />

Gérer les paramètres des stratégies de groupe<br />

Rapports de stratégies de groupe<br />

Gestion de Internet Information Services7.0<br />

Comparer IIS 7.0 et les interfaces de gestion PowerShell<br />

Administration IIS 7.0 <strong>avec</strong> Windows PowerShell


Exchange 2003 Server -<br />

Installation et<br />

Administration<br />

Durée 5 jours<br />

Objectifs<br />

Le nombre de systèmes de messagerie opérés <strong>avec</strong> Exchange<br />

n'a cessé de croître jusqu'à faire de cette plate-forme l'une des<br />

plus populaires. La rançon de ce succès rapide est un ensemble<br />

de demandes des responsables informatique pour plus de<br />

sécurité dans les systèmes Exchange, moins d'interdépendance<br />

<strong>avec</strong> l'annuaire Active Directory et plus de simplicité pour gérer la<br />

mobilité. Autant d'éléments adressés par la version 2003<br />

d'Exchange. Les administrateurs trouveront dans cette formation<br />

Exchange les éléments clés pour garantir un déploiement sans<br />

accroc et générer ainsi un retour sur investissements rapide.<br />

Cette formation Exchange vous permettra de:<br />

- Comprendre les spécificités de la version 2003 d'Exchange<br />

- Savoir mettre en place une messagerie d'<strong>entreprise</strong><br />

- Apprendre à gérer la mobilité des collaborateurs au travers d'un<br />

système de messagerie adapté<br />

- Comprendre comment piloter une transition sans heurts vers la<br />

nouvelle version<br />

Participants<br />

- Administrateurs messagerie<br />

- Supports messagerie<br />

Pré-requis<br />

Connaissance de Microsoft Windows Server 2003<br />

Connaissance réseau : TCP/IP, DNS et IIS<br />

Connaissance des protocoles Internet : POP3 ou IMAP4, SMTP,<br />

HTTP et NNTP<br />

Travaux pratiques<br />

Les différents exercices proposés lors de cette formation<br />

Exchange permettront aux participants d'acquérir une expérience<br />

concrète dans la mise en oeuvre et la gestion d'Exchange Server<br />

2003.<br />

Contenu<br />

Installer, mettre à jour Exchange<br />

Installer Exchange Server 2003<br />

Installer Exchange Server 2003 dans un environnement de<br />

clusters<br />

Installer et utiliser les outils et programmes de gestion<br />

d'Exchange<br />

Mettre à jour Exchange Server 2003 depuis Exchange 2000<br />

Configurer et gérer Exchange Server 2003<br />

Créer et appliquer des stratégies Exchange<br />

Configurer Exchange Server 2003 pour une gestion proactive<br />

Ajouter, supprimer et mettre à jour des serveurs Exchange<br />

Gérer Exchange Server 2003 dans un environnement mixte<br />

Sécuriser Exchange Server 2003<br />

Se préparer et se protéger des virus<br />

Sécuriser les boîtes aux lettres<br />

Mettre en oeuvre la signature digitale et les capacités de<br />

chiffrement<br />

Configurer les pare-feu<br />

Configurer des permissions administratives<br />

Autoriser à exécuter seulement les services Exchange Server<br />

2003<br />

Gérer des destinataires<br />

Présentation des destinataires Exchange<br />

Créer, supprimer et modifier des utilisateurs et des contacts<br />

Gérer les boîtes aux lettres<br />

Gérer les groupes Mail-Enabled<br />

Gérer des dossiers publics<br />

Gérer les données des dossiers publics<br />

167<br />

Gérer l'accès réseau aux dossiers publics<br />

Publier un formulaire Outlook 2003<br />

Gérer des listes d'adresses<br />

Présentation des listes d'adresses<br />

Gérer et personnaliser les listes d'adresses<br />

Mettre en oeuvre et gérer l'accès client <strong>avec</strong> des protocoles<br />

Internet<br />

Présentation des protocoles d'accès client Internet<br />

Mettre en oeuvre une topologie de serveurs "Front-End" et "Back-<br />

End"<br />

Mettre en oeuvre et gérer l'accès Outlook Web Access (OWA)<br />

Gérer la configuration client et la connectivité client<br />

Configurer et personnaliser Outlook 2003<br />

Exécuter des tâches de planification dans Outlook 2003<br />

Installer et configurer Outlook Express<br />

Gérer le routage<br />

Expliquer comment le routage de messages fonctionne dans une<br />

organisation Exchange<br />

Configurer le routage de messages dans une organisation<br />

Exchange<br />

Expliquer les concepts et protocoles de connectivité Internet<br />

Gérer la connectivité à Internet<br />

Gérer les PDA et la mobilité <strong>avec</strong> Exchange Server 2003<br />

Gérer des composants de mobilité Fournir un accès aux<br />

utilisateurs mobiles<br />

Gérer le stockage de données et des ressources matérielles<br />

Gérer le stockage de données<br />

Gérer l'espace disque<br />

Gérer les mises à jour matérielles<br />

Récupération des sinistres<br />

Prévoir les crash dans votre environnement Exchange<br />

Sauvegarder Exchange Server 2003<br />

Restaurer les "Stores" Exchange Server 2003<br />

Restaurer les serveurs Exchange Server 2003<br />

Réaliser une maintenance préventive<br />

Gérer des opérations quotidiennes<br />

Conduire une maintenance planifiée<br />

Réaliser une maintenance à la demande<br />

Migrer d'Exchange Server 5.5 vers Exchange Server 2003<br />

Alimenter Active Directory <strong>avec</strong> les comptes utilisateurs et de<br />

groupes<br />

Connecter l'annuaire d'Exchange 5.5 à ActiveDirectory<br />

Déplacer les contenus des boîtes aux lettres et des dossiers<br />

publics dans une organisation Exchange Server 2003


Exchange 2007 Server<br />

pour les administrateurs<br />

Exchange 2003<br />

Durée 3 jours<br />

Objectifs<br />

Comme toutes les nouvelles versions de solution serveur de<br />

Microsoft, Exchange Server 2007 ne déroge pas à la règle et<br />

fournit son lot de nouvelles fonctionnalités et d'avancées<br />

technologiques. Ainsi, cette solution tire pleinement partie des<br />

avantages offerts par les plates-formes 64 bits et apporte des<br />

dispositifs de sécurité accrus et une amélioration de la gestion du<br />

système.<br />

Cette formation Exchange 2007 s'adresse tout particulièrement<br />

aux administrateurs des versions précédentes soucieux d'aller<br />

directement à l'essentiel et de n'apprendre que les différences<br />

d'administration entre les deux versions. Vous pourrez ainsi<br />

envisager la migration en toute sérénité.<br />

Participants<br />

Administrateurs de Microsoft Exchange Server 2000 ou<br />

Exchange Server 2003<br />

Pré-requis<br />

Expérience dans l'administration de Exchange Server 2000 ou<br />

2003<br />

Contenu<br />

Présentation de Exchange Server 2007<br />

Nouvelles fonctionnalités dans Exchange Server 2007<br />

Présentation de l'architecture de déploiement Exchange Server<br />

2007<br />

Fonctionnalités abandonnées ou en voie d'abandon<br />

Déployer Exchange Server 2007<br />

Rôles de Exchange Server 2007<br />

Installer Exchange Server 2007<br />

Mise à jour vers Exchange Server 2007<br />

Préparer l'installation de Exchange Server 2007<br />

Vérifier l'installation de Exchange Server 2007<br />

Administrer Exchange Server 2007<br />

Vue d'ensemble des outils d'administration de Exchange Server<br />

2007<br />

Administrer les serveurs de boîtes aux lettres Exchange Server<br />

2007<br />

Gérer les objets destinataires dans Exchange Server 2007<br />

Gestion de groupe de stockage et les banques d'information<br />

Automatisation de la gestion des boîtes aux lettres <strong>avec</strong><br />

Exchange Management Schell<br />

Implémenter les services d'accès client dans Exchange<br />

Server 2007<br />

Implémenter le rôle de serveur d'accès client<br />

Implémenter des nouvelles fonctionnalités client dans Exchange<br />

Server 2007<br />

Implémenter Outlook Web Access<br />

Implémenter la messagerie mobile<br />

Configurer Autoconnect pour les serveurs redondants<br />

Configurer Outlook Anywhere et OWA<br />

Tester Autoconnect <strong>avec</strong> les serveurs redondants<br />

Gérer le routage de messages dans une organisation<br />

Exchange Server 2007<br />

Comprendre le routage de messages dans Exchange Server<br />

2007<br />

168<br />

Gérer le routage de messages<br />

Configurer les sites Active Directory<br />

Configurer le routage de messages entre les sites<br />

Tester le routage de messages entre les sites<br />

Sécuriser les messages <strong>avec</strong> Exchange Server 2007<br />

Implémenter le rôle de serveur Edge Transport<br />

Sécuriser les mails Internet <strong>avec</strong> Active Messaging Protection<br />

Implémenter la sécurité des messageries entre les organisations<br />

Implémenter un rôle de serveur Edge<br />

Configurer une sécurité de message Ad Hoc<br />

Configurer le filtrage anti spam<br />

Tester la sécurité de message<br />

Implémenter des stratégies de messagerie dans Exchange<br />

Server 2007<br />

Présentation des stratégies de messagerie Implémenter des<br />

règles de transport<br />

Implémenter une gestion d'enregistrements de messagerie<br />

Tester des stratégies de messagerie<br />

Haute disponibilité et récupération de sinistre dans Exchange<br />

Server 2007 Implémenter une haute disponibilité dans Exchange<br />

Server 2007<br />

Implémenter une récupération d'urgence dans Exchange Server<br />

2007<br />

Implémenter une récupération Dial-Tone<br />

Implémenter une réplication continue locale<br />

Implémenter une réplication continue clusterisée<br />

Implémenter une messagerie unifiée dans Exchange Server<br />

2007<br />

Présentation de la messagerie unifiée<br />

Implémenter une messagerie unifiée<br />

Implémenter un objet Dial Plan<br />

Implémenter un objet IP Gateway<br />

Implémenter un objet Hunt Group<br />

Activer la messagerie unifiée


Exchange 2007 :<br />

Administration<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Exchange Administration de 5 jours permettra<br />

aux participants d’installer et d’administrer un environnement<br />

Exchange Server 2007 sécurisé. Les participants apprendront<br />

également à gérer le courrier indésirable (SPAM), les anti-virus et<br />

le filtrage de contenu. Ils apprendront à installer et à configurer un<br />

serveur de passerelle ainsi que toutes les opérations de<br />

sauvegarde et restauration des données.<br />

Participants<br />

Toute personne en charge de l'administration d'un serveur<br />

Exchange Server 2007.<br />

Pré-requis<br />

Connaissances de Windows Server et Active Directory<br />

Connaissances génériques des technologies et protocoles<br />

réseaux et messagerie tels que TCP /IP, POP, IMAP, SMTP<br />

Contenu<br />

Présentation d’Exchange et de Active Directory<br />

Rappels sur Active Directory<br />

Présentation de l'intégration de Active Directory et d'Exchange<br />

Server 2007<br />

Installation du serveur Exchange 2007<br />

Présentation des différents rôles du serveur Exchange<br />

Installation du serveur<br />

Les différents rôles du serveur<br />

Mise en oeuvre d'un rôle particulier<br />

Création et administration d'un dossier public<br />

Administration des destinataires<br />

Gestion des boites aux lettres<br />

Gestion des autres destinataires<br />

Principes de base du stockage et de la gestion des dossiers<br />

public<br />

Gestion des boites aux lettres et des listes de diffusion<br />

Configuration des stratégies de destinataires<br />

Gestion des listes de diffusion<br />

Présentation du traitement de mails par lots de destinataires<br />

Configuration et gestion des accès client<br />

Présentation des différents modes d'accès<br />

Configurer le mode d'accès principal<br />

Mise en oeuvre d'OWA (Outlook Web Access)<br />

Prise en compte des clients mobiles (téléphones, PDA,...)<br />

Règles d'acheminement des messages<br />

Introduction et présentation des différents modes<br />

Implémentation d'une règle<br />

Surveillance et gestion du système<br />

Mise en oeuvre du système de gestion des changements<br />

Gestion des mises à jour du système<br />

Maintenance des systèmes antivirus et de lutte AntiSPAM <strong>avec</strong><br />

Exchange 2007<br />

Gérer les virus et lutte antispam.<br />

Implémentation des mesures de lutte antiSPAM<br />

Implémentation des mesures antivirus<br />

Maintenance des systèmes antivirus et de lutte contre le<br />

courrier indésirable<br />

Configuration des serveurs de transport Edge<br />

Déploiement des serveurs de transport Edge<br />

169<br />

Configuration de la remise de messages Internet<br />

Configuration de la sécurité pour la messagerie Internet<br />

ATELIER PRATIQUE<br />

Configuration des serveurs de transport Edge<br />

Configuration des connecteurs SMTP pour sécuriser la<br />

messagerie SMTP<br />

Implémentation de S/MIME (Secure/Multipurpose Internet Mail<br />

Extensions)<br />

Implémentation des stratégies de messagerie Exchange<br />

2007Présentation de la stratégie et de la conformité de la<br />

messagerie<br />

Implémentation de la gestion des enregistrements de messagerie<br />

Implémentation des règles de transport<br />

ATELIER PRATIQUE : IMPLEMENTATION DES STRATEGIES<br />

DE MESSAGERIE<br />

Configuration de la sécurité du domaine<br />

Sauvegarde Exchange 2007<br />

Principes de mise en oeuvre d'une solution haute disponibilité<br />

Mise en oeuvre d'une stratégie de sauvegarde<br />

Récupération de bases de données de messagerie<br />

Scénarios de récupération de bases de données<br />

Récupération d'une base de données de messagerie à l'aide de la<br />

récupération de tonalité<br />

ATELIER PRATIQUE : RECUPERATION DE BASES DE<br />

DONNEES DE MESSAGERIE DANS EXCHANGE SERVER 2007•<br />

Exécution d'une sauvegarde de groupe de stockage<br />

• Exécution d'une récupération de tonalité<br />

• Réparation d'une base de données endommagée<br />

Procédure de récupération suite à la défaillance d'un serveur<br />

de boîtes aux lettres<br />

Checklist en vue de la récupération d'un serveur de boîtes aux<br />

lettres<br />

Récupération des serveurs de boîtes aux lettres<br />

ATELIER PRATIQUE : PROCEDURE DE RECUPERATION<br />

SUITE à LA DEFAILLANCE D'UN SERVEUR DE BOITES AUX<br />

LETTRES<br />

Exécution d'une sauvegarde du serveur de boîtes aux lettres<br />

Récupération d'un serveur de boîtes aux lettres<br />

Récupération des données du serveur de boîtes aux lettres<br />

Procédure de récupération suite à la défaillance d'un serveur<br />

Exchange n'ayant pas le rôle d'un serveur de boîtes aux lettres<br />

Checklist en vue de la récupération d'un serveur n'ayant pas le<br />

rôle de serveur de boîtes aux lettres<br />

Récupération de serveurs n'ayant pas un rôle de serveur de boîtes<br />

aux lettres<br />

ATELIER PRATIQUE : PROCEDURE DE RECUPERATION<br />

SUITE à LA DEFAILLANCE D'UN SERVEUR N'AYANT PAS LE<br />

ROLE D'UN SERVEUR DE BOITES AUX LETTRES<br />

Exécution d'une sauvegarde d'un serveur autre qu'un serveur de<br />

boîtes aux lettres<br />

Restauration d'un certificat de serveur d'accès au client<br />

Restauration d'un serveur de transport Hub<br />

Restauration d'un serveur de transport


Exchange Server 2007<br />

:Sécurité<br />

Durée 1 jour<br />

Objectifs<br />

Cette formation Sécurité Exchange 2007 permet aux spécialistes<br />

de la messagerie d'acquérir les connaissances et les<br />

compétences nécessaires pour gérer la sécurité au quotidien de<br />

la messagerie d’<strong>entreprise</strong>.<br />

Les participants apprendront également à gérer le courrier<br />

indésirable (SPAM), les antivirus et le filtrage de contenu. Enfin,<br />

ils apprendront à installer et à configurer un serveur de<br />

passerelle.<br />

Participants<br />

Administrateurs, informaticiens et personnes chargées du support<br />

technique d'exchange<br />

Pré-requis<br />

Avoir suivi la formation EXI: "Exchange Server 2007 - Introduction<br />

à l'installation et à la gestion de l'environnement" ou<br />

connaissances équivalentes.<br />

Bénéficier d'une expérience dans l'administration de serveurs de<br />

messagerie est un plus pour suivre cette formation avancée<br />

Travaux pratiques<br />

De Nombreux travaux pratiques<br />

Contenu<br />

Maintenance des systèmes antivirus et de lutte AntiSPAM<br />

Gérer les virus et lutte antispam.<br />

Implémentation des mesures de lutte antiSPAM<br />

Implémentation des mesures antivirus<br />

Atelier pratique<br />

Maintenance des systèmes antivirus et de lutte contre le<br />

courrier indésirable<br />

Configuration des serveurs de transport Edge<br />

Déploiement des serveurs de transport Edge<br />

Configuration de la remise de messages Internet<br />

Configuration de la sécurité pour la messagerie Internet<br />

Atelier pratique Configuration des serveurs de transport Edge<br />

Configuration des connecteurs SMTP pour sécuriser la<br />

messagerie SMTP<br />

Implémentation de S/MIME (Secure/Multipurpose Internet Mail<br />

Extensions)<br />

Implémentation des stratégies de messagerie<br />

Présentation de la stratégie et de la conformité de la messagerie<br />

Implémentation de la gestion des enregistrements de messagerie<br />

Implémentation des règles de transport<br />

Atelier pratique : Implémentation des stratégies de Messagerie<br />

Configuration de la sécurité du domaine<br />

170


Exchange Server 2007<br />

:Sauvegarde et<br />

Restauration<br />

Durée 1 jour<br />

Objectifs<br />

À la fin de cette formation, les participants seront à même<br />

d'effectuer les tâches suivantes :<br />

récupérer des bases de données de messagerie<br />

effectuer la procédure de récupération suite à la défaillance d'un<br />

serveur de boîtes aux lettres<br />

effectuer la procédure de récupération suite à la défaillance d'un<br />

serveur n'ayant pas le rôle d'un serveur de boîtes aux lettres.<br />

Participants<br />

Administrateur Exchange Server 2007 ou des versions<br />

précédentes d'Exchange Server.<br />

Pré-requis<br />

Ce cours s'adresse aux personnes ayant une expérience<br />

d'Exchange Server 2007 ou des versions précédentes<br />

d'Exchange Server. Ils doivent également posséder les<br />

compétences liées à l'installation et la configuration d'Exchange<br />

Server, la configuration de destinataires et de boîtes aux lettres et<br />

la prise en charge des clients Exchange Server. Les stagiaires<br />

suivant ce cours doivent avoir de l'expérience dans le domaine de<br />

l'administration réseau ou de l'administration Windows Server<br />

2003<br />

Contenu<br />

Récupération de bases de données de messagerie<br />

Scénarios de récupération de bases de données<br />

Récupération d'une base de données de messagerie à l'aide de<br />

la récupération de tonalité<br />

Atelier pratique : Récupération de bases de données de<br />

messagerie dans Exchange Server 2007• Exécution d'une<br />

sauvegarde de groupe de stockage<br />

• Exécution d'une récupération de tonalité<br />

• Réparation d'une base de données endommagée<br />

Procédure de récupération suite à la défaillance d'un serveur<br />

de boîtes aux lettres<br />

Checklist en vue de la récupération d'un serveur de boîtes aux<br />

lettres<br />

Récupération des serveurs de boîtes aux lettres<br />

Atelier pratique : Procédure de récupération suite à la défaillance<br />

d'un serveur de boites aux lettres<br />

Exécution d'une sauvegarde du serveur de boîtes aux lettres<br />

Récupération d'un serveur de boîtes aux lettres<br />

Récupération des données du serveur de boîtes aux lettres<br />

Procédure de récupération suite à la défaillance d'un serveur<br />

n'ayant pas le rôle d'un serveur de boîtes aux lettres<br />

Checklist en vue de la récupération d'un serveur n'ayant pas le<br />

rôle de serveur de boîtes aux lettres<br />

Récupération de serveurs n'ayant pas un rôle de serveur de<br />

boîtes aux lettres<br />

Atelier pratique : Procédure de récupération suite à la défaillance<br />

d'un serveur n'ayant pas le rôle d'un serveur de boites aux lettres•<br />

Exécution d'une sauvegarde d'un serveur autre qu'un serveur de<br />

boîtes aux lettres<br />

• Restauration d'un certificat de serveur d'accès au client<br />

• Restauration d'un serveur de transport Hub<br />

• Restauration d'un serveur de transport<br />

171


Windows 2003 Server,<br />

Administration<br />

Durée 5 jours<br />

Objectifs<br />

À la fin de ce cours, les participants seront à même d'effectuer les<br />

tâches suivantes :<br />

Créer et compléter les unités d'organisation <strong>avec</strong> les comptes<br />

d'utilisateurs et les comptes d'ordinateurs.<br />

Administrer les comptes d'utilisateurs et les comptes<br />

d'ordinateurs.<br />

Créer et administrer les groupes.<br />

Administrer l'accès aux ressources.<br />

Implémenter l'impression.<br />

Administrer l'impression.<br />

Administrer l'accès aux objets au moyen d'unités d'organisation.<br />

Implémenter une stratégie de groupe.<br />

Administrer l'environnement utilisateur et ordinateur au moyen<br />

d'une stratégie de groupe.<br />

Auditer les comptes et les ressources.<br />

Participants<br />

Informaticiens administrateurs ou ingénieurs système ayant à<br />

installer, administrer et maintenir un poste de travail sous<br />

Windows 2003. Personnes ayant à faire du support de premier<br />

niveau aux utilisateurs<br />

Pré-requis<br />

Connaissances générales en informatique. Connaissance des<br />

bases de l'administration Windows en général et avoir des<br />

notions de base sur les réseaux<br />

Contenu<br />

Présentation de l'administration des comptes et des<br />

ressources<br />

Présentation multimédia : Administration d'un environnement<br />

Microsoft Windows Server 2003<br />

L'environnement Windows Server 2003<br />

Ouverture de session sur Windows Server 2003<br />

Installation et configuration des outils d'administration<br />

Création d'une unité d'organisation<br />

Déplacement des objets de domaine<br />

Administration des comptes d'utilisateurs et des comptes<br />

d'ordinateurs<br />

Création de comptes d'utilisateurs<br />

Création de comptes d'ordinateurs<br />

Modification des propriétés des comptes d'utilisateurs et<br />

d'ordinateurs<br />

Création d'un modèle de compte d'utilisateur<br />

Activation et déverrouillage des comptes d'utilisateurs et<br />

d'ordinateurs<br />

Réinitialisation des comptes d'utilisateurs et des comptes<br />

d'ordinateurs<br />

Recherche de comptes d'utilisateurs et de comptes d'ordinateurs<br />

dans Active Directory<br />

Enregistrement des requêtes<br />

Administration des groupes<br />

Création de groupes<br />

Gestion de l'appartenance à un groupe<br />

Stratégies d'utilisation de groupes<br />

Modification des groupes<br />

Utilisation des groupes par défaut<br />

Recommandations relatives à l'administration des groupes<br />

172<br />

Administration des accès aux ressources<br />

Vue d'ensemble de l'administration des accès aux ressources<br />

Administration des accès aux dossiers partagés<br />

Administration des accès aux fichiers et aux dossiers en utilisant<br />

des autorisations NTFS<br />

Identification des autorisations effectives<br />

Administration des accès aux dossiers partagés en utilisant la mise<br />

en cache hors connexion<br />

Implémentation de l'impression<br />

Présentation multimédia : Présentation de l'impression dans la<br />

famille Windows Server 2003<br />

Installation et partage d'imprimantes<br />

Administration des accès aux imprimantes à l'aide d'autorisations<br />

d'imprimantes partagées<br />

Gestion des pilotes d'imprimantes<br />

Implémentation d'emplacements d'imprimantes<br />

Administration de l'impression<br />

Changement de l'emplacement du spouleur d'impression<br />

Définition des priorités d'imprimantes<br />

Planification de la disponibilité des imprimantes<br />

Configuration d'un pool d'impression<br />

Administration des accès aux objets dans les unités<br />

d'organisation<br />

Présentation multimédia : Structure des unités d'organisation<br />

Modification des autorisations sur les objets Active Directory<br />

Délégation du contrôle des unités d'organisation<br />

Implémentation d'une stratégie de groupe<br />

Présentation multimédia : Introduction aux stratégies de groupe<br />

Implémentation d'objets de stratégie de groupe<br />

Implémentation d'objets de stratégie de groupe dans un domaine<br />

Administration du déploiement d'une stratégie de groupe<br />

Administration de l'environnement utilisateur au moyen de la<br />

stratégie de groupe<br />

Configuration de paramètres de stratégie de groupe<br />

Attribution de scripts <strong>avec</strong> la stratégie de groupe<br />

Configuration de la redirection de dossiers<br />

Détermination des objets de stratégie de groupe appliqués<br />

Implémentation de modèles d'administration et d'une stratégie<br />

d'audit<br />

Vue d'ensemble de la sécurité dans Windows Server 2003<br />

Utilisation de modèles de sécurité pour protéger les ordinateurs<br />

Test de la stratégie de sécurité des ordinateurs<br />

Configuration de l'audit<br />

Gestion des journaux de sécurité


Windows 2003 Server,<br />

Administration<br />

perfectionnement<br />

Durée 3 jours<br />

Objectifs<br />

À la fin de ce cours, les participants seront à même d'effectuer les<br />

tâches suivantes:<br />

Préparer la gestion des ressources d'un serveur.<br />

Configurer un serveur afin d'analyser les performances du<br />

système.<br />

Analyser les performances du système.<br />

Gérer les pilotes de périphériques en configurant leur signature et<br />

en les restaurant.<br />

Gérer les disques durs.<br />

Gérer le stockage des données.<br />

Gérer la récupération en cas d'urgence.<br />

Effectuer la maintenance du logiciel à l'aide des services<br />

Microsoft SUS (Software Update Services).<br />

Participants<br />

Ce cours est destiné aux administrateurs système ou ingénieurs<br />

système ;<br />

Pré-requis<br />

Pour suivre ce cours, les participants doivent avoir suivi le cours<br />

Windows 2003 Server, Installation et Administration » ou disposer<br />

de connaissances équivalentes<br />

Contenu<br />

Préparation de l'administration d'un serveur<br />

Administration d'un serveur<br />

Configuration de la fonction Bureau à distance pour administrer<br />

un serveur<br />

Gestion des connexions de bureau à distance<br />

Préparation de l'analyse des performances du serveur<br />

Présentation de l'analyse des performances du serveur<br />

Analyse en temps réel et programmée<br />

Configuration et gestion des journaux de compteur<br />

Configuration des alertes<br />

Analyse des performances du serveur<br />

Analyse de la mémoire du serveur<br />

Analyse de l'utilisation du processeur<br />

Analyse des disques<br />

Analyse de l'utilisation du réseau<br />

Maintenance des pilotes de périphériques<br />

Configuration des options de signature des pilotes de<br />

périphériques<br />

Utilisation de la version précédente d'un pilote de périphérique<br />

Gestion des disques<br />

Préparation des disques<br />

Gestion des propriétés d'un disque Gestion des lecteurs montés<br />

Conversion de disques<br />

Création de volumes<br />

Importation d'un disque étranger<br />

Gestion du stockage des données<br />

Gestion de la compression des fichiers<br />

Configuration du cryptage des fichiers<br />

Implémentation des quotas de disque<br />

Gestion de la récupération en cas d'urgence<br />

173<br />

Préparation de la récupération en cas d'urgence<br />

Sauvegarde des données<br />

Planification des opérations de sauvegarde<br />

Restauration des données<br />

Récupération suite à une défaillance du serveur<br />

Choix d'une méthode de récupération en cas d'urgence<br />

Maintenance des logiciels à l'aide des services Microsoft SUS<br />

Présentation des services SUS<br />

Installation et configuration des services SUS<br />

Gestion d'une infrastructure de services SUS


ISA Server 2006 - Mise en<br />

oeuvre<br />

Durée 4 jours<br />

Objectifs<br />

Déjà redoutablement efficace dans sa version 2004, ISA Server a<br />

encore franchi un cap <strong>avec</strong> son millésime 2006. Non seulement la<br />

solution offre encore plus de flexibilité afin de répondre aux<br />

besoins croissants des <strong>entreprise</strong>s en matière de sécurité d'accès<br />

vers et depuis Internet, mais en plus elle apporte davantage de<br />

simplicité, tant pour les utilisateurs que pour les administrateurs.<br />

Les participants à cette formation sauront tirer le meilleur parti<br />

d'ISA Server 2006.<br />

Cette formation ISA vous permettra de:<br />

- Savoir configurer un pare-feu de façon fiable et irréprochable<br />

- Apprendre à intégrer le pare-feu et la messagerie<br />

- Comprendre comment définir une solution d'accès à Internet<br />

efficace<br />

- Être à même d'intégrer le pare-feu et le VPN dans le cadre<br />

d'une solution de mobilité sécurisée<br />

- Savoir économiser la bande passante grâce au pare-feu<br />

Participants<br />

- Responsables de la sécurité du réseau<br />

- Administrateurs systèmes et réseaux<br />

- Toute personne en charge de protéger son organisation lors du<br />

raccordement à Internet<br />

Pré-requis<br />

Connaissances en administration du système Windows Server<br />

2003<br />

Travaux pratiques<br />

Les exercices proposés pendant ces 4 jours de formation<br />

fourniront aux participants les compétences nécessaires à la mise<br />

en oeuvre d'ISA Server 2006 :<br />

- Prise en main de l'interface d'administration<br />

- Configuration d'ISA Server 2006<br />

- Gestion des accès aux ressources Internet<br />

- Configuration des accès aux ressources internes<br />

- Publication d'une ferme de serveurs Web<br />

- Intégration d'ISA Server <strong>avec</strong> Exchange Server<br />

- Configuration de la quarantaine<br />

- Configuration des paramètres Diffsrv - Configuration de<br />

l'équilibrage de charge réseau<br />

Contenu<br />

Présentation de Microsoft ISA Server 2006<br />

Exploration de l'interface d'ISA Server 2006<br />

Introduction : la gestion des réseaux dans ISA Server 2006<br />

Introduction : les bases des règles dans ISA Server 2006<br />

Introduction : le tableau de bord de surveillance<br />

Installation d'ISA Server 2006<br />

Les différents types de clients<br />

Activer les accès à Internet<br />

Autoriser les accès Web à Internet<br />

Configurer la stratégie système<br />

Autoriser les accès à Internet<br />

174<br />

Configurer les différents types d'authentification<br />

Configurer ISA Server 2006 pour la résistance à la saturation<br />

Configurer des accès aux ressources internes<br />

Introduction à la publication Web et de serveurs<br />

Configurer la publication Web sur un réseau interne<br />

Configurer la publication Web sur le serveur ISA<br />

Configurer la traduction de lien sur un site web publié<br />

Configurer la traduction de lien inter-site pour publier un serveur<br />

SharePoint<br />

Publier une ferme Web pour l'équilibrage de charge réseau<br />

Publier plusieurs serveurs Terminal Server<br />

Configurer les alertes d'ISA Server 2006<br />

Intégrer ISA Server <strong>avec</strong> Microsoft Exchange Server<br />

Publier un serveur Web Access (gestion des certificats)<br />

Configurer ISA Server pour sécuriser le trafic SMTP et POP<br />

Configurer ISA Server pour sécuriser les connexions clients (RPC)<br />

Publier un serveur Exchange pour RPC sur HTTP<br />

Configurer des réseaux privés virtuels (VPN)<br />

Présentation de réseaux privés virtuels<br />

Configurer des VPN pour les clients distants<br />

Configurer des VPN pour les sites distants<br />

Configurer ISA 2006 pour la mise en quarantaine des VPN<br />

Créer et gérer un profil de gestion de connexion (CMAK)<br />

Configurer la quarantaine sur les postes clients<br />

ISA Server 2006 comme passerelle d'agence<br />

Configurer la compression HTTP pour réduire la bande passante<br />

Configurer ISA Server pour mettre en cache le contenu BITS<br />

Configurer les paramètres Diffsrv pour prioriser le trafic réseau<br />

Gérer les serveurs ISA 2006 Edition Entreprise<br />

Présentation et planification de ISA Server 2004 Edition Entreprise<br />

Configuration des stratégies d'<strong>entreprise</strong> et des stratégies de<br />

groupe<br />

Configurer l'administration distante et gérer les rôles administratifs<br />

Travailler <strong>avec</strong> les serveurs de stockage de configuration (CSS)<br />

Configurer l'équilibrage de charge réseau<br />

Configurer l'équilibrage de charge réseau (NLB)<br />

Comprendre les détails du NLB<br />

Configurer CARP pour distribuer le contenu en cache<br />

Utiliser CARP et les téléchargements planifiés<br />

Surveiller ISA Server 2006<br />

Vue d'ensemble<br />

Surveillance d'ISA Server 2006<br />

Vérification de la connectivité depuis ISA Server 2006<br />

Journaliser les accès clients<br />

Configuration des rapports


Sécurité réseaux sous<br />

Windows 2003<br />

Durée 5 jours<br />

Objectifs<br />

Windows Server 2003 et la plate-forme système de Microsoft<br />

intègrent une panoplie très élaborée d'outils de sécurité. Que ce<br />

soit pour valider l'identité des collaborateurs <strong>avec</strong> les autorités de<br />

certification et les cartes à puces, pour protéger le trafic réseau<br />

<strong>avec</strong> le pare-feu ISA Server et la solution standard de chiffrement<br />

IPSec ou pour maintenir l'ensemble des ordinateurs à jour des<br />

correctifs de sécurité <strong>avec</strong> SUS. Les participants à cette formation<br />

apprendront à sécuriser un réseau basé sur Windows Server<br />

2003 en sachant combiner intelligemment les briques sécurité de<br />

l'offre Microsoft.<br />

5 Jours pour<br />

Appréhender globalement le système d'authentification des<br />

utilisateurs du simple logon jusqu'aux smart cards et autorités de<br />

certification associées<br />

Définir et mettre en place des standards de configuration<br />

sécurisés pour chaque type de serveurs et pour le poste<br />

utilisateur incluant le chiffrement des données locales <strong>avec</strong> EFS<br />

Savoir mettre en place une gestion des correctifs de sécurité<br />

adaptée et solide <strong>avec</strong> SUS<br />

Apprendre à contrôler globalement la sécurité du trafic réseau<br />

incluant les accès sans-fil et distants, les échanges locaux et le<br />

système de pare-feu<br />

Participants<br />

Responsables exploitation<br />

Responsables systèmes<br />

Administrateurs<br />

Pré-requis<br />

Expérience dans l'implémentation d'un environnement Windows<br />

2000 ou Windows Server 2003 Active Directory<br />

Une expérience des ressources organisationnelles telles que le<br />

Web, FTP et les serveurs Exchange, des ressources partagées et<br />

services réseaux tels que DHCP, DNS et WINS serait une aide<br />

Contenu<br />

Planifier et configurer une stratégie d'autorisation et<br />

d'authentification<br />

Vue d'ensemble<br />

Groupes et stratégie de groupes de base dans Windows Server<br />

2003<br />

Créer des relations d'approbation dans Windows Server 2003<br />

Planifier, mettre en oeuvre et maintenir une stratégie<br />

d'autorisation en utilisant des groupes<br />

Composants d'un modèle d'authentification<br />

Planifier et mettre en oeuvre une stratégie d'authentification<br />

Installer, configurer et gérer des autorités de certification<br />

Vue d'ensemble<br />

Présentation des PKI et des autorités de certification<br />

Installer une autorité de certification<br />

Gérer une autorité de certification<br />

Sauvegarder et restaurer une autorité de certification<br />

Configurer, déployer et gérer des certificats<br />

Vue d'ensemble<br />

Configurer des modèles de certificat<br />

Déployer et révoquer des certificats d'utilisateur et d'ordinateur<br />

Gérer des certificats<br />

Planifier, mettre en oeuvre et dépanner des certificats de<br />

carte à puce<br />

Vue d'ensemble<br />

Présentation de l'authentification multi facteurs<br />

Planifier et mettre en oeuvre une infrastructure de carte à puce<br />

Gérer et dépanner une infrastructure de carte à puce<br />

Mettre en oeuvre des cartes à puce<br />

Planifier, mettre en oeuvre et dépanner un système de<br />

fichiers de chiffrement<br />

Vue d'ensemble<br />

175<br />

Présentation de EFS<br />

Mettre en oeuvre EFS dans un environnement Microsoft Windows<br />

XP autonome<br />

Planifier et mettre en oeuvre EFS dans un environnement de<br />

domaine <strong>avec</strong> une PKI<br />

Mettre en oeuvre un partage de fichiers EFS<br />

Dépanner EFS Planifier, configurer et déployer une "Baseline" de<br />

serveur membre sécurisée<br />

Vue d'ensemble<br />

Vue d'ensemble de la "Baseline" de serveur membre<br />

Planifier une "Baseline" de serveur membre sécurisée<br />

Configurer des paramètres de sécurité additionnels<br />

Déployer des modèles de sécurité<br />

Planifier, configurer et mettre en oeuvre des "Baselines"<br />

sécurisées pour des rôles de serveurs<br />

Vue d'ensemble<br />

Planifier et configurer une "Baseline" sécurisée pour des<br />

contrôleurs de domaine<br />

Planifier et configurer une "Baseline" sécurisée pour des serveurs<br />

DNS<br />

Planifier et configurer une "Baseline" sécurisée pour des serveurs<br />

d'infrastructure<br />

Planifier une "Baseline" sécurisée pour des serveurs de fichier et<br />

d'imprimante<br />

Planifier et configurer une "Baseline" sécurisée pour des serveurs<br />

IIS<br />

Planifier, configurer, mettre en oeuvre et déployer une<br />

"Baseline" d'ordinateur client sécurisée<br />

Vue d'ensemble<br />

Planifier et mettre en oeuvre une "Baseline" d'ordinateur client<br />

sécurisée<br />

Configurer et déployer une "Baseline" d'ordinateur client<br />

Planifier et mettre en oeuvre une stratégie de restriction logicielle<br />

Mettre en oeuvre la sécurité pour les clients mobiles<br />

Planifier et mettre en oeuvre des services de mises à jour<br />

logicielles<br />

Vue d'ensemble<br />

Présentation des services de mises à jour logicielles et de la<br />

gestion de mises à jour<br />

Planifier une stratégie de gestion de mises à jour<br />

Mettre en oeuvre une infrastructure SUS<br />

Installer, configurer et maintenir une infrastructure de gestion de<br />

mises à jour<br />

Planifier, déployer et dépanner une sécurité de transmission<br />

de données<br />

Vue d'ensemble<br />

Méthodes de transmission de données sécurisée<br />

Présentation de IPSec<br />

Planifier une sécurité de transmission de données<br />

Mettre en oeuvre des méthodes de transmission de données<br />

sécurisées<br />

Dépanner des communications IPSec<br />

Planifier et mettre en oeuvre une sécurité pour les réseaux<br />

sans-fil<br />

Vue d'ensemble<br />

Présentation des réseaux sans-fil sécurisés<br />

Mettre en oeuvre une authentification 802.1x<br />

Planifier une stratégie WLAN sécurisée<br />

Mettre en oeuvre un WLAN sécurisé<br />

Dépanner des réseaux sans-fil<br />

Planifier et mettre en oeuvre une quarantaine d'accès réseau<br />

Mettre en oeuvre une solution VPN sécurisée sécurité de<br />

périmètre <strong>avec</strong> une sécurité Internet et Acceleration Server<br />

2000<br />

Vue d'ensemble<br />

Présentation de la sécurité Internet et Acceleration Server 2000<br />

Installer ISA Server 2000<br />

Sécuriser un réseau de périmètre <strong>avec</strong> ISA Server 2000<br />

Publier des serveurs sur un réseau de périmètre<br />

Sécuriser des ordinateurs ISA Server<br />

Mettre en oeuvre une sécurité de réseau de périmètre en utilisant<br />

ISA Server 2000<br />

Sécuriser un accès à distance<br />

Vue d'ensemble<br />

Présentation des technologies et vulnérabilités d'un accès à<br />

distance<br />

Planifier une stratégie d'accès à distance<br />

Déployer des composants de contrôle de


Windows XP Professionnel<br />

Installation et<br />

Administration<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Windows XP, vous apportera toutes les<br />

connaissances indispensables pour mettre en œuvre et intégrer<br />

Windows XP Professionnel en environnement réseau. A l'issue de<br />

cette formation, vous comprendrez le fonctionnement de Windows<br />

XP et vous saurez non seulement l'utiliser, mais aussi l’installer,<br />

le déployer et l’administrer.<br />

Participants<br />

Informaticiens administrateurs ou ingénieurs système ayant à<br />

installer, administrer et maintenir un poste de travail sous<br />

Windows XP/ Professionnel. Personnes ayant à faire du support<br />

de premier niveau aux utilisateurs.<br />

Pré-requis<br />

Connaissances générales en informatique. Connaissance de<br />

l'utilisation d'un système fenêtré de type Windows.<br />

Travaux pratiques<br />

Au cours de cette formation windows XP, vous apprendrez à<br />

utiliser l'environnement Windows XP Professionnel. Vous<br />

découvrirez les fonctionnalités en environnement réseau et<br />

apprendrez les éléments de paramétrage de base. Les exercices<br />

alterneront <strong>avec</strong> le cours de manière à fournir une illustration<br />

concrète des thèmes étudiés.<br />

Contenu<br />

Installer Windows XP Professionnel<br />

Planification d'une installation de Microsoft Windows XP<br />

Professionnel<br />

Installation de Windows XP Professionnel<br />

Mise à niveau vers Windows XP Professionnel<br />

Transfert des paramètres et des fichiers utilisateurs à l'aide de<br />

l'outil USMT<br />

Exécution de tâches après l'installation<br />

Automatiser l'installation de Windows XP Professionnel<br />

Présentation de l'automatisation d'une installation de Windows XP<br />

Professionnel<br />

Création de fichiers de réponses<br />

Création d'un fichier UDF<br />

Exécution d'une installation automatisée de Windows XP<br />

Professionnel<br />

Présentation de la création et du déploiement d'une image<br />

Préparation d'un ordinateur de référence<br />

Création, test et déploiement d'une image<br />

Gestion des paramètres de sécurité à l'aide du centre de sécurité<br />

Configurer le matériel sur un ordinateur exécutant Windows<br />

XP Professionnel<br />

Installation et configuration de périphériques matériels<br />

Utilisation des pilotes<br />

Résolution des problèmes liés aux périphériques matériels<br />

Gérer les disques <strong>avec</strong> Windows XP<br />

Utilisation de l'outil gestion des disques<br />

Utilisation des disques de base<br />

Utilisation des disques dynamiques<br />

Préparation des disques lors d'une mise à niveau vers Windows<br />

XP Professionnel<br />

176<br />

Gestion des disques<br />

Défragmentation des volumes<br />

Configurer et gérer les systèmes de fichiers sous Windows<br />

XP<br />

Utilisation des systèmes de fichiers<br />

Gestion de la compression des données<br />

Sécurisation de données à l'aide du système EFS<br />

Résoudre les problèmes liés au processus de démarrage et<br />

au système Windows XP<br />

Contrôle des paramètres système au cours du processus de<br />

démarrage<br />

Modification du comportement de démarrage à l'aide du fichier<br />

Boot.ini<br />

Utilisation des options de démarrage avancées pour résoudre les<br />

problèmes de démarrage<br />

Utilisation de la console de récupération pour démarrer l'ordinateur<br />

Restauration d'un ordinateur à un état antérieur<br />

Configurer l'adressage et la résolution de noms TCP/IP<br />

Configuration des adresses IP<br />

Configuration du pare-feu Windows<br />

Résolution des problèmes liés aux adresses IP<br />

Détermination des méthodes de résolution de noms TCP;IP<br />

Configuration d'un client DNS et WINS<br />

Connexion à un hôte distant<br />

Configurer l'environnement du bureau XP<br />

Configuration des paramètres du bureau de l'utilisateur<br />

Personnalisation de l'environnement du bureau<br />

Configuration des paramètres système<br />

Influence des profils utilisateurs et des stratégies de groupes sur la<br />

personnalisation du bureau<br />

Utilisation de l'assistance à distance<br />

Configurer Internet Explorer<br />

Configuration de la sécurité d'Internet Explorer<br />

Configuration de la confidentialité d'Internet Explorer<br />

Configuration des paramètres de connexion d'Internet Explorer<br />

Configurer Windows XP Professionnel pour une utilisation<br />

sur les réseaux Microsoft<br />

Examen des groupes de travail et des comptes d'utilisateurs<br />

Création et authentification de comptes d'utilisateurs locaux<br />

Configuration de la sécurité locale<br />

Configuration des options de gestion de réseau dans un groupe de<br />

travail<br />

Utilisation dans un domaine<br />

Prendre en charge les utilisateurs distants<br />

Établissement de connexions d'accès à distance<br />

Connexion aux réseaux privés virtuels<br />

Configuration des protocoles d'authentification et du cryptage<br />

Utilisation du bureau à distance<br />

Enregistrement des noms et mots de passe utilisateurs pour<br />

faciliter les connexions à distance<br />

Configurer Windows XP Professionnel pour l'informatique<br />

mobile<br />

Configuration des options de gestion de l'alimentation pour<br />

l'informatique mobile<br />

Mise à disposition des fichiers, dossiers et pages Web pour une<br />

utilisation hors connexion<br />

Surveiller les ressources et les performances<br />

Utilisation du gestionnaire des tâches pour surveiller les<br />

performances du système<br />

Utilisation des outils performances et maintenance pour améliorer<br />

les performances<br />

Surveillance des journaux d'évènements<br />

Configuration de la compatibilité des applications


Windows XP Support<br />

Technique<br />

Aspect OS<br />

Durée 3 jours<br />

Objectifs<br />

À la fin de cette formation Windows XP, les participants seront à<br />

même d'effectuer les tâches suivantes :<br />

- personnaliser le Bureau, le menu Démarrer et la barre des<br />

tâches, et basculer d'un affichage à un autre dans le Panneau de<br />

configuration ;<br />

- assister les utilisateurs dans un environnement de support<br />

technique pour la résolution des problèmes liés au poste de<br />

travail ;<br />

- identifier et résoudre les problèmes liés à la gestion du poste de<br />

travail ;<br />

- identifier et résoudre les problèmes liés à la connectivité<br />

réseau ;<br />

- identifier et résoudre les problèmes liés au matériel ;<br />

- identifier et résoudre les problèmes liés aux fichiers et aux<br />

dossiers ;<br />

- identifier et résoudre les problèmes liés aux imprimantes ;<br />

- identifier et résoudre les problèmes liés à l'installation.<br />

Participants<br />

Les participants ont une expérience de Microsoft Office et<br />

possèdent des compétences de base dans l'utilisation de<br />

Microsoft Windows. Ce cours s'adresse également aux<br />

techniciens des centres d'appels qui ont une expérience de 6<br />

mois et souhaitent valider leurs compétences dans le domaine du<br />

support technique.<br />

Pré-requis<br />

Pour suivre ce cours, les participants doivent disposer des<br />

connaissances suivantes :<br />

- Utilisation de base d'un système d'exploitation Microsoft<br />

Windows tel que Microsoft Windows XP<br />

- Connaissances de base des applications Microsoft Office et des<br />

accessoires Microsoft Windows, y compris Internet Explorer<br />

- Connaissances de base des principales technologies du<br />

système d'exploitation, y compris l'installation et la configuration<br />

- Connaissances de base des composants matériels et de leurs<br />

fonctions<br />

- Connaissances de base des principaux composants du Bureau,<br />

ainsi que des interfaces et de leurs fonctions<br />

- Connaissances de base des paramètres du protocole TCP/IP<br />

(Transmission Control Protocol/Internet Protocol)<br />

- Utilisation des utilitaires de ligne de commande pour gérer le<br />

système d'exploitation.<br />

- Connaissances de base des technologies disponibles pour<br />

établir la connectivité à Internet.<br />

Contenu<br />

Présentation de l'environnement et du rôle du technicien DST<br />

Présentation du rôle du technicien DST<br />

Présentation de l'environnement de support technique pour la<br />

résolution des problèmes liés au poste de travail<br />

Communication <strong>avec</strong> les utilisateurs<br />

Présentation et configuration de l'interface utilisateur<br />

Windows XP<br />

Présentation et configuration de l'environnement du Bureau<br />

Windows XP<br />

Présentation des différents affichages du Panneau de<br />

configuration<br />

Résolution des problèmes liés à la gestion du poste de<br />

travail<br />

Concepts de gestion du poste de travail<br />

Résolution des problèmes liés à l'ouverture de session des<br />

utilisateurs<br />

Résolution des problèmes liés à la configuration des utilisateurs<br />

Résolution des problèmes liés à la sécurité<br />

Résolution des problèmes liés aux performances système<br />

177<br />

Résolution des problèmes liés à la connectivité réseau<br />

Gestion des problèmes d'adressage d'ordinateur<br />

Résolution des problèmes liés à la résolution de noms<br />

Résolution des problèmes liés à la connectivité réseau à distance<br />

Résolution des problèmes liés au matériel<br />

Gestion des pilotes<br />

Résolution des problèmes liés aux pilotes en mode sans échec<br />

Résolution des problèmes liés aux périphériques de stockage<br />

Résolution des problèmes liés aux périphériques d'affichage<br />

Résolution des problèmes liés aux périphériques d'E/S<br />

Résolution des problèmes liés à ACPI<br />

Résolution des problèmes liés aux fichiers et aux dossiers<br />

Gestion des fichiers et des dossiers<br />

Résolution des problèmes liés à l'accès aux fichiers et aux<br />

dossiers<br />

Résolution des problèmes liés à l'accès aux fichiers et aux<br />

dossiers partagés<br />

Résolution des problèmes liés à l'accès aux fichiers hors<br />

connexion<br />

Résolution des problèmes liés aux imprimantes<br />

Installation d'imprimantes locales et réseau<br />

Résolution des problèmes liés aux pilotes d'imprimante<br />

Résolution des problèmes liés aux imprimantes et aux travaux<br />

d'impression<br />

Résolution des problèmes liés à l'installation<br />

Tâches préalables à l'installation<br />

Résolution des problèmes liés à une installation <strong>avec</strong> assistance<br />

Résolution des problèmes liés à une mise à niveau<br />

Résolution des problèmes liés à une installation sans assistance<br />

Résolution des problèmes liés au processus de démarrage


Windows Vista Installation<br />

et Administration<br />

Durée 4 jours<br />

Objectifs<br />

Toutes les connaissances indispensables pour mettre en Œuvre<br />

et intégrer Windows Vista en environnement réseau. A l'issue de<br />

cette formation, vous comprendrez le fonctionnement de Windows<br />

Vista et vous saurez non seulement l'utiliser, mais aussi<br />

l'installer,le déployer et l'administrer.<br />

Participants<br />

Informaticiens administrateurs ou ingénieurs système ayant à<br />

préparer le déploiement, l’installation, l’administration et la<br />

maintenance du poste de travail sous Windows Vista. Personnes<br />

devant se préparer à faire du support de premier niveau aux<br />

utilisateurs.<br />

Travaux pratiques<br />

Au cours de cette formation, vous apprendrez à utiliser<br />

l'environnement Windows Vista Business. Vous découvrirez les<br />

fonctionnalités en environnement réseau et apprendrez les<br />

éléments de paramétrage de base. Les exercices alterneront<br />

<strong>avec</strong> le cours de manière à fournir une illustration concrète des<br />

thèmes étudiés.<br />

Contenu<br />

Environnement Windows<br />

Rôle d'un système d'exploitation. Concepts de Windows.<br />

Gammes récentes ; Windows XP/Vista et 2003.<br />

Les différentes versions de Vista. Choisir sa version <strong>avec</strong> Vista<br />

Upgrade Advisor.<br />

Les améliorations apportées par Vista.<br />

Installation du poste utilisateur<br />

Vérification de la compatibilité matérielle.<br />

Principe d'amorçage. Installation : méthodes, préparations et<br />

critères de choix du type d'installation.<br />

Supports d'installation de Windows Vista : CD-ROM, réseau. Outil<br />

de migration des données.<br />

Systèmes de fichiers supportés, partitionnement conseillé.<br />

Les drivers WDDM (Windows Display Driver Model).<br />

Activation du système et ses contraintes. Les différents types<br />

d'activation, scénario d'activation.<br />

Travaux pratiques - Installation de Windows Vista.<br />

Participation à un groupe de travail.<br />

Environnement de travail<br />

Présentation d'Aero.<br />

Gestion de l'interface utilisateur. La « transparence », Windows<br />

Flip 3D, la barre des tâches, le panneau de configuration, sidebar<br />

et gadgets...<br />

Gestionnaire des tâches et console MMC.<br />

Améliorations apportées aux MMC.<br />

Base de registre et ruches. Outils système, profils locaux,<br />

itinérants et obligatoires.<br />

Le ReadyBoost et le SuperFetch.<br />

Configuration logicielle et matérielle. Gestion des disques, de<br />

l'ordinateur et des périphériques.<br />

La nouvelle organisation du poste de travail.<br />

Pour les portables, Windows mobility Center.<br />

Travaux pratiques - Personnalisation du poste de travail.<br />

Modification sécurisée de la base de registre. Installation et<br />

désinstallation de programmes et de périphériques, diagnostic de<br />

bon fonctionnement.<br />

Gestion des données<br />

Types de supports de masse, de partitions ; les disques de base<br />

et dynamiques.<br />

Gestion des disques. Résolution des problèmes.<br />

Gestion des systèmes de fichiers. Fat, NTFS, CDFS, UDFS.<br />

Ce qu'apportera WinFS.<br />

RMs, EFS et BitLocker Drive Encryption.<br />

Travaux pratiques - Création de partitions et de disques<br />

dynamiques. Conversion en NTFS. Réorganisation du disque.<br />

Compression et cryptage EFS.<br />

178<br />

Résolution de noms d'hôte, WINS et DNS.<br />

Utilisation des commandes NBTSTAT, NET, IPCONFIG et de<br />

leurs paramètres.<br />

Utilisation des « shell » réseaux.<br />

Introduction aux annuaires Windows et à Active Directory :<br />

domaine, forêt, arbre, unité organisationnelle, site.<br />

La notion de Client Network Access Protection (NAP).<br />

Configuration IPV4 et IPV6.<br />

Travaux pratiques - Configuration des couches réseaux.<br />

Manipulation de pathping et ipconfig.<br />

Diagnostic du fonctionnement du réseau. Intégration du poste de<br />

travail dans un annuaire Windows.<br />

Prise de contrôle et assistance à distance<br />

Configuration et utilisation de l'assistance à distance.<br />

Architecture et mise en œuvre du Bureau à distance.<br />

Différences <strong>avec</strong> l'assistance.<br />

Travaux pratiques - Configuration et connexion <strong>avec</strong> le bureau à<br />

distance.<br />

Gestion des impressions<br />

La nouvelle console de gestion centralisée des imprimantes.<br />

Installation et configuration des imprimantes.<br />

Gestion de spool. Publication dans Active Directory.<br />

Gestion des impressions <strong>avec</strong> le protocole http.<br />

Gestion des partages. Mise en œuvre d'autorisations.<br />

Travaux pratiques - Installation et partage d'une imprimante.<br />

Modifications des droits, des priorités et des horaires de<br />

fonctionnement.<br />

Déploiement<br />

Windows Upgrade Advisor.<br />

La migration des données utilisateur et de leurs profils (User State<br />

Migration Tools).<br />

Méthodes de déploiement. Utilisation et personnalisation des<br />

fichiers de réponses.<br />

Le concept d'Image Based Setup et Windows Imaging<br />

Format (WIM).<br />

Fonctionnement de l'Assistant Gestionnaire de l'installation et du<br />

Service d'installation à distance.<br />

Création d'une image : outils utilisés : XImage, produits tiers.<br />

L'activation dans Vista, les différents types d'activation.<br />

Travaux pratiques - Récupération des profils utilisateurs. Mise en<br />

œuvre de l'Assistant Gestionnaire de l'installation,<br />

personnalisation du fichier de réponses.<br />

Windows Vista et la sécurité<br />

La notion de Code Integrity.<br />

Le contrôle de l'usage des périphériques.<br />

Gestion des utilisateurs et des groupes. Typologie des groupes :<br />

sécurité, distribution, local, global.<br />

Définition des stratégies de sécurité locale (GPO).<br />

Gestion des autorisations NTFS. Priorité des règles mises en<br />

œuvre. Gestion des partages. Mise en cache. Commandes net<br />

share, net use.<br />

Utilisation en ligne de commandes des outils de sécurité.<br />

La notion de User Account Control (UAC).<br />

La protection apportée par Windows Defender.<br />

Le nouveau pare-feu de Windows Vista. Paramétrage.<br />

Mise en œuvre d'IPSec.<br />

Windows Update.<br />

Travaux pratiques<br />

Création d'utilisateurs et de groupes. Manipulation de SID. Copie<br />

de profils. Application de stratégies et gestion des permissions.<br />

Création de dossiers partagés sécurisés.<br />

Récupération d'incidents<br />

Sauvegarde et restauration.<br />

Outil Windows Backup, automatisation.<br />

Analyse du processus de démarrage.<br />

Nouvelle Console de récupération en mode graphique.<br />

Gestion des versions de pilote de périphériques.<br />

Récupération automatique du système.<br />

Point de synchronisation.<br />

Travaux pratiques - Utilisation de la console de récupération suite<br />

à un crash provoqué et réparation de l'incident.<br />

Création de points désynchronisation et retour à un état antérieur<br />

de Windows Vista.<br />

Optimisation, surveillance et contrôle.<br />

L'automatisation.<br />

Mise en œuvre de l'audit. Evénements à auditer.<br />

Observateurs d'événements. Paramétrage des journaux. Création<br />

de filtres. Décodage des erreurs.<br />

Analyseur de performances : rapport, état,graphiques et alertes<br />

automatiques.<br />

Introduction aux nouvelles formes de scripting.(powershell).<br />

Optimisation complète du poste de travail.<br />

Les WMI.<br />

Travaux pratiques;


Vista :Assurer le support<br />

grand public<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation propose aux personnels des équipes de support<br />

une progression pédagogique spécifiquement centrée sur la<br />

perspective de l'usage domestique de Windows Vista<br />

Participants<br />

- Techniciens du support Windows auprès du grand public<br />

- Responsables d'équipes de support Windows<br />

- Hotliners<br />

Pré-requis<br />

Maîtrise du support de Windows XP<br />

Contenu<br />

Introduction<br />

Les différentes versions de Vista<br />

Les configurations matérielles supportées<br />

La nouvelle interface utilisateur<br />

Installation de Windows Vista<br />

Vérificateur de compatibilité<br />

Nouveau processus d'installation<br />

Mise à jour de Windows XP vers Windows Vista<br />

Assistant transfert de fichiers et de paramètres<br />

Activation<br />

Administration du système<br />

Nouvelles modalités d'administration, contrôle des comptes<br />

utilisateurs<br />

Gestion des comptes utilisateurs : comptes d'administrateur et<br />

comptes standard, contrôles parentaux<br />

Nouveaux outils d'administration<br />

Gestion des périphériques : recherche, installation et mise à jour<br />

des pilotes<br />

Gestion de la stratégie locale<br />

Nouvelles fonctionnalités réseau et centre de partage<br />

Le centre de mobilité<br />

Gestion de l'énergie<br />

Gestion des applications : modes de compatibilité, virtualisation<br />

des accès<br />

Windows Vista et la sécurité<br />

Le centre de sécurité<br />

Windows Update<br />

Windows Defender<br />

Internet Explorer 7 : filtre anti-phishing, gestion des add-ons et<br />

mode protégé<br />

Windows mail : filtre anti-spam<br />

Outils d'analyse et de dépannage<br />

Observateur d'évènements : recherche d'évènements, vues<br />

personnalisées<br />

Task Manager, ressource monitor<br />

Planificateur de tâches<br />

Récupération système, snapshots<br />

Reliability and performance monitor<br />

Diagnostics mémoire<br />

Fichiers de démarrage<br />

179


Vista Déploiement<br />

Durée 3 jours<br />

Objectifs<br />

À la fin de ce cours, les participants seront à même d'effectuer les<br />

tâches suivantes :<br />

- Recenser, analyser et atténuer les problèmes de compatibilité<br />

des applications lors de la planification d'un déploiement de<br />

postes de travail Windows Vista ;<br />

- Utiliser les technologies d'installation automatisée pour créer,<br />

personnaliser et déployer une image d'ordinateur basée sur un<br />

poste de travail Windows Vista ;<br />

- Déployer Windows Vista à l'aide de Déploiement de postes de<br />

travail (BDD) 2007 ;<br />

- Déployer Windows Vista à l'aide de l'installation ZTI (Zero Touch<br />

Installation) ;<br />

- Sécuriser un poste de travail Windows Vista.<br />

Participants<br />

Ce cours Vista Déploiement s'adresse aux professionnels de<br />

l'informatique, aux administrateurs de configuration des postes de<br />

travail<br />

Pré-requis<br />

Pour suivre ce cours, les stagiaires doivent :<br />

Avoir une expérience en matière de déploiement de systèmes<br />

d'exploitation Windows ;<br />

Être familiarisés <strong>avec</strong> les méthodes de déploiement d'applications<br />

et de clients standard, telles que la stratégie de groupe, la<br />

création d'images de disque et Systems Management Server<br />

(SMS) ;<br />

Connaître Solution Accelerator pour le déploiement de postes de<br />

travail (BDD).<br />

Contenu<br />

Préparation au déploiement de postes de travail Windows<br />

Vista<br />

Vue d'ensemble du processus de déploiement de postes de<br />

travail Windows Vista<br />

Outils et technologies utilisés dans le cycle de déploiement de<br />

postes de travail<br />

Planification de déploiements Windows Vista<br />

Présentation de l'activation du volume<br />

Protection de la compatibilité des applications<br />

Résolution des problèmes de compatibilité des applications<br />

Présentation de l'outil Application Compatibility Toolkit 5.0<br />

Atelier pratique : Évaluation de la compatibilité des applications à<br />

l'aide de l'outil Microsoft Application Compatibility Toolkit<br />

Migration de l'état utilisateur<br />

Vue d'ensemble de la tâche de migration utilisateur<br />

Introduction à l'outil USMT 3.0<br />

Atelier pratique : Migration utilisateur à l'aide de l'outil USMT<br />

Technologies d'installation automatisée pour Windows Vista<br />

180<br />

Vue d'ensemble de l'architecture d'installation Windows Vista<br />

Implémentation d'un système de création d'image Windows Vista<br />

Déploiement de Windows Vista à l'aide des Services de<br />

déploiement Windows<br />

Atelier pratique : Comment déployer une image Windows Vista à<br />

l'aide des Services de déploiement Windows<br />

Déploiement de Windows Vista à l'aide de BDD 2007<br />

Vue d'ensemble des méthodes de déploiement BDD 2007<br />

Déploiement d'un scénario Lite Touch à l'aide de BDD 2007<br />

Atelier pratique :<br />

Exécution d'une installation LTI (Lite Touch Installation) <strong>avec</strong> BDD<br />

2007<br />

Déploiement de Vista à l'aide de l'installation ZTI (Zero Touch<br />

Installation) de BDD 2007<br />

Préparation de l'environnement de déploiement pour Zero Touch<br />

Déploiement d'un scénario Zero Touch à l'aide de BDD 2007 et du<br />

Feature Pack de déploiement de système d'exploitation<br />

Atelier pratique : Déploiement de Windows Vista à l'aide de<br />

l'installation Zero Touch de BDD 2007<br />

Sécurisation d'un poste de travail Windows Vista<br />

Vue d'ensemble de la sécurité des postes de travail<br />

Améliorations de la sécurité dans Windows Vista<br />

Atelier pratique : Sécurisation d'un poste de travail Windows Vista


WINDOWS 7,<br />

administration et<br />

déploiement<br />

Durée 3 jours<br />

Objectifs<br />

Si l'arrivée de Windows 7 est très impactante pour les utilisateurs<br />

tant cette solution est porteuse de changements, elle l'est aussi<br />

pour les spécialistes de l'informatique en charge de son<br />

installation sur les postes clients. Les nouvelles fonctionnalités<br />

qu'elle apporte rendent ainsi sa configuration plus "complexe".<br />

Cette formation constitue un point d'entrée idéal pour les<br />

personnes en charge d'un projet de migration vers Windows 7.<br />

Cette formation Windows 7 vous permettra de :<br />

- Positionner les différentes versions de Windows 7 en termes de<br />

marché et de fonctionnalités<br />

- Découvrir les améliorations apportées par Windows 7 dans les<br />

domaines de la productivité, de la sécurité et de l'administration<br />

- Evaluer les différents moyens mis en oeuvre dans Windows 7<br />

pour assurer la compatibilité des applications<br />

- Automatiser le déploiement des postes de travail <strong>avec</strong> les<br />

différentes technologies disponibles pour Windows 7 : Windows<br />

Automated Installation Kit, Windows Deployment Services...<br />

- Disposer d’une vue claire sur l’intégration de Windows 7 dans un<br />

domaine Windows Server 2003/2008R2<br />

Participants<br />

Toute personne devant installer, déployer ou assurer le support<br />

de Windows 7<br />

Pré-requis<br />

Connaissances du poste de travail Windows<br />

Connaissances de base sur TCP/IP<br />

Contenu<br />

Introduction à Windows 7 (seven)<br />

Philosophie et différences <strong>avec</strong> XP et Vista<br />

Considérations techniques et marketing<br />

Tableau des fonctionnalités par édition de Windows 7<br />

Modalités d'installation et de passage d'une édition à l'autre<br />

Tour d'horizon des nouveautés de Windows 7<br />

Productivité et mobilité : Interface utilisateur, Federated Search,<br />

Branch Cache, DirectAccess<br />

Sécurité et contrôle : Modifications apportées à UAC (User<br />

Account Control), BitLocker, BitLocker To Go, AppLocker, Parefeu<br />

Optimisation de la gestion du poste de travail : Troubleshooting<br />

Platform, PowerShell V2, Windows Enterprise et MDOP<br />

La gestion de la mémoire<br />

Windows 7 et la compatibilité<br />

Exemples de problèmes de compatibilité applicative<br />

Les points à surveiller<br />

Apports de Windows 7<br />

Précisions sur IE8<br />

Virtualisation applicative (App-V)<br />

Virtualisation du poste de travail (XP mode, MED-V)<br />

Déployer Windows 7<br />

Rappels sur le format WIM et l'utilitaire IMAGEX<br />

Disques virtuels bootables (VHD Boot)<br />

Rappels sur SYSPREP<br />

System Image Manager et fichiers de réponse<br />

Capture et déploiement d'image <strong>avec</strong> WinPE<br />

Injection de drivers et de package applicatifs <strong>avec</strong> le Deployment<br />

Image Servicing and Management Tool (DISM)<br />

Windows Deployment Services (WDS)<br />

Migration des données utilisateurs <strong>avec</strong> USMT (User State<br />

Migration Tool)<br />

181<br />

Microsoft Deployment ToolKit 2010 et son positionnement par<br />

rapport à SCCM<br />

La synergie entre Windows 7 et Windows Server 2008 R2<br />

Quelles différences selon les couples XP/Vista/Seven et<br />

2003/2008/2008R2 ?<br />

Optimisation des protocoles réseau<br />

Plus de sécurité <strong>avec</strong> Network Access Protection<br />

La fin du VPN <strong>avec</strong> DirectAccess ?<br />

Un cache distribué pour des données HTTP ou SMB <strong>avec</strong><br />

BranchCache<br />

Apports des Remote Desktop Services (RDS)


SharePoint Services 3.0<br />

Mise en œuvre<br />

Durée 2 jours<br />

Objectifs<br />

Comment donner aux collaborateurs une vision globale de<br />

l'<strong>entreprise</strong>, afin qu'ils disposent des informations pertinentes en<br />

un clin d'oeil ? Précisément en créant un portail d'<strong>entreprise</strong> qui<br />

connecte astucieusement les utilisateurs, les équipes et les<br />

savoirs dans les processus de l'organisation.<br />

Les participants à cette formation SharePoint 3.0 apprendront à<br />

concevoir, planifier et implémenter une infrastructure Windows<br />

SharePoint 3.0, puis à maîtriser les outils d'administration du<br />

portail.<br />

A la fin de cette formation vous pourrez<br />

Être en mesure de décrire la plate-forme WSS 3.0<br />

Répondre aux problématiques d'<strong>entreprise</strong><br />

Savoir comment planifier l'installation d'un environnement WSS<br />

3.0<br />

Connaître les méthodes optimales pour migrer de WSS 2.0 vers<br />

WSS 3.0 au travers de scénarii<br />

Être en mesure d'assurer la gestion de l'environnement WSS 3.0<br />

Participants<br />

Chefs de projet<br />

Administrateurs<br />

Toute personne en charge de fédérer et de simplifier la gestion de<br />

document Office à l'aide de WSS<br />

Pré-requis<br />

Bonnes connaissances de Microsoft Windows Server 2003 et<br />

d'Internet Information Server 6.0<br />

Contenu<br />

Introduction à Windows SharePoint Services 3.0<br />

Présentation<br />

Les différents challenges du travail collaboratif<br />

Identification des besoins métiers adressés par WSS 3.0<br />

WSS 3.0 et la gestion documentaire<br />

WSS 3.0 au coeur du travail collaboratif<br />

WSS 3.0, la gestion des informations et la communication<br />

Planification de l'environnement WSS 3.0<br />

Détermination des besoins utilisateur<br />

Identification des besoins en termes d'organisation<br />

Planification de la création du site, de la maintenance et de la<br />

sécurité<br />

Les besoins matériels et logiciels<br />

Les besoins en termes de sécurité<br />

Installation de WSS 3.0<br />

Installer et configurer le site central d'administration<br />

Analyse de l'installation du site central d'administration<br />

Configuration des services sur le serveur WSS 3.0<br />

Créer et configurer les sites<br />

Création d'une application Web<br />

Création d'une collection de sites<br />

Mise en oeuvre du service de recherche<br />

Mise à niveau de WSS 2.0 vers WSS 3.0<br />

Planifier la mise à niveau de WSS<br />

Trois approches pour migrer vers WSS 3.0<br />

Les bonnes pratiques pour migrer<br />

Préparer la migration<br />

Les différentes étapes<br />

Les tâches à réaliser pour la migration du serveur et de la base<br />

de données<br />

Gestion de Windows SharePoint Services<br />

Gestion des sites<br />

Gestion du serveur<br />

•<br />

182


SharePoint 2007 :<br />

conception et création de<br />

sites<br />

Durée 2 jours<br />

Objectifs<br />

Cette formation Sharepoint vous présente comment concevoir et<br />

faire évoluer vos sites en faisant un tour d’horizon des possibilités<br />

offertes par sharepoint aux concepteurs. Il couvre tous les<br />

aspects non techniques de Sharepoint. Après avoir présenté les<br />

concepts et la matière première disponible vous construisez vos<br />

propres sites en couvrant les scénarios les plus utiles rencontrés<br />

en <strong>entreprise</strong>. A l’issue de ce stage vous serez capable de :<br />

- comprendre le rôle de sharepoint dans l’organisation de<br />

l’<strong>entreprise</strong><br />

- savoir créer des sites à partir de modèles<br />

- proposer un site collaboratif réaliste et de qualité<br />

- personnaliser l’aspect et le contenu des sites<br />

- comprendre et utiliser les Webparts<br />

- gérer les utilisateurs<br />

- proposer des mécanismes de recherche d’information dans le<br />

site<br />

- sécuriser l’accès aux documents<br />

- gérer les approbations<br />

- proposer des solutions de workflow (flux) simples<br />

Participants<br />

Cette formation s'adresse à toute personne désirant se<br />

familiariser <strong>avec</strong> l'utilisation d'un site de collaboration SharePoint,<br />

sa personnalisation, ou tout simplement comprendre ce qu’il peut<br />

apporter à l’organisation d’une <strong>entreprise</strong> par la pratique.<br />

Pré-requis<br />

Connaissances de l'utilisation de Windows et du WEB.<br />

Contenu<br />

Introduction à Sharepoint<br />

Les apports de sharepoint pour une <strong>entreprise</strong><br />

Présentation rapide de l’architecture générale<br />

Différences entre sharepoint, MOSS 2007, et WSS 3.0<br />

Type de sites disponibles <strong>avec</strong> sharepoint (portail, collaboratif,<br />

wiki, blog, …)<br />

Les familles d’objets (bibliothèque, liste, enquête, page WEB,<br />

site, …)<br />

Les bibliothèques de documents<br />

Présentation des différents types de document<br />

Créer une bibliothèque de documents<br />

Partager un document en l’ajoutant à une bibliothèque<br />

Gérer les dossiers et les sous dossiers<br />

Déplacer les documents d'un dossier vers un autre<br />

Gérer les versions de fichiers<br />

Archiver le document (brouillon, version publiée)<br />

Restaurer une version d’un document<br />

Partager des images dans une bibliothèque<br />

Présentation des autres bibliothèques (formulaire, wiki)<br />

Personnalisation de la fiche profil : Ajout d'une colonne<br />

(attribut/propriété) et contrôle de la saisie de l'attribut<br />

Gérer l’affichage des documents : Choisir les colonnes<br />

à afficher, Trier, Filtrer, Grouper, Afficher des totaux<br />

Créer des sites <strong>avec</strong> sharepoint (portail, collaboratif, …)<br />

Création de sites à partir d’un modèle<br />

Spécificités d’un site collaboratif<br />

183<br />

Créer une liste d’annonces pour partager des actualités ou des<br />

informations (RSS)<br />

Créer une liste de contact pour regrouper des clients, des<br />

partenaires, …<br />

Préciser qui peut valider les informations<br />

Les forums de discussions<br />

Partager des liens vers des pages WEB<br />

Mutualiser les événements (agendas, réunions, …) <strong>avec</strong> le<br />

calendrier<br />

Gérer des alertes<br />

Suivre un ensemble d’actions à accomplir (tâches)<br />

Workflow (flux de travail)<br />

Qu’appelle-t-on workflow ?<br />

Exemples de cycle de vie d’un document (circuit d’approbation)<br />

Identifier les acteurs et leurs rôles<br />

Délais, modes de validation<br />

Créer et utiliser un workflow simple dans sharepoint<br />

La recherche d’information dans sharepoint<br />

Les réflexes des utilisateurs<br />

Le moteur de recherche de sharepoint<br />

Les options de recherche (simples, avancées)<br />

Rechercher des éléments (personne, WebPart, …)<br />

L'administrateur d'un site sharepoint<br />

Rôle de l’administrateur par rapport au concepteur<br />

Exemples d’actions de l’administrateur<br />

Les différentes interfaces d'administration<br />

Ce qu'il faut savoir pour communiquer <strong>avec</strong> lui de façon pertinente<br />

Gestion de la sécurité<br />

Groupes existants et niveaux d'autorisations<br />

Créer des utilisateurs et des groupes<br />

Mise en place de la sécurité sur un site, sur un composant ou sur<br />

un document<br />

Notion d'héritage<br />

Personnaliser les pages <strong>avec</strong> les WebParts<br />

Qu’est-ce qu’un WebPart ?<br />

Description des différents WebParts existants<br />

Ajouter, personnaliser ou supprimer un WebPart<br />

Bibliothèque de WebPart du site<br />

Création d’un Webpart à partir d’un modèle<br />

Présentation des liens <strong>avec</strong> les autres applications<br />

Synchronisation <strong>avec</strong> Outlook<br />

Office 2007 et les bibliothèques de documents<br />

Importer un fichier Excel<br />

Quand est-il nécessaire de faire appel à un développeur<br />

sharepoint ?


SharePoint Server 2007<br />

Mise en oeuvre<br />

Durée 3 jours<br />

Objectifs<br />

Sharepoint occupe une place de plus en plus importante dans<br />

l’organisation des <strong>entreprise</strong>s. Son ouverture vers les<br />

applications bureautiques, la messagerie, les navigateurs WEB,<br />

ou encore les développements personnalisés, lui permettent de<br />

simplifier l’accès de toute l’<strong>entreprise</strong> à des informations<br />

structurées et non isolées sur des systèmes différents. Les<br />

technologies utilisées étant des standards (asp.net, WWF, …)<br />

elles permettent indifféremment de déployer des applications<br />

internet, intranet, ou extranet sur la base de modèles de haut<br />

niveau (portail, collaboratif, …). Cette formation SharePoint a<br />

pour objectif de :<br />

- Savoir décrire la plate-forme MOSS 2007<br />

- Être en mesure de concevoir et planifier une implémentation<br />

MOSS 2007<br />

- Savoir comment déployer MOSS 2007<br />

- Administrer MOSS 2007<br />

- Découvrir comment implémenter différentes solutions : portails,<br />

gestion de contenu, solutions décisionnelles<br />

- Mettre en œuvre les mécanismes de recherches d’information<br />

- Optimiser les performances des sites Sharepoint<br />

Participants<br />

- Chefs de projets<br />

- Administrateurs<br />

- Toute personne en charge de la mise en oeuvre d'une solution<br />

MOSS<br />

Pré-requis<br />

Bonne connaissance de Microsoft Windows Server 2003,<br />

d'Internet Information 6.0 et des problématiques de collaboration<br />

au sein des <strong>entreprise</strong>s.<br />

Contenu<br />

Introduction à MOSS (Microsoft Office SharePoint 2007)<br />

Présentation des produits et technologies sharepoint<br />

Architecture de MOSS 2007 (IIS, asp.net, Windows Workflow<br />

Foundation)<br />

Différences entre MOSS et WSS 3.0 (Windows Sharepoint<br />

Services)<br />

Utiliser des documents Office 2007 <strong>avec</strong> MOSS 2007<br />

Interfaces entre Exchange Server 2007 et MOSS 2007<br />

Publier des serveurs Sharepoint <strong>avec</strong> ISA Server (Internet<br />

Security & Acceleration Server)<br />

Architecture logique et architecture physique<br />

Planification de l'environnement MOSS 2007(SharePoint<br />

2007)<br />

Préparer l'implémentation de MOSS 2007<br />

Vue d'ensemble des processus et méthodologies de conception<br />

Vue d'ensemble des différents rôles<br />

Introduction à l'implémentation de l'authentification<br />

Guide pour l'implémentation de l'autorisation et de la sécurité<br />

Guide pour la mise en oeuvre de l'interopérabilité<br />

Déploiement de MOSS 2007 (SharePoint 2007)<br />

Les différents modèles de déploiement<br />

Les environnements de déploiement<br />

Les pré-requis pour le déploiement<br />

Le processus d'installation (pré-requis)<br />

La configuration post installation<br />

Réflexions sur le déploiement en ferme de serveurs<br />

Gestion des fournisseurs de services partagés<br />

Définition d'un fournisseur de services partagés<br />

Création d'un fournisseur de services partagés<br />

Administration de MOSS 2007 (SharePoint 2007)<br />

Conception et création de site<br />

Modèles de sites MOSS 2007<br />

Présentation des composants MOSS 2007<br />

Description des composants spécifiques<br />

Gestion des composants MOSS 2007<br />

184<br />

Implémentation de solutions de portails<br />

Les modèles de sites portails<br />

Les outils d'administration des sites portails<br />

Sites personnels Implémentation des composants collaboratifs :<br />

WebParts collaboratives<br />

Guide pour implémenter une communication temps réelle<br />

Implémenter le SSO<br />

Définition d'un profil utilisateur<br />

Importation et stockage des profils utilisateurs<br />

Audiences et cibles<br />

Implémentation de solutions de gestion de contenu<br />

Présentation des catalogues de données métiers<br />

Créer des applications basées sur ces catalogues<br />

Intégrer des sources de données externes dans les sites<br />

SharePoint<br />

Présentation des services Excel<br />

Configurer des zones autorisées pour les services Excel<br />

Publier et accéder aux données Excel<br />

Implémenter des tableaux de bord décisionnels<br />

Définir les indicateurs clés<br />

Construire des tableaux de bord décisionnels<br />

Présentation des centres de rapports Intégrer des rapport issus de<br />

Reporting Services<br />

Stocker et accéder aux rapports<br />

Mettre en oeuvre Forms Server 2007<br />

Implémentation de la recherche et de l'indexation<br />

Les fondamentaux de la recherche et de l'indexation<br />

Fonctionnalités avancées<br />

Définir les sources de contenu pour la recherche<br />

Définir les périmètres de recherche<br />

Construire les indexs<br />

Effectuer des recherches<br />

Maintenance et optimisation de MOSS 2007 (SharePoint 2007)<br />

Implémentation du processus de sauvegarde ; restauration<br />

Sauvegarde des configurations et des données<br />

Restauration des configurations et des données<br />

Implémentation de la surveillance<br />

Utiliser le moniteur de performances<br />

Observer les compteurs de performances


Administration avancée de<br />

Sharepoint 2007 et WSS<br />

3.0<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation Administration SharePoint 2007 permet aux<br />

participants d’acquérir les connaissances pour planifier, déployer<br />

et configurer des architectures de serveurs de fermes <strong>avec</strong><br />

Microsoft Office SharePoint Server 2007 et Windows SharePoint<br />

Services 3.0. Cette formation se concentre sur les points clefs du<br />

déploiement et les tâches de configuration.<br />

Après la fin de ce cours les participants seront à même de :<br />

- Expliquer le lien entre le rôle d’un serveur SharePoint et un<br />

environnement de serveurs de ferme<br />

- Configurer les fermes de serveurs SharePoint<br />

- Sécuriser les déploiements basés sur les technologies<br />

SharePoint<br />

- Configurer les architectures d’information et de solution dans un<br />

déploiement basé sur les technologies SharePoint<br />

- Planifier une récupération de données après sinistre et<br />

comment sauvegarder et restaurer les solutions basées sur les<br />

technologies SharePoint<br />

- Gérer, surveiller et dépanner les déploiements basés sur les<br />

technologies SharePoint<br />

- Planifier la taille du déploiement <strong>avec</strong> les technologies<br />

SharePoint<br />

- Configurer la recherche et l’indexation <strong>avec</strong> les technologies<br />

SharePoint<br />

- Personnaliser et étendre les technologies SharePoint<br />

- Configurer le catalogue de donnée métiers (Business Data<br />

Catalog)<br />

- Configurer les services de formulaires et les services Excel<br />

(Forms Services et Excel Services)<br />

Participants<br />

Cette formation Administration SharePoint 2007 est destinée à<br />

des architectes expérimentés et à des administrateurs qui ont un<br />

minimum de deux ans d’expérience <strong>avec</strong> les technologies<br />

SharePoint.<br />

Pré-requis<br />

Avant de participer à cette formation Administration SharePoint<br />

2007, les stagiaires doivent avoir :<br />

- Au moins deux ans d’expérience <strong>avec</strong> les technologies ou<br />

produit SharePoint dans un des rôles suivants :<br />

o Architecte de solution<br />

o Architecte technique<br />

o Architecte d’information<br />

o Administrateur de ferme<br />

o Analyse et traitements des besoins utilisateurs<br />

- Avoir suivi les formations MSP3 et MSP7 : SharePoint Services<br />

3.0 Mise en œuvre et SharePoint Server 2007 Mise en œuvre ou<br />

posséder des connaissances équivalentes.<br />

Contenu<br />

Architecture d’une ferme de serveurs SharePoint<br />

Ferme de serveurs <strong>avec</strong> WSS 3.0 et MOSS 2007<br />

Topologie de ferme de serveurs MOSS 2007<br />

Déployer des fermes WSS 3.0 et MOSS 2007<br />

Configuration de fermes SharePoint<br />

Création de fournisseurs de services partagés (SSP)<br />

Configuration de fermes de serveurs<br />

Configuration des paramètres de l’administration centrale<br />

Sécuriser les systèmes basés sur les technologies<br />

SharePoint<br />

Acomptes de sécurité de MOSS<br />

Sécuriser le contenu<br />

Sécuriser les communications au sein de la ferme de serveurs<br />

Consolider les serveurs<br />

Architectures des solutions basées sur les technologies<br />

SharePoint<br />

Architectures d’Information<br />

185<br />

Sauvegarde, Restauration, et Récupération après sinistre<br />

<strong>avec</strong> SharePoint<br />

Sauvegarde et restauration<br />

Utilisation des sauvegardes et restauration SQL Server<br />

Utiliser les solutions de “Failover” de SQL Server<br />

Utilisation de Data Protection Manager<br />

Diverses opérations <strong>avec</strong> SharePoint<br />

Gérer une ferme de serveurs<br />

Utilisation de Microsoft Systems Center Operations<br />

Manager <strong>avec</strong> les technologies SharePoint<br />

Dépanner les migrations et mises à jour SharePoint<br />

Planification de la capacité et du calibrage pour les<br />

technologies SharePoint<br />

Planifier la capacité<br />

Bien calibrer les architectures SharePoint<br />

Recherche et Indexation<br />

Architecture de recherche<br />

Processus de parcours et de requêtes<br />

Modèle de serveur de recherche<br />

Personnaliser et étendre les technologies SharePoint<br />

Personnaliser Microsoft Office SharePoint Server 2007<br />

Etendre Microsoft Office SharePoint Server 2007<br />

Configurer le catalogue de données métiers<br />

Planifier le catalogue de données métiers<br />

Configurer le catalogue de données métiers<br />

Configurer les services de formulaires et les services Excel<br />

Microsoft InfoPath Forms dans les technologies SharePoint<br />

Excel Services dans MOSS 2007


Développer des<br />

applications <strong>avec</strong> WSS 3.0<br />

et MOSS 2007<br />

Durée 5 jours<br />

Objectifs<br />

Bénéficiant de la maturité des outils de développement de<br />

Microsoft, Office SharePoint Server 2007 tire aujourd'hui<br />

pleinement parti de la puissance du framework .Net 2.0. En<br />

conséquence, MOSS est devenu une véritable plate-forme de<br />

gestion des informations et des processus parfaitement adaptée<br />

pour concevoir des portails, des sites Web ou encore des<br />

applications d'<strong>entreprise</strong> faisant appel à des workflows. Les<br />

participants à cette formation MOSS apprendront à développer<br />

des composants spécifiques autour de cette plate-forme.<br />

Cette formation MOSS vous permettra de:<br />

- Savoir comment développer des WebParts <strong>avec</strong> ASP .Net 2.0<br />

- Être en mesure de développer des « features » spécifiques,<br />

fonctionnalités pour WSS 3.0 et MOSS 2007<br />

- Être capable de personnaliser les sites par différents axes :<br />

l'interface graphique, les feuilles de style, SharePoint Designer<br />

- Être en mesure de développer des workflows<br />

Participants<br />

Cette formation MOSS s'adresse aux développeurs expérimentés<br />

Pré-requis<br />

Connaissances du développement ASP .Net 2.0 et d'un langage<br />

de développement tel que C#<br />

Connaissances des technologies SharePoint<br />

Avoir suivi le cours : "Visual Studio 2005 - Maîtriser le<br />

framework .Net 2.0" ou connaissances équivalentes<br />

Avoir suivi les cours de mise en oeuvre WSS et MOSS est un<br />

plus pour suivre cette formation<br />

Travaux pratiques<br />

Au-delà des apports théoriques indispensables, cette formation<br />

MOSS intègre de nombreux ateliers qui apporteront aux<br />

participants une expérience pratique du développement<br />

d'applications <strong>avec</strong> Windows SharePoint Services 3.0 et<br />

Microsoft Office SharePoint Server 2007.<br />

Contenu<br />

Présentation des technologies WSS et MOSS<br />

Fonctionnalités de WSS et MOSS<br />

Architecture logique et physique des solutions SharePoint<br />

Personnaliser l'authentification<br />

SharePoint = Application ASP .NET. Fournisseurs ASP .NET<br />

Microsoft Single Sign-On.<br />

Gérer la sécurité Pool d'application IIS<br />

Permissions SharePoint. Groupes SharePoint par défaut<br />

Fournisseurs d'appartenance et de rôle ASP .NET<br />

Entités SharePoint<br />

Permissions et niveaux de permission personnalisé<br />

Héritage de permission au niveau Site;Liste;Elément<br />

Interface de filtre de la sécurité. Règle d'application web<br />

Classe SPSecurity<br />

Single Sign-On.<br />

Personnaliser le rendu de l'interface dans Internet Explorer.<br />

Présentation de l'interface SharePoint<br />

Page Default.aspx. Utilisation de Web Parts<br />

Personnalisation de Web Parts<br />

Ajouter de nouvelles pages. Éditer de nouvelles pages<br />

Master Pages. Thèmes, navigation et modèle de page<br />

Type de contenu. Content Management Server (CMS)<br />

Être autonome <strong>avec</strong> SharePoint Designer<br />

Les bases de SharePoint Designer<br />

Créer et modifier des sites existants<br />

Explorer des sites d'équipes. Explorer des sites portails<br />

Pages ASP .NET. Fonctionnalité d'édition de SharePoint<br />

Designer<br />

Création de Master Pages. Utilisation de contrôles SharePoint<br />

186<br />

Utiliser SharePoint<br />

Designer pour des développements complexes<br />

Rapports. Vues de données. Sauvegarde de site. Restauration de<br />

site.<br />

Maîtriser les "content type".<br />

Introduction aux types de contenu<br />

Types de contenu par défaut et héritages. Paramétrage<br />

Colonne de site. Panneau d'information<br />

Workflows. Types de contenu personnalisés<br />

Concevoir l'architecture à l'aide des définitions de sites<br />

Définitions de sites WSS standards. Définitions de sites MOSS<br />

standards. CAML<br />

Définitions de sites personnalisés. Élément de définitions de sites<br />

Élément de configuration<br />

Définitions de sites "SharePoint Solution Generator"<br />

Modèle de site Thèmes SharePoint<br />

Utiliser ou créer des "features"<br />

Présentation.<br />

Les différents types<br />

Portée et dépendances entre fonctionnalités<br />

Prendre en compte la localisation<br />

Gestionnaire d'évènement sur les fonctionnalités<br />

Création et déploiement. Activation et désactivation<br />

Solutions.<br />

Consommer des services Web SharePoint<br />

Pourquoi utiliser les Web Services?<br />

Les principaux Web Services SharePoint<br />

Maîtriser le développement de Web Parts<br />

Web Parts WSS 2.0 et WSS 3.0.<br />

Web Part ASP .NET<br />

Connexions Web Part et interfaces<br />

Mettre à jour des Web Parts pour WSS 3.0<br />

Quand utiliser la classe de Web Part SharePoint ?<br />

Permissions de Web Part<br />

Code Access Security (CAS)<br />

Conseils pour améliorer les performances<br />

Utiliser Ajax pour la mise en oeuvre de scripts côté client<br />

Script client<br />

Génération de script<br />

Introduction AJAX<br />

Utilisation communes d'Ajax<br />

Support d'Ajax dans SharePoint<br />

Maîtriser le modèle Objet de SharePoint<br />

Présentation<br />

Différentes DLL<br />

Utilisation<br />

Différences entre SPSite et SPWeb<br />

Changement de Namespace Changes (2.0 à 3.0)<br />

Personnaliser les types de champs<br />

Introduction<br />

Champs standard<br />

Champs personnalisé<br />

Gérer les évènements et les planificateurs de tâches<br />

Historique du gestionnaire d'évènement SharePoint<br />

Nouveautés et détails sur les évènements<br />

Service SharePoint TimerClasse SPJob. Definition<br />

Identifier les apports des services partagés.<br />

Fonctionnalités<br />

Différences de fonctionnement <strong>avec</strong> et sans les services partagés<br />

Implémenter des processus métier <strong>avec</strong> les workflows<br />

Workflow standard WSS et MOSSWorkflow <strong>avec</strong> SharePoint<br />

Designer. Utilisation de conditions <strong>avec</strong> SharePoint<br />

Designer Utilisation d'actions <strong>avec</strong> SharePoint Designer<br />

Étendre SharePoint Designer pour les Workflows<br />

Comparaison entre Visual Studio et SharePoint Designer<br />

Prendre en charge le mode multi lingue enASP .Net<br />

Localisation ASP .NET. Culture et UICulture<br />

Fichiers RESXImplicite et Explicite<br />

Fichiers de Ressources SharePoint. Langue du navigateur<br />

Pack de langue SharePoint.<br />

Utiliser les services Excel<br />

Zones de confiance. Web Parts<br />

Model Objet et Services Web<br />

Agréger les données de l'<strong>entreprise</strong> <strong>avec</strong> Business Data<br />

Catalog<br />

Fichier de définition d'applications. Web parts. Indexation<br />

SSO.<br />

Publier des tableaux de bord décisionnels<br />

Centre de rapport. Key Performance Indicator (KPI)<br />

Panneau de contrôle. Intégration à Reporting Services<br />

Mettre à jour WSS 2.0 vers 3.0<br />

Prescan.exe. Mise à jour sur place<br />

Mises à jour côte à côte ; graduelle<br />

Etapes des Mises à jour côte à côte et graduelle<br />

Mises à jour via une migration de la base de données<br />

Mises à jour des définitions de site


Sharepoint 2007,<br />

développement avancé<br />

Durée 5 jours<br />

Objectifs<br />

Cette formation SharePoint <strong>Développement</strong> fournit aux<br />

participants les connaissances et les compétences pour devenir<br />

de véritables experts du développement SharePoint. D’Ajax aux<br />

gestionnaires d’événements et features, vous gagnerez une<br />

connaissance importante des comportements internes de<br />

SharePoint 2007.<br />

A la fin de cette formation SharePoint <strong>Développement</strong>, les<br />

participants seront à même de :<br />

- Créer un site SharePoint personnalisé pour l’utilisateur final<br />

- Créer et lancer des rapports<br />

- Créer des champs personnalisés pour améliorer les<br />

fonctionnalités des listes<br />

Participants<br />

Cette formation SharePoint <strong>Développement</strong> est destinée à des<br />

développeurs expérimentés <strong>avec</strong> Visual Studio 2005.<br />

Pré-requis<br />

- Bonnes connaissances de visual studio, de l'environnement<br />

.net, des techniques d'accès aux données, et des applications<br />

WEB (asp.net)<br />

- Connaissances de WSS 3.0 et de Office Sharepoint Server<br />

Contenu<br />

Présentation<br />

Introduction<br />

Personnaliser l'authentification<br />

SharePoint = Application ASP.NET<br />

Fournisseurs ASP.NET. Microsoft Single Sign-On<br />

Permissions SharePointPool d’application IIS<br />

Permissions SharePoint.<br />

Groupes SharePoint par défaut<br />

Fournisseurs d’appartenance et de rôle ASP.NET<br />

Entités SharePoint. Permissions<br />

Niveau de permission personnalisé<br />

Héritage de permission au niveau Site/Liste/Elément<br />

Interface de filtre de la sécurité<br />

Règle d’application web. Classe SPSecurity<br />

Single Sign-On<br />

Personnalisation dans le navigateur<br />

Présentation de l’interface SharePoint<br />

Default.aspx. Tout est liste<br />

Utilisation de Web Parts. Personnalisation de Web Parts<br />

Ajouter de nouvelles pages.<br />

Editer de nouvelles pages<br />

Master Pages. Thèmes. Navigation<br />

Modèle de page. Type de contenu<br />

Content Management Server (CMS)<br />

Débuter <strong>avec</strong> SharePoint Designer<br />

Les bases de SharePoint Designer<br />

Créer et modifier des sites existants<br />

Explorer des sites d’équipes<br />

Explorer des sites portails<br />

Démonstration. Pages ASP.NET<br />

Fonctionnalité d’édition de SharePoint Designer<br />

Création de Master Pages<br />

Utilisation de contrôles SharePoint<br />

Création de feuilles de styles CSS<br />

Se perfectionner <strong>avec</strong> SharePoint Designer<br />

Rapports. Vues de donnée<br />

Sauvegarde de site. Restauration de site<br />

Content Types<br />

Introduction aux types de contenu<br />

Types de contenu par défaut et héritages<br />

Paramétrage<br />

Colonne de site<br />

Panneau d’information<br />

Workflows<br />

Types de contenu personnalisé<br />

187<br />

Définitions de site<br />

Définitions de sites WSS standard. Définitions de sites MOSS<br />

standard<br />

CAML<br />

Définitions de sites personnalisés<br />

Elément de Définitions de sites<br />

Elément de configuration Définitions de sites<br />

“SharePoint Solution Generator”<br />

Modèle de site<br />

Thèmes SharePoint<br />

Fonctionnalités ou “Features”<br />

Présentations . Différent types. Portée<br />

Dépendances entre fonctionnalités<br />

Intégrer la localisation<br />

Gestionnaire d’événement sur les fonctionnalités<br />

Création. Déploiement<br />

Activation et désactivation. Solutions<br />

API Web Services<br />

Web Services. Pourquoi les utiliser<br />

Les principaux Web Services SharePoint<br />

<strong>Développement</strong> de Web Part<br />

Web Parts. Web Parts WSS 2.0 et WSS 3.0<br />

Web Part ASP.NET<br />

Connections Web Part . Connections Web Part et Interfaces<br />

Mettre à jour vos Web Parts pour WSS 3.0<br />

Quand utiliser la classe de Web Part SharePoint<br />

Permissions de Web Part . Code Access Security (CAS)<br />

Conseils pour améliorer les performances<br />

Script Client et Ajax<br />

Script Client . Génération de script<br />

Introduction AJAX. Utilisation communes d’Ajax<br />

Support d’Ajax dans SharePoint<br />

Modèle Objet<br />

Présentation. Différentes DLL<br />

Utilisation. Différences entre SPSite et SPWeb<br />

Changement de Namespace Changes (2.0 à 3.0)<br />

Champs personnalisés<br />

Introduction. Champs standard. Champs personnalisés<br />

Evénement SharePoint et Timer Jobs<br />

Historique du gestionnaire d’évènement SharePoint<br />

Nouveaux événement<br />

Détails sur les événements. Service SharePoint Timer<br />

Classe SPJob. Definition<br />

Services Partagés<br />

Fonctionnalités<br />

Différence de fonctionnement <strong>avec</strong> et sans les services partagés.<br />

Workflows <strong>avec</strong> SharePoint DesignerWorkflow standard WSS et<br />

MOSS<br />

Workflow <strong>avec</strong> SharePoint Designer<br />

Utilisation de conditions <strong>avec</strong> SharePoint Designer<br />

Utilisation d’actions <strong>avec</strong> SharePoint Designer<br />

Etendre SharePoint. Designer pour les Workflows<br />

Workflows <strong>avec</strong> Visual Studio. Windows Workflow Foundation<br />

Persistance Différents Types<br />

Workflows <strong>avec</strong> Visual Studio<br />

Workflows SharePoint<br />

Formulaire de Workflows SharePoint. Debugger un Workflow<br />

Comparaison entre Visual Studio et SharePointDesigner<br />

Localisation ASP.NET<br />

Culture et UICulture. Fichiers RESX. Implicite et Explicite<br />

Fichiers de Ressources SharePoint. Langue du navigateur<br />

Pack de langue SharePoint<br />

RPC SharePoint/Microsoft /FrontPage<br />

RPC FrontPage<br />

RPC SharePoint<br />

Excel Services<br />

Zones de confiance<br />

Web parts<br />

Model Objet et Services Web<br />

Catalogue d’accès aux données<br />

Métiers. Fichier de définition d’application<br />

Web parts. Indexation<br />

SSO<br />

Business Intelligence<br />

Centre de rapport<br />

Key Performance Indicator (KPI)<br />

Panneau de contrôle<br />

Intégration à Reporting Services


Windows Server 2008 :<br />

Evaluer les apports de la<br />

plate-forme<br />

Durée 4 jours<br />

Objectifs de la formation Windows 2008<br />

Cette formation a pour objectif de permettre aux participants<br />

d'acquérir une première expérience de Windows Server 2008<br />

Participants<br />

Toute personne en charge de l'étude ou de la conduite d'un<br />

projet de migration vers Windows Server 2008<br />

Consultants<br />

Administrateurs systèmes<br />

Pré-requis<br />

Connaissance générale de Windows<br />

Connaissances de TCP/IP et d'Active Directory<br />

La connaissance des outils de déploiement utilisés<br />

précédemment <strong>avec</strong> Windows XP est un plus<br />

Contenu<br />

Mettre en place un accès centralisé aux applications <strong>avec</strong><br />

Windows Server 2008<br />

Les fonctionnalités de base de Terminal Services<br />

Terminal Services Gateway (TSG)<br />

Terminal Services Remote Programs (affichage d'applications<br />

distantes sur le desktop local)<br />

Terminal Services et Windows System Resource Manager<br />

(WSRM)<br />

Gérer les serveurs d'agence <strong>avec</strong> Microsoft Windows Server<br />

2008<br />

Déployer et administrer les serveurs<br />

Décrire les modifications introduites par Windows Server 2008<br />

dans les services d'annuaire Active Directory<br />

Identifier les différents types de serveur susceptibles de<br />

bénéficier des nouveautés apportées par Windows Server 2008<br />

dans la gestion des réseaux d'agences et la manière de les<br />

installer<br />

Contrôleurs de domaine en lecture seule (Read-Only Domain<br />

Controllers -- RODC)<br />

Décrire les avantages des RODC<br />

Expliquer comment les RODC peuvent aider à réduire les<br />

contraintes de la gestion des réseaux d'agences<br />

Sécuriser un réseau d'agence<br />

Construire un environnement à haute disponibilité <strong>avec</strong><br />

Microsoft Windows Server 2008<br />

Décrire les éléments constitutifs d'un cluster et les avantages<br />

correspondants<br />

Identifier les changements apportés par Windows Server 2008<br />

dans l'environnement cluster<br />

Simplifier la gestion des clusters<br />

Réduire les coûts de support et de mise en production<br />

Créer des clusters géographiquement dispersés<br />

Identifier les éléments matériels et logiciels, d'administration et<br />

d'infrastructure nécessaires à l'installation d'un cluster<br />

Planifier les différentes étapes de l'installation d'un cluster<br />

Configurer un cluster<br />

188<br />

Gérer la sécurité <strong>avec</strong> Windows Server 2008<br />

Utiliser la stratégie de groupe pour paramétrer la sécurité<br />

Décrire les fonctionnalités de Windows Server 2008 destinées à<br />

aider les administrateurs à appliquer une stratégie de sécurité<br />

homogène dans toute l'<strong>entreprise</strong><br />

Expliquer le fonctionnement et la configuration d'IPSec<br />

Décrire le fonctionnement et l'implémentation de l'architecture QoS<br />

basée sur la stratégie<br />

Protection de l'accès au réseau (Network Access Protection - NAP)<br />

Décrire la manière dont Windows Server 2008 peut protéger<br />

l'accès au réseau de l'<strong>entreprise</strong><br />

Identifier les différents scénarios d'utilisation de NAP<br />

Enumérer les composants d'infrastructure à mettre en place<br />

Décrire les différentes méthodes d'application de la protection<br />

Paramétrer le serveur NPS (Network Policy Server) pour la<br />

détermination de l'état de santé des clients et l'application des<br />

stratégies d'accès<br />

Gérer les serveurs <strong>avec</strong> Windows Server 2008<br />

Utiliser la console « Tâches de configuration initiale » et le<br />

gestionnaire de serveur<br />

Simplifier l'administration de serveurs multiples <strong>avec</strong> PowerShell<br />

Réduire la charge d'administration et améliorer la sécurité <strong>avec</strong><br />

Server Core<br />

Découvrir la virtualisation de serveurs <strong>avec</strong> Windows Server<br />

2008<br />

Décrire le fonctionnement et les avantages de la virtualisation de<br />

serveurs<br />

Identifier les scénarios d'utilisation typiques de la virtualisation<br />

Décrire le processus de mise en place d'un environnement<br />

virtualisé<br />

Expliquer la manière dont Microsoft envisage la virtualisation des<br />

réseaux<br />

Expliquer comment Microsoft implémente une virtualisation<br />

efficace des mémoires de masse<br />

Découvrir la plateforme applicative de Windows Server 2008<br />

Décrire les améliorations apportées par IIS 7.0<br />

Planifier le déploiement d'IIS 7.0<br />

Enumérer les composants d'IIS 7.0 et les avantages de cette<br />

nouvelle architecture<br />

Identifier les nouveautés d'IIS 7.0 en matière d'interface utilisateur<br />

Evaluer les capacités de montée en charge d'IIS7.0<br />

Utiliser les outils de diagnostic d'IIS 7.0<br />

Utiliser les outils intrisèques de Windows Server 2008 pour le<br />

dépannage d'IIS 7.0


Administration Windows<br />

Server 2008<br />

VPN, DNS, WINS, DHCP, IPv6, RRAS, NPS, Radius, NAP,<br />

IPSec, DFS, WSDS<br />

Durée 5 jours<br />

Objectifs<br />

Dans cette formation Réseaux Windows 2008, les<br />

administrateurs acquerront les compétences nécessaires pour<br />

mettre en production et dépanner une infrastructure réseau<br />

Windows Server 2008, des services de base à l'intégration d'IPv6<br />

et au contrôle d'accès réseau. Pour assurer non seulement la<br />

disponibilité du réseau, mais également celle des données, sont<br />

également abordées les technologies de stockage nouvellement<br />

intégrées à Windows Server 2008.<br />

Cette formation vous permettra de:<br />

Savoir installer et configurer les services réseaux de base (DNS,<br />

WINS, DHCP)<br />

Être autonome pour gérer l'accès réseau à distance<br />

Être en mesure de sécuriser l'accès au réseau <strong>avec</strong> NAP<br />

(Network Access Protection) et IPSec<br />

Pouvoir assurer l'intégrité et la disponibilité des données en<br />

environnement distribué<br />

Être capable de dépanner les services réseaux<br />

Participants<br />

Administrateurs chargés de l'exploitation du réseau au niveau de<br />

l'<strong>entreprise</strong>, responsables d'exploitation en charge de la gestion<br />

du stockage<br />

Pré-requis<br />

Expérience de l'exploitation des systèmes Windows Server,<br />

Connaissances de base d'Active Directory,<br />

Bonne compréhension des concepts et méthodologies liés à la<br />

sécurité,<br />

Connaissances de base des protocoles de la suite TCP/IP<br />

Contenu<br />

Installer et configurer les serveurs<br />

Installer Windows Server 2008<br />

Gérer les rôles et les modules complémentaires<br />

Découvrir l'option Server Core<br />

Configurer et dépanner DNS<br />

Installer le rôle de serveur DNS<br />

Configurer le service DNS<br />

Configurer les zones<br />

Gérer les transferts de zones<br />

Gérer et dépanner le DNS<br />

Configurer et dépanner WINS<br />

Installer le service WINS<br />

Gérer le serveur WINS<br />

Configurer la réplication WINS<br />

Remplacer WINS par DNS<br />

Configurer et dépanner DHCP<br />

Se familiariser <strong>avec</strong> le rôle de serveur DHCP<br />

Configurer les options et les étendues DHCP<br />

Gérer la base de données DHCP<br />

Surveiller et diagnostiquer le service DHCP<br />

Sécuriser le service DHCP<br />

Configurer et dépanner TCP/IP v6<br />

Découvrir les concepts de base d'IPv6<br />

Gérer la coexistence Ipv6;IPv4<br />

Connaître les technologies de tunneling IPv6<br />

Réussir la transition de IPv4;IPv6<br />

Dépanner IPv6<br />

189<br />

Configurer et dépanner le contrôle d'accès réseau<br />

Configurer l'accès réseau<br />

Configurer l'accès VPN<br />

Configurer l'accès RTC<br />

Gérer les stratégies d'accès réseau<br />

Découvrir le Connection Manager Administration Kit (CMAK)<br />

Dépanner le service d'accès distant RRAS (Routing and Remote<br />

Access Services)<br />

Installer, configurer et dépanner un serveur NPS (Network<br />

Policy Server)<br />

Installer et configurer un serveur NPS<br />

Configurer des clients et des serveurs RADIUS<br />

Choisir les méthodes d'authentification<br />

Superviser et dépanner un serveur NPS<br />

Configurer NAP (Network Access Protection) <strong>avec</strong> DHCP et un<br />

serveur VPN<br />

Découvrir comment sécuriser un réseau <strong>avec</strong> NAP<br />

Explorer les principes de fonctionnement de NAPConfigurer NAP<br />

Superviser et dépanner NAP<br />

Configurer IPSec<br />

Connaître les concepts de base d'IPSec<br />

Configurer les règles de connexion<br />

Configurer IPSec pour l'application des stratégies NAP<br />

Surveiller et dépanner IPSec<br />

Surveiller l'activité IPSec<br />

Dépanner IPSec<br />

Configurer et gérer DFS (Distributed File System)<br />

Connaître les principes de base du DFS<br />

Gérer les espaces de noms DFS<br />

Configurer la réplication DFS<br />

Configurer et gérer les technologies de stockage<br />

Découvrir les apports de Windows Server 2008 dans le domaine<br />

du stockage<br />

Optimiser la gestion des disques <strong>avec</strong> le File Server Resource<br />

Manager<br />

Mettre en place des quotas<br />

Éviter la pollution en filtrant les fichiers<br />

Générer des rapports sur l'utilisation des disques<br />

Assurer la disponibilité des ressources et des contenus<br />

réseau<br />

Sauvegarder les données<br />

Configurer les copies virtuelles (Shadow Copies)<br />

Assurer la disponibilité des systèmes et des services<br />

Sécuriser la configuration des serveurs<br />

Sécuriser une infrastructure Windows<br />

Industrialiser la sécurisation des serveurs à l'aide de modèles de<br />

sécurité<br />

Auditer les accès<br />

Découvrir comment rationaliser la distribution des mises à jour<br />

<strong>avec</strong> Windows Server Update Services (WSUS)<br />

Gérer WSUS


Active directory Windows<br />

2008 server<br />

Durée 5 jours<br />

Objectifs<br />

Une fois définie l'architecture générale des services d'annuaire,<br />

les serveurs doivent être déployés et mis en production. Le but<br />

de cette formation Active directory Windows 2008 est de fournir<br />

aux administrateurs toutes les informations dont ils auront besoin<br />

pour installer et configurer les contrôleurs de domaine, sécuriser<br />

l'environnement utilisateur par des stratégies centralisées et<br />

assurer la disponibilité des services d'annuaire.<br />

Cette formation vous permettra de:<br />

Être capable d'implémenter et configurer les services d'annuaire<br />

Active Directory en <strong>entreprise</strong><br />

Savoir comment tirer parti de l'interrogation DNS - Active<br />

Directory<br />

Être en mesure d'industrialiser le paramétrage des postes et des<br />

serveurs <strong>avec</strong> les GPO<br />

acquérir les compétences nécessaires pour sécuriser le réseau<br />

<strong>avec</strong> les stratégies de groupe<br />

Pouvoir surveiller, diagnostiquer et dépanner les services de<br />

domaines<br />

Participants<br />

Spécialistes Active Directory, administrateurs système chargés<br />

de l'implémentation et de la maintenance des services d'annuaire<br />

Pré-requis<br />

Connaissances de base des réseaux TCP/IP,<br />

Bonne compréhension des principes de la sécurité des systèmes,<br />

Bonne connaissance du matériel des serveurs (A+ ou équivalent)<br />

Contenu<br />

Installer Active Directory Domain Services (ADDS)<br />

Installer Active Directory Domain Services<br />

Déployer des contrôleurs de domaine en lecture seule (Read-<br />

Only Domain Controllers - RODC)<br />

Configurer les rôles de serveur liés à AD DS<br />

Configurer DNS pour Active Directory<br />

Découvrir les avantages de l'intégration de DNS à Active<br />

Directory<br />

Configurer des zones DNS intégrées à Active Directory<br />

Configurer DNS en lecture seule<br />

Configurer les objets et les relations d'approbation<br />

Configurer les objets Active Directory<br />

Automatiser la gestion des objets AD DS<br />

Déléguer l'administration des objets AD DS<br />

Configurer des relations d'approbation<br />

Configurer les sites et la réplication<br />

Connaître les principes de base de la réplication AD DS<br />

Configurer les sites AD DS<br />

Configurer et surveiller la réplication<br />

Créer et configurer des stratégies de groupes<br />

Comprendre la fonction des objets stratégie de groupe (Group<br />

Policy Objects - GPO)<br />

Définir le champ d'application d'un GPO<br />

Evaluer la stratégie résultante<br />

Gérer les GPO<br />

Déléguer l'administration des stratégies de groupe<br />

Configurer l'environnement utilisateur <strong>avec</strong> les stratégies de<br />

groupe<br />

Paramétrer un GPO<br />

190<br />

Utiliser les GPO pour attribuer des scripts ou rediriger les dossiers<br />

spéciaux<br />

Configurer les modèles d'administration<br />

Déployer les applications au moyen de GPO<br />

Sécuriser l'environnement <strong>avec</strong> les stratégies de groupes<br />

Configurer les stratégies de sécurité<br />

Mettre en place des stratégies de mot de passe spécifiques<br />

Contraindre l'appartenance aux groupes locaux et l'accès aux<br />

applications<br />

Uniformiser le paramétrage <strong>avec</strong> les modèles de sécurité<br />

Etablir un plan de supervision d'ADDS<br />

Utiliser les journaux d'événements pour déterminer l'état d'AD DS<br />

Superviser les serveurs AD DS <strong>avec</strong> le Moniteur de Fiabilité et de<br />

Performances<br />

Auditer les accès à l'annuaire<br />

Etablir un plan de maintenance d'ADDS<br />

Assurer la maintenance des contrôleurs de domaine<br />

Sauvegarder AD DS<br />

Restaurer AD DS<br />

Dépannage<br />

Dépanner AD DS<br />

Résoudre les problèmes d'intégration DNS ; AD DS<br />

Résoudre les problèmes de réplication AD DS<br />

Résoudre les problèmes de stratégies de groupe<br />

Comprendre les principes de base<br />

Résoudre les problèmes d'applicabilité<br />

Résoudre les problèmes de paramétrage<br />

Mettre en place une infrastructure Active Directory (atelier<br />

d'une journée)<br />

Avoir une vue globale du processus de déploiement


Terminal server,<br />

administration sous<br />

Windows 2008<br />

Durée 2 jours<br />

Objectifs<br />

Chaque nouvelle version de Windows Server amène son lot de<br />

nouveautés dans divers domaines, et Terminal Server sous<br />

Windows 2008 ne fait pas exception à la règle. A l'issue de cette<br />

formation Terminal server, les participants seront en mesure<br />

d'identifier les nouvelles fonctionnalités des serveurs de<br />

terminaux sous Windows Server 2008, telles que les applications<br />

intégrées ou la passerelle web, et d'en assurer la mise en service<br />

et la maintenance.<br />

Cette formation Terminal server vous permettra de:<br />

- Savoir installer, configurer, gérer un serveur Terminal Services<br />

- Être en mesure de dépanner des serveurs de terminaux sous<br />

Windows Server 2008<br />

- Apprendre à garantir l'accès aux applications centralisées à<br />

travers une passerelle Web<br />

- Rendre les applications accessibles <strong>avec</strong> HTTP en éliminant le<br />

besoin d'un VPN<br />

- Savoir comment simplifier la mobilité le télétravail et les<br />

partenariats<br />

- Rendre plus simple, du point de vue de l'utilisateur, l'intégration<br />

des applications virtualisées<br />

Participants<br />

Administrateurs système Windows<br />

Pré-requis<br />

Bonnes connaissances des systèmes Windows Server et des<br />

protocoles réseau TCP/IP<br />

Travaux pratiques<br />

Les nombreux travaux pratiques proposés lors de cette formation<br />

Terminal server fourniront aux participants une expérience<br />

pratique de l'implémentation et du support de Windows Server<br />

2008 :<br />

- Configurer les fonctionnalités de base de TS<br />

- Configurer un serveur de licences TS<br />

- Configurer et dépanner les connexions<br />

- Gérer les ressources<br />

- Configurer TS Web Access<br />

- Gérer et surveiller TS<br />

Contenu<br />

Configurer les fonctionnalités de base d'un serveur Terminal<br />

Services (TS)Configurer les rôles TS<br />

Paramétrage avancé<br />

Gérer les licences<br />

Configurer le système de licences<br />

Gérer les licences<br />

Configurer et dépanner les connexions<br />

Configurer les propriétés des connexions<br />

Configuration à l'aide des GPO<br />

Dépanner Terminal Server<br />

Gérer les ressources<br />

Installer des applications<br />

Configurer l'accès distant aux applications<br />

Configurer les imprimantes<br />

Configurer TS Web Access<br />

Installation du service<br />

Configurer Session Broker<br />

Configuration pour une ferme de serveurs en load balancing<br />

191<br />

Gérer et surveiller TS gateway<br />

Configuration de la passerelle<br />

Dépannage des problèmes de connexions<br />

Gérer et surveiller Terminal Serveur<br />

Gestion courante des connexion<br />

Surveillance des connexions<br />

Configurer WSRM pour TS


Notre site de Mérignac<br />

Plan d'accès<br />

En venant du Nord, de Paris, de Bordeaux-lac :<br />

o Rocade sortie 11a. : direction : Centre Hôtelier Parc d’Activités<br />

o Prendre l'avenue J.F. Kennedy, à droite.<br />

o Juste avant le panneau sortie "Mérignac," tournez première à droite : allée des acacias,<br />

flèche Mérignac Innolin<br />

o La rue du Golf est au bout à droite.<br />

En venant du sud, de Bayonne, de Toulouse :<br />

Rocade sortie : 11<br />

Prendre direction Chemin Long, à droite<br />

Au premier feu rouge, tourner à gauche en contournant la menuiserie Lapeyre, direction Parc<br />

d’activités, Centre hôtelier,<br />

Repasser par-dessus la rocade.<br />

Juste avant le panneau sortie "Mérignac", tournez première à droite : allée des acacias, flèche<br />

Mérignac Innolin.<br />

En venant de l’aéroport :<br />

Au rond point du Mercure, prendre la direction Centre Hôtelier, Parc d’Activités.<br />

Après un rond-point, juste après le panneau entrée "Mérignac", tournez à gauche allée des<br />

acacias, flèche Parc Mérignac Innolin.<br />

La rue du Golf est au bout à droite.<br />

192


Bon de commande<br />

A adresser au plus tard 2 semaines avant le début du cours à :<br />

TechnoWide – Parc Innolin - 3 rue du Golf – 33700 MERIGNAC<br />

SIRET : 484 986 393 00011 – TVA : FR 284 849 863 93<br />

Centre de formation enregistré sous le numéro 72 33 06815 33<br />

auprès du préfet de région Aquitaine<br />

Pour toute demande d’information, vous pouvez nous contacter au : 06 89 17 94 94<br />

Informations pour facturation<br />

Société :…………………………………………… Département :……………………………………….<br />

Adresse :……………………………………………………………………………………………………..<br />

Adresse de Facturation (si différente) :<br />

………………………………………………………………………<br />

Code Postal :……………………………………… Ville : ………………………………………………….<br />

N° de commande :………………………………..N° SIRET : ……………………………………………<br />

Nom de l’acheteur :………………………………Nom Resp. Comptabilité :…………………………..<br />

Tel. Acheteur :…………………………..……….. Tel Comptabilité : ……………………………………<br />

Fax :………………………………………………. E-mail : ………………………………………………..<br />

Indiquer le cas échéant le NOM et l’ADRESSE de l’organisme collecteur prenant en charge la<br />

formation et les conditions négociées.<br />

Informations sur le ou les stagiaires<br />

Nom et Prénom :………………………………… Nom et Prénom :…………………………………….<br />

Nom et Prénom :………………………………… Nom et Prénom :…………………………………….<br />

Nom et Prénom :………………………………… Nom et Prénom :…………………………………….<br />

Nom et Prénom :………………………………… Nom et Prénom:……………………………………..<br />

Informations sur la session de Formation<br />

Intitulé du cours Dates PU HT Qty TOTAL HT<br />

Le signataire, dûment habilité à engager la responsabilité de sa Société, reconnaît avoir pris<br />

connaissance des Conditions Générales de Vente de TechnoWide et les accepte comme faisant<br />

partie intégrante du contrat né de la présente entre les Parties.<br />

Faire précéder de la mention manuscrite « Bon pour accord »<br />

Date Cachet et Signature<br />

•Délai de paiement : à réception de facture.<br />

•Toute annulation d’inscription doit être signalée par téléphone et confirmée par écrit. Une<br />

annulation intervenant plus de deux semaines avant le début du stage, ne donnera lieu à aucune<br />

facturation. Passé ce délai, la totalité du coût du stage vous sera facturée.<br />

193


Conditions Générales de Vente de Formation<br />

Commande<br />

Toute inscription doit faire l’objet d’un bon de<br />

commande.<br />

Les commandes sont reçues à l’adresse indiquée<br />

sur le Bon de Commande.<br />

Les options de réservation demandées par<br />

téléphone ou par mail ne sont validées qu’à<br />

réception par TechnoWide d’un Bon de Commande<br />

émis par la Société, dûment complété, et ce au plus<br />

tard 15 jours avant le début du cours.<br />

Avant de s’inscrire et afin de permettre aux<br />

stagiaires de suivre les formations dans les<br />

meilleures conditions et de profiter au maximum des<br />

informations délivrées pendant le cours, il est<br />

recommandé de vérifier les pré-requis pour chacun<br />

des modules. Il garantie l’homogénéité des sessions<br />

et le respect du planning.<br />

Par conséquent, TechnoWide ne peut être tenu<br />

responsable de la non-atteinte des objectifs prévus<br />

par les cours ou des difficultés de compréhension<br />

par le ou les stagiaires si les pré-requis spécifiés ne<br />

sont pas respectés.<br />

A l’issue de la session de formation, chaque<br />

stagiaire reçoit une attestation de présence.<br />

TechnoWide est habilité à délivrer des conventions<br />

de formation et ses factures de formation valent<br />

convention de formation.<br />

Numéro de déclaration d'activité : 72 33 06815 33<br />

Prise en charge par un organisme collecteur<br />

Tout client souhaitant faire prendre en charge son<br />

projet de formation auprès d’un organisme<br />

collecteur s’engage à retourner à celui-ci tous les<br />

éléments nécessaires avant le début de la formation<br />

pour la prise en compte effective.<br />

A défaut, le Client sera facturé directement par<br />

TechnoWide et à ce titre s’engage à lui régler la<br />

formation commandée.<br />

Tarifs<br />

Les prix doivent être majoré de la TVA (19,6%)<br />

Paiement<br />

Une facture sera établie à l’issue de la formation, et<br />

payable à réception par virement bancaire à l’ordre<br />

de TechnoWide :<br />

Titulaire : TechnoWide<br />

Banque : Crédit Mutuel du Sud-Ouest<br />

RIB : 15589 33553 06912398643 04<br />

Annulation<br />

Toute annulation d’inscription doit être signalée par<br />

téléphone et confirmée par écrit. Une annulation<br />

intervenant plus de deux semaines avant le début du<br />

stage, ne donnera lieu à aucune facturation. Passé<br />

ce délai, la totalité du coût du stage vous sera<br />

facturée<br />

Matériel pédagogique<br />

Des supports de cours sont remis par le Centre de<br />

Formation au début de chaque session et sont<br />

compris dans les frais de participation.<br />

TechnoWide conserve néanmoins l’intégralité des<br />

droits d’auteur relatifs au contenu des stages et des<br />

supports de cours spécifiques remis à chaque<br />

stagiaire.<br />

Toute reproduction, modification ou divulgation à des<br />

tiers de tout ou partie de ces stages ou documents,<br />

sous quelque forme que ce soit, est formellement<br />

interdite.<br />

Pour toutes les formations <strong>avec</strong> travaux pratiques,<br />

les stagiaires ont à leur disposition un poste PC par<br />

personne.<br />

Horaires<br />

De 9 h 00 à 9 h 15 : accueil des participants.<br />

De 9 h 15 à 17 h : déroulement des cours.<br />

Pour le midi, les horaires sont ajustables en accord<br />

<strong>avec</strong> le formateur.<br />

Séjour<br />

Les sessions de formation ont lieu soit dans notre<br />

Centre de Formation à Mérignac, soit sur votre site.<br />

Le déjeuner du midi n’étant pas compris dans le coût<br />

de la formation, celui-ci reste à votre charge.<br />

La recherche et la réservation d’un lieu<br />

d’hébergement sont également à la charge du client.<br />

Divers<br />

TechnoWide se réserve le droit de modifier ou<br />

d’adapter le programme des stages en fonction de<br />

l’évolution des technologies.<br />

TechnoWide ne peut être tenu responsable des<br />

objets ou effets personnels apportés par les<br />

participants aux stages.<br />

194

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!