Accueil du site Nos formations Découvrez l'équipe Nos locaux Un équipement de pointe Financer votre formation Contactez nous
 
 
 

 
 

     
  FORMATIONS  
ANALYSTE PROGRAMMEUR
Objectif : Acquérir une connaissance approfondie et opérationnelle de l’analyse et de la programmation
Public : Analyste programmeur
Pré-requis : Avoir des connaissances en programmation
Durée de la formation : 40 jours (280 heures)
Horaire : 9h30-17h30
                   
Contenu de la formation :
PEDAGOGIE :

• 40 % Exposé magistral
• 50 % mise en application pratique
• 10 % Réalisation de projets


MODULE 1
LE LANGAGE C


1. CONCEPTS FONDAMENTAUX
A) PRESENTATION
• Qu’est-ce que le langage C ?
• C et la norme ANSI
• Connaissances et ressources
• Configuration de l’ordinateur
• Matériel
• Logiciel

B) CONCEPTS FONDAMENTAUX
• Principes de base
• Constantes et variables
• Expressions
• Instructions
• Blocs d’instructions
• Structure d’une fonction C
• Détermination du type
• Attribution des noms
• Arguments de fonctions C
• Début et fin d’une fonction
• Corps de la fonction
• Appel d’une fonction

C) DEBUTER LE PREMIER PROGRAMME C
• Un exemple C très simple
• Commentaires
• La directive #include
• Fichiers en-têtes
• La fonction main ( )
• Le caractère saut de ligne (/n)
• L’instruction return
• La fonction exit ( )
• Le type void
• Compilation et liaison
• Bogues et erreurs
• Déboguer le programme

D) NOMS ET TYPES DE DONNEES
• Les mots clés C
• Type char
• Les variables caractère
• Constantes caractère
• Caractère d’échappement (\)
• Affichage de caractères
• Type int
• Déclarer des variables entières
• Afficher les codes numériques
• Type float
• Déclarer des variables réelles
• Indicateur de formats réel (% f)
• Type double
• Notation scientifique
• Nommer une variable

E) LECTURE ET ECRITURE DES E/S STANDARDS
• Entrées/sorties standards
• Fonction getc( )
• Fonction getchar( )
• Fonction putc( )
• Autre fonction d’écriture : putchar ( )
• La fonction printf
• Conversion de nombres hexadécimaux
• Les longueurs d’un champ

2. OPERATEURS ET TRAITEMENTS CONDITIONNELS

A) GESTION DE DONNEES A L’AIDE D’OPERATEURS
• Opérateur arithmétique d’affectation
• L’opérateur d’affectation
• Combiner opérateurs d’affectation et opérateurs arithmétiques
• Nombres positifs et nombres négatifs
• Incrémentation et décrémentation d’un point
• Opérateurs relationnels
• L’opérateur de conversion

B) TRAITEMENTS REPETITIFS
• L’instruction for
• L’instruction nulle
• Ajout d’expressions à l’instruction for
• Boucle while
• Une boucle while infinie
• La boucle do-while
• Boucles imbriquées

C) LES OPERATEURS LOGIQUES
• L’opérateur sizeof
• L’opérateur ET (&&)
• L’opérateur logique OU (||)
• L’opérateur logique NON ( !)
• Traitement binaire
• Opérateurs bitwise
• Opérateurs de décalage
• L’opérateur conditionnel

D) MODIFICATEURS DE DONNEES
• Modification du signe
o signed
o unsigned
• Modification de la taille des données
• Modificateur short
• Modificateur long

E) FONCTIONS MATHEMATIQUES
• Fonctions mathématiques
• Fonctions sin( ), cos( ) et tan( )
• Fonctions pow( ) et sqrt ( )

F) INSTRUCTIONS CONDITIONNELLES
• Traitements conditionnels :
- if-else
- if imbriquées
- switch
- break
• Sortir d’une boucle infinie
- continue
- got

3. POINTEURS ET TABLEAUX
A) POINTEURS
• Qu’est-ce qu’un pointeur ?
• Adresse et contenu
• L’opérateur d’adresse (&)
• Déclaration de pointeurs
• L’opérateur d’indirection (*)
• Pointeurs nuls
• Mise à jour de variables à l’aide de pointeurs
• Pointeurs multiples

B) STOCKAGE DE DONNEES SIMILAIRES
• Qu’est-ce qu’un tableau ?
• Déclarer des tableaux
• Indexer des tableaux
• Initialiser des tableaux
• Taille des tableaux
• Tableaux et pointeurs
• Afficher un tableau de caractères
• Tableaux à plusieurs dimensions

C) GESTION DE CHAINES
• Qu’est-ce qu’une chaîne ?
• Déclaration de chaînes
• Initialiser des chaînes
• Chaînes constantes et constantes caractère
• Longueur d’une chaîne
• Fonction strlen( )
• Copie de chaînes
• Lecture et écriture de chaînes :
- gets( ) et puts( )
- scanf( )

D) PORTEES ET CLASSES D’ENREGISTREMENT
• Masquage de données
• Portée locale
• Portée de fonction
• Portée globale
• Indicateurs de classes de stockage :
- static/auto
• Portée de fichier et hiérarchie des portées :
- register
- extern
• Modificateurs de classes de stockage :
- const
- volatile

4. FONCTION ET AFFECTATION DYNAMIQUE DE MEMOIRE
A) FONCTION C
• Déclaration de fonction et définition
• Prototypage de fonctions
• Fonctions sans arguments
• Nombre fixe et variable d’arguments
• Programmation structurée

B) IMPLEMENTATION DE POINTEURS
• Arithmétique des pointeurs
• Taille scalaire des pointeurs
• Soustraction de pointeurs
• Pointeurs et tableaux
• Accès aux tableaux
• Pointeurs et fonctions
• Les pointeurs et les tableaux
• Passer des pointeurs
• Passer des tableaux à plusieurs dimensions
• Tableaux de pointeurs
• Pointer vers des fonctions

A) AFFECTATION DE MEMOIRE
• Allocation dynamique de mémoire
• Fonction malloc( )
• Libération de la mémoire
• Fonction calloc( )
• Fonction realloc( )

B) AUTRES TYPES ET FONCTIONS
• Type enum
• Déclarer le type enum
• Affecter des valeurs aux noms énumérés
• Définitions typedef
• Utilité de typedef
• Fonctions récurrentes
• Arguments de ligne de commande
• Réception des arguments de ligne de commande

5. CONCEPT AVANCES
A) STRUCTURES
• Qu’est-ce qu’une structure ?
• Déclarer des structures
• Définir des variables de structure
• Lecture de membres de structure
• Initialiser des structures
• Structures et appels de fonctions
• Pointer vers des structures
• L’opérateur (->)
• Tableaux de structures
• Structures imbriquées
• Référencer des structures

B) UNIONS
• Qu’est-ce qu’une union ?
• Déclarer des unions
• Définir des variables d’union
• Opérateurs (.) et (->)
• Unions et structures
• Initialiser une union
• Taille d’une union
• Implémentation d’unions
• Emplacement partagé
• Imbriquer une union dans une structure
• Définir des champs binaires

C) ENTREES-SORTIES SUR LES FICHIERS DISQUE
• Les fonctions :Fopen, Fread, Fclose, Fwrite, Feof…
• Traitement de chaînes strcpy
• Fichiers et flux
• Qu’est-ce qu’un fichier ?
• Qu’est-ce qu’un flux ?
• Buffers d’E/S
• Concepts fondamentaux : Pointeurs de la structure FILE

Ouverture et fermeture d’un fichier
Lecture et écriture de fichiers disque

• Traitement caractère par caractère
• Traitement ligne à ligne
• Traitement par bloc
• Accès aléatoire aux fichiers disque
• Fonctions fseek( ) et ftell( )
• Fonction rewind( )
• Lecture et écriture de données binaires
• Fonction fscanf( ) et fprintf( )
• Rediriger des flux standards

D) LE PREPROCESSEUR C
• Qu’est-ce que le pré processeur C ?
• Pré processeur et compilateur
• Directives #define et #undef
• Des macros aux airs de fonctions
• Compilation conditionnelle
• Directives #ifdef et #endif
• Directive #ifndef
• Directives #if, #elif et #else
• Imbrication et compilation conditionnelle
• Exercice

MODULE 2
JAVA


1. LES ELEMENTS DU LANGAGE
• Le jeu de caractères
• Les espaces
• Les commentaires
• Les éléments syntaxiques
• Les types et les variables
• Les instructions et les blocs

2. LA PROGRAMMATION ORIENTEE OBJET
• Les classes
• Les méthodes
• Les objets
• Transmettre des messages
• Les constructeurs
• L’héritage
• Modificateurs de classes et de composants
• Les interfaces
• L’organisation avec des classes intégrées
• Utiliser des bibliothèques de classes Java du JDK
• Créer ses propres modules

3. LES APPLICATIONS
• Création d’une application de la ligne de commandes
• Utiliser une interface utilisateur graphique (GUI)
• Attribution des paramètres aux applications
• La ligne de commandes

4. LES APPLETS POUR LE WEB
• Le fonctionnement d’une applet
• Les bases de la création d’une applet
• L’intégration dans le document HTML
• Attribuer des paramètres de fichiers HTML à des applets

5. LES ERREURS ET LES EXCEPTIONS EN JAVA
• Les throwables
• Les erreurs
• Les exceptions

6. ENTREES/SORTIES ET FLUX EN JAVA
• Applets et applications
• Flux de caractères d’octets et d’objets
• Entrées/sorties par défaut dans les applications
• Sortie avec l’Unicode 16 bits
• Les méthodes universelles du module java.io
• Entrées/sorties des types de base
• Les fichiers et les flux d’octets
• La classe RandomAccessFile
• Gestion des fichiers
• Les flux d’objets
• Surveillance des flux de données avec la classe StreamTokenizer
• Charger les fichiers à partir des applets

7. SWING – LES COMPOSANTS GUI
• JApplet
• JWindow
• JFrame et création d’un Jframe
• JDialog/JOptionPane/JPanel…
• Boîte de dialogue Swing avec JOptionPane
• JinternalFrame/JLabel/JButton…

8. AWT – LES CLASSES CONTAINER
• Utiliser des classes Container
• La classe Panel
• La classe Applet
• La classe Window
• La classe Frame
• La classe Dialog
• Insérer les menus
• Les éléments CheckBoxMenu
• Créer et utiliser des menus déroulants
• Boîtes de dialogue par défaut

9. AWT – LES ELEMENTS DE CONTROLE
• Rédiger des étiquettes
• Les boutons de contrôle des programmes
• Les fenêtres à choix multiples
• Créer et utiliser des cases à cocher
• Groupes de cases à cocher
• Créer des zones de listes et de texte
• Créer des barres de défilement

10. LES ELEMENTS DE CONTROLE
• Le gestionnaire de mise en page
• Le gestionnaire FlowLayout
• Le gestionnaire BorderLayout
• Le gestionnaire GridLayout
• Le gestionnaire GridBagLayout
• Le gestionnaire CardLayout
• Le gestionnaire BoxLayout
• Le positionnement sans gestionnaire

11. TRAITEMENT DES EVENEMENTS DANS LES APPLETS ET LES APPLICATIONS JAVA
• Comparaison des deux modèles de traitement d’évènements
• Traitement d’évènements GUI
• Fermer une fenêtre ou une application Windows

12. CREER DU TEXTE ET DES ELEMENTS GRAPHIQUES
• Créer des éléments graphiques via la classe Graphics
• Le texte dans les flots par défaut

13. LES OPERATIONS SIMULTANEES
• Utiliser une classe Thread
• Mettre en œuvre l’interface Runnable
• Exécuter plusieurs tâches simultanément
• Les démons

14. JAVA ET MULTIMEDIA
• Lire des graphiques
• Lire des fichiers audio
• Créer des animations avec Java
• Éditer des images dans Java

15. IMPRIMER SOUS JAVA
• Principe d’impression
• Les composants du module java.awt.print

16. SQL
• LID : langage d’interrogation des données
• La structure de l’ordre SELECT
• La sélection des lignes et des colonnes
• Le tri du résultat, la clause distinct
• Les différents types de jointure
• Les opérateurs ensemblistes
• La sous-interrogation
• Les expressions et les fonctions
• Les fonctions de groupe
• Le traitement des structures d’arbre
• La sélection avec verrouillage

17. LMD : langage de manipulation de données
• L’insertion, la mise à jour, la suppression
• La gestion des transactions

18. LDD : langage de définition des données
• Les types de données
• La création de différents objets : tables, vues, index, clusters, séquences, synonymes

19. ACCES AUX BASES DE DONNEES AVEC JAVA
• Généralités
• Accès aux bases de données avec JDBC
• Les accès à une base de données avec JDBC-ODBC
• Construire une connexion
• MetaData
• Les instructions d’accès aux bases de données
• ResultSet

20. ARCHITECTURES CLIENT/SERVEUR DANS JAVA
• La structure classique client/serveur
• Sérialisation
• RMI

21. LA SECURITE SOUS JAVA
• JDK 1.0.x
• JDK 1.1.x
• JDK 1.2.x

22. JAVABEANS
Le modèle de composant
Structure de base d’un JavaBean
Génération des JavaBeans
Les classes BeanInfo
BeanBox Tool

23. VUE D’ENSEMBLE DES OUTILS DE DEVELOPPEMENT
• MS Visual J++
• IBM Visual Age 1.2
• Java Workshop 2.0

24. COMPARATIF ENTRE C++ ET JAVA
• Les différences
• Les points communs de C++ et Java

25. LES ELEMENTS DU LANGAGE JAVA
• Les conventions de nom
• Les commentaires
• Affectation, Comparaison et calcul avec des opérateurs
• Les types boolean et les répétitions
• Aiguillages conditionnels
• Conversion de types

26. LES OUTILS : JDK & CO
• Le compilateur java, utilisation et options
• jdb – Le débogueur Java
• java – l’interpréteur de Byte-Code
• Appletviewer – Le test des applets
• javap – Désassemblage de Byte-Code
• javah – Intégration de code C natif
• jar –Les fichiers compressés
• La balise Applet pour utiliser des packages
• La structure fondamentale d’une documentation automatique javadoc

27. NAVIGATEUR
• La portabilité des programmes
• Netscape
• Microsoft Internet Explorer
• Opera

28. JNI – JAVA NATIVE INTERFACE
• Les types de données natif
• Déroulement de l’intégration d’une DLL partagée
• Vue d’ensemble des possibilités de la JNI
• Échange de chaînes

EXERCICES

MODULE 3
LE LANGAGE C++


1. INTRODUCTION
• Comparaison de C et C++
• Des outils de développement
• Extension procédurale par rapport au C
• Un exemple simple en C et C++
• C++ et Java
• C++ et Pascal

2. LA STRUCTURE D’UN PROGRAMME C++
• Les composantes d’un programme C++
• Identifier les objets dans un programme
• Les mots-clés de C++

3. LA BASE DE C++
• Les constantes : des valeurs stables
• Les variables : affectation de valeurs
• Les fonctions
• Les variables locales et les variables globales
• Les opérateurs

4. LES ALGORITHMES [TABLEAUX, LISTES, ARBRES ET GRAPHES]
• Tris sur tableaux
• Les fichiers Tableau.h et Tableau.cpp
• Tris sur listes chaînées
• Arbres
• Graphes

5. LES ALGORITHMES ET LA PROGRAMMATION STRUCTURÉS
• Les boucles

6. LES STRUCTURES DE DONNÉES COMPLEXES
• Les tableaux (arrays)
• Les chaînes (strings)
• Structures typiques en C++
• Les unions
• Les pointeurs
• Les alias pour les noms de variables
• Structure de la mémoire et zones mémoire

7. LES CONCEPTS DE LA PROGRAMMATION ORIENTÉE OBJET
• Les principes de la programmation orienté objet
• L’encapsulation des données
• L’héritage des propriétés
• Le polymorphisme

8. LES CLASSES
• Définition
• Accès protégé : principes et modalités
• Mise en place des classes
• Les constructeurs et les destructeurs
• Surcharge de fonctions
• Problème avec la surcharge
• Surcharge d’opérateurs
• Éléments statiques et constants
• Méthodes et classes constantes
• Simplification à l’aide du pointeur this
• Les fonctions amies (friend)
• Classes amies (friend)

9. L’HÉRITAGE DES CLASSES ET DES FONCTIONS
• Redéfinition de fonctions
• L’héritage multiple
• Un exemple complexe
• Illustration de l’héritage : les Entrées/Sorties et la manipulation de fichiers
• Objets des classes d’Entrée/Sortie et de messages d’erreurs
• Entrée/Sortie sur des fichiers

10. LE POLYMORPHISME
• Précisions sur les pointeurs
• Liaisons précoces et liaisons tardives
• Fonctions virtuelles, classes virtuelles

11. LES LISTES CHAINÉES : ACCÈS A PLUSIEURS LISTES

12. LES STRUCTURES GÉNÉRIQUES ET LES TEMPLATES
• Les macros
• Les fonctions génériques
• Les classes génériques
• La bibliothèque STL

13. CONCEPTION D’UN SYSTÈME COMPLEXE EN C++
• Les bases de conception
• Réalisation d’un répertoire des cours sous forme de liste chaînée
• La récursion : appel d’une fonction par elle même
• Trier des données en utilisant les modèles
• Les types d’erreurs classiques
• Des outils pour développer sans erreurs
• Routines de gestion d’erreurs en C et C++
• Message d’erreur et traitement des erreurs
• Message d’erreur dû à la valeur retournée
• Les exceptions

14. CONTROLE QUALITÉ DES APPLICATIONS
• Correction et adaptation du code
• Portabilité des applications
• Compatibilité avec les solutions standards
• Fiabilité des programmes
• Robustesse du code
• Convivialité
• Maintenance
• Efficacité et performances


MODULE 4
VISUAL C++


1. ARCHITECTURES DES MFC
• Structure des classes
• Principe du modèle Document-Vue
• Architecture d'une application Windows
• Utilisation des messages Windows

2. CREATION D'UNE INTERFACE UTILISATEUR
• Création de menus, boutons, listes, zones de texte
• Utilisation des vues standards (vues simples, vues avec ascenseurs, formulaires, listes, arbres,
vues « Rich-Edit »)
• Création de barres d'outils, de barres d'états et de barres de dialogues
• Utilisation de fenêtres simples et fenêtres partagées (splitter-windows)
• Création de boîtes de dialogues et d'onglets (property sheets)

3. GRAPHISME
• Structure des objets GDI
• Application pratique pour le graphisme

4. UTILISATION PRATIQUE DE L'ENVIRONNEMENT VISUAL C++ 6.0
• Utilisation de l'assistant de création d'applications
• Utilisation de ClassWizard pour gérer l'interaction avec l'utilisateur
• Utilisation de l'éditeur de ressources
• Utilisation du Component Gallery
• Intégration de composants OCX et Active-X

5. CONNEXION A UNE BASE DE DONNEES
• Approche ODBC
• Approche DAO
• Utilisation des vues formulaires pour bases de données
• Exécution de requêtes SQ. (Consultation, mise à jour, transaction...)
• Récupération des résultats

6. CREATION ET UTILISATION DE DLL
• Utilisation d'une DLL dans un C++
• Création d'une DLL utilisant les MFC
• Utilisation d'un segment de mémoire partagée pour une DLL
7. ARCHITECTURE DE COMPOSANTS
• Principes d'OLE, OLE2, DCOM et Active-X
• Intégration de composants OCX et Active-X
8. LA PROGRAMMATION MULTI-THREADS
• Architecture d'une application multi-threads
• Création de threads
• Mécanismes de synchronisations (sémaphores, mutex)

          
| Accueil | Formations | Mentions légales | Plan d'accès | Contact | Formateurs | Le centre |