Les différentes parties du site


Les cours sont répartis en cinq parties:

  1. Base de la programmation
  2. Programmation Objet
  3. Interfaces graphiques
  4. Langage Web
  5. Base de données

Les cours concernant les bases de la programmation existent en quatre langages: Pascal, Java, C++ et Python.

Pour la programmation objet: ils existent uniquement en Pascal, Java et C++. Le cours de programmation objet en Python n'est pas encore réalisé, mais vous pouvez déjà accéder aux exercices.

Les langages et logiciels utilisés, ainsi que l'organisation des exercices et du cours, dépendent de la partie concernée.

Les parties Langage Web et Programmation Objet nécessitent d'avoir acquis les bases de la programmation.

En Pascal, la partie Interface graphique est confondue avec le premier cours sur la programmation objet. En Java, ces deux cours sont distincts et il faut nécessairement avoir lu le premier cours de programmation objet avant d'aborder le cours concernant la réalisation d'interfaces graphiques.

La partie Base de données est indépendante des autres, mis à part le cours sur l'accès aux bases de données par programmation (voir description de la partie Base de données pour plus de détails).

Bases de la programmation

Il s'agit des principes fondamentaux de la programmation. Vous trouverez dans cette partie:

  1. pour les langages Java, C++ et Python: un cours intitulé Préliminaires.
  2. dans les quatre langages: un cours intitulé Première Notions, un cours sur les sous-programmes, et un cours sur les structures de controles.
  3. pour les langages Pascal, Java, C++ : un cours sur les tableaux.
  4. pour les langages Pascal et C++ : un cours sur les types structurés, les pointeurs et les listes.
  5. en Python uniquement: un cours sur les listes et dictionnaires.
  6. pour les langages Pascal et Python: un cours sur les fichiers.

Il est indispensable de voir ces cours dans l'ordre où ils sont présentés dans le menu, car chaque cours utilise les notions du cours précédent.

Principe des exercices de programmation

Les exercices sont tous basés sur le même principe: vous devez ouvrir un projet existant qui contient déjà une partie du code, puis complèter ce programme de manière à le faire fonctionner. Pour récupérer ce projet, vous devez le télécharger depuis ce site et l'installer proprement sur votre machine (voir consignes).

Les parties déjà codées concernent des notions qui ne sont pas indispensables pour l'assimilation du cours. Cela vous permet donc de ne pas perdre du temps à programmer des choses que vous avez déjà compris.

En particulier, pour les langages Pascal et Java vous aurez l'interface graphique du programme (ou la fenêtre si vous préférez) qui sera déjà réalisée. Ce qui vous évitera de perdre du temps à faire du design.

Par exemple en ouvrant le projet Football (un exercice du cours "Première Notions"), vous récupérerez la fenêtre suivante:

Football.jpg, 32kB

Au début, il ne fonctionne pas. C'est à dire que si vous cliquez sur les boutons, il ne se passe strictement rien.

On vous demande alors d'ajouter du code à ce projet de manière à faire fonctionner les différents boutons (ici, But, Fin du match, Nouveau match).

Programmation Objet

Version Pascal

La version Pascal de cette partie contient deux cours.

Le premier cours porte sur l'utilisation de classes, en particulier celles qui permettent de construire l'interface graphique d'un programme Lazarus.

Dans le deuxième cours, vous apprendrez à définir vous même de nouvelles classes.

Comme dans la partie consacrée aux langages Web, je suppose ici que les bases de la programmation sont déjà bien assimilées.

Version Java

La version Java contient également deux cours de programmation objets. Dans le premier, vous trouverez les concepts de bases de la P.O.O: comment définir une classe, la notion d'héritage et les concepts associés ... Le second est centré sur la représentation de données à l'aide des classes génériques de Java: comment représenter des listes d'objets et des associations entre objets.

Version C++

Un seul cours de programmation objet C++ pour l'instant. Un deuxième cours est prévu sur l'utilisation des types génériques (liste, tableaux associatifs, ...) pour représenter des relations entre objets.

Version Python

Un seul cours de programmation objet Python pour l'instant.

Principe des exercices

Le principe des exercices est le même que dans la partie Base de la Programmation.

Interfaces graphiques

Dans cette partie vous apprendrez comment réaliser vous même des interfaces graphiques évoluées avec des composants variés (champ de texte, zone de texte, zone de liste, combo box, menus, barre d'outils, case à cocher, bouton radio, etc...) en utilisant l'E.D.I Lazarus (langage Pascal) ou NetBeans (langage Java avec le package Swing) ou le module Tkinter du langage Python.

En Pascal, le cours sur la réalisation d'interface graphique est confondu avec le premier cours de programmation objet.

En Java et Python, le cours sur le développement d'interface graphique est séparé de la programmation objet et il est nécessaire d'avoir lu le premier cours de programmation objet avant d'aborder la réalisation d'interfaces graphiques.

Langages Web

Cette partie contient un cours très sommaire sur le langage HTML, plusieurs cours sur le langage Php et un cours sur le langage Javascript.

Le cours sur HTML contient juste le minimum nécessaire pour pouvoir aborder les autres cours de cette partie.

Les cours sur Php utilisent le logiciel opensource Wamp (Windows Apache Mysql Php), que vous pouvez également télécharger à partir d'ici. Pour l'installer sur votre machine lisez les consignes de l'index général.

Mise à part le cours HTML, cette partie du cours ne peut être abordée qu'après avoir bien assimilé les bases de la programmation.

Principe des exercices

Un exercice est généralement un fichier (html, javascript ou php selon le cas) à complèter. Pour tester votre solution, le cours contient un lien vers ce fichier (généralement intitulé votre solution). En cliquant sur ce lien, vous verrez apparaitre votre solution dans le cadre de droite.

Un autre lien, généralement intitulé Corrigé, pointe vers le fichier complet, ou autrement dit, vers le corrigé de l'exercice. En cliquant dessus, vous verrez apparaitre le résultat tel qu'il devrait être dans le cadre droit.

Voici par exemple, les liens Votre solution et Corrigé d'un exercice du cours sur Javascript (pour déplacer une pièce cliquez dessus, puis sur la case où vous voulez la poser).

De manière générale, un exercice correspond à un fichier existant contenu dans le dossier Etudiant du cours. Pour réaliser l'exercice, vous devez donc d'abord ouvrir ce fichier avec un Editeur HTML, puis le modifier. Vous pouvez par exemple utililiser pour cela l'éditeur PSpad, que vous pouvez télécharger depuis ce cours.

Les exercices HTML et Javascript fonctionnent directement sous le navigateur Firefox. Par contre, pour les cours concernant Php, il vous faudra installer WAMP (le logiciel est également téléchargeable depuis ce site) sur votre machine ainsi que le cours lui même, en suivant les consignes d'installation.

Base de données

Les cours I, II et III

Les trois premiers cours (intitulés Cours I, II et III) concernent essentiellement le langage SQL et ne nécessitent aucune connaissance en programmation. Ils utilisent tous une base de données générée automatiquement par programme: la base de donnée BDVols. Il faut donc nécessairement les copier sur votre machine afin que les exemples de requêtes puissent s'exécuter.

Dans le cours I, on apprend:

Le cours II porte sur les requêtes permettant de modifier une base de données et sur les contraintes d'intégrité.

Dans le cours III, on approfondit l'utilisation de la requête SELECT avec les fonctions d'aggrégation et les sous-requêtes. Une autre partie de ce cours porte sur la gestion des privilèges.

Accès par programmation

Contrairement aux cours I, II et III, le lecteur aura besoin ici d'avoir acquis les bases de la programmation. Des connaissances sur le langage SQL sont également requises: plus particulièrement celles des cours I et II.

Ce cours est divisé en quatre parties: les principes généraux de l'accès aux bases de données par programmation, le cas de Php, celui de Pascal avec Lazarus et le cas du langage Java. Pour la partie Lazarus, il faudra avoir vu le cours I sur la programmation objet et la conception d'interfaces graphiques. Pour la partie Java, des notions de programmation objet sont nécessaires (cours I).

Merise

Ce cours décrit la partie modélisation des données de Merise, méthode d'analyse facilitant la conception d'une base de données.

Utilisation de la base de données BDVols

La base de donnée BDVols est automatiquement générée par programme. Elle sert à illustrer le cours à travers différents exemples de requêtes, que l'on peut directement exécuter depuis le site web du cours, à condition qu'il soit installé sur votre ordinateur. Le résultat de ces requêtes s'affiche alors dans le cadre droit.

Pour que cela fonctionne correctement, vous devez tout d'abord créer la base de donnée BDVols en cliquant sur le lien Créer BDVol (en haut du menu). Si la base de donnée existe déjà, il vaut mieux la supprimer (via le lien Suppr BDVol) au préalable afin d'éviter de récupérer une mauvaise version ou une base de données déjà altérée par des requêtes.

Principe des exercices

Les exercices SQL se divisent en deux catégories: des exercices théoriques à faire sur papier (souvant des extraits d'études de cas de l'ex BTS-IG) et les exercices pratiques à faire sous PhpMyAdmin (un utilitaire de Wamp qui vous permet d'éxécuter des requêtes).

Intelligence Artificielle

Cette partie s'adresse à des lecteurs déjà expérimentés en informatique (bac+4 ou bac+5). Elle contient pour l'instant deux cours: