Formation sur l'algorithmique et initiation à l'objet.

Présentation

Conçu pour les débutants en programmation. Cette formation commence par un apprentissage des notions de programmation procédurale communes à tous les langages (types de données, variables, opérateurs, instructions de contrôle, fonctions, tableaux...), avant d'aborder les notions propres aux langages orientés objet. La notion d'algorithme est abordée au départ, c'est une méthode logique qui permet de résoudre un problème dans l'objectif qu'il soit développé dans un langage de programmation.

Chaque notion est d'abord illustrée d'exemples d'implémentation en langages C, C++, C# et PHP. De nombreux exercices corrigés permettent de contrôler ses connaissances à chaque étape de l'apprentissage. Le cours d’introduction décrit les approches méthodiques de développement : du développement classique structuré (orienté fonctions) au développement contemporain (orienté bjet et services).  Explication des cinq concepts fondateurs de l’orienté-objet : objet, message, classe, héritage et polymorphisme.

Objectifs

  • La formation enseignée par des experts développeurs vous fera découvrir l'algorithmique et de l'analyse des données. Comment utiliser les méthodes usuelles de conception logique des programmes, pour la compréhension d'algorithmes plus complexes. Vous analyserez des exemples d'algorythmes et de programmes et notamment les processus logiques utilisés. À la fin du cours, le participant sera en mesure de comparer et d’expliquer les différences ou les similitudes entre l’approche classique orientée fonctions et celle orientée objet.

Public

  • Futurs développeurs ayant à maintenir ou rédiger des applications.
  • Autodidactes ou professionnels de tous horizons souhaitant s'initier à la programmation.
  • A tous ceux qui ont appris un langage "sur le tas" et ressentent le besoin d'approfondir leurs connaissances pour gagner en efficacité et en qualité et s'adapter plus facilement à de nouveaux langages.

Pré-requis

  • Aucun

Durée

  • 3 à 5 jours

Compléments d'informations

Objectif : (2 jours) Savoir utiliser

  • Diagramme Entité/Relation : les entités, attributs, relations et contraintes à partir d'un ensemble de besoin.
  • Utiliser de nombreuses techniques de modélisation de données.
  • Créer un modèle Entité Relation à partir d’un concept initial de base de données relationnelle. 
  • Optimiser la conception base de données relationnelle.

Introduction à la modélisation

  • Décrire les phases de la base de données et le cycle de développement applicatif.
  • Définir et identifier les objectifs, les hypothèses, les facteurs clés de performance et les problèmes.

Identifier les entités, attributs, relations

  • Identifier et établir le diagramme d’entités, d’attributs et les relations
  • Créer une relation entre deux entités et utiliser une matrice des relations.
  • Attribuer des identificateurs uniques

Valider le diagramme d’entités relations

  • Distinguer les entités des attributs.
  • Définir les standards de noms et d’abréviations.

Valider les relations

  • Résoudre les relations M:M.
  • Modèle de données hiérarchiques.
  • Examiner les relations récursives et exclusives.
  • Modéliser les hiérarchies.

Conception base de données relationnelle

  • Décider de conventions de noms et de règles.

 

Objectif : (2 jours)  Savoir utiliser
  • Environnement algorithmique et conventions
  • Principaux modèles de cycles de développement
  • Les traitements logiques
  • Notion de récursivité
  • La gestion des données
  • Les données abstraites
  • Les tris et recherches
  • Les méthodes numériques
  • Les algorithmes classiques
  • Les cinq concepts fondateurs de l’orienté-objet 

  • Objet
  • Message
  • Classe
  • Héritage
  • Polymorphisme

Objectif : (2 jours) Savoir utiliser

  • Variables et instructions d'affectation
  • Instructions d'écriture et de lecture
  • Les structures de choix et de répétition
  • Les tableaux
  • Les fonctions
  • Classes et objets
  • Propriétés des objets et des méthodes
  • Composition des objets
  • L'héritage
  • Le polymorphisme
  • Classes abstraites, interfaces et héritage multiple

Introduction à UML2

Objectif : (2 jours) Savoir utiliser

  • Comprendre le besoin de modélisations UML.
  • Lire et de concevoir des modeles UML.
  • Créer et à lire les diagrammes de classes, d’objets, de communication,
    de séquence, d’activités, de paquetages, de déploiement.

Introduction à l’UML

  • L’orienté objet
  • L'Agilité (XP,Scrum), RUP, UPEDU et la modélisation UML

Processus d’analyse et de définition fonctionnelle

  • Les besoins et des spécifications fonctionnelles
  • La structure des diagrammes UML : Structurels et comportementaux

Les différents diagrammes

  • Diagramme de cas d’utilisation (use case)
  • Diagramme de classes (modèle de domaine)
  • Diagramme d’activités
  • Diagramme de séquence

UML pour l'analyse et le programmeur

Objectif : (1 jour) Savoir utiliser

  • Diagramme de classes
  • Diagramme d’objets
  • Diagramme de communication
  • Diagramme de séquence
  • Diagramme d’activités
  • Diagramme de paquetages
  • Diagramme de déploiement
  • Diagramme d’états-transition