Objectifs de la formation

Comprendre les fondements de la programmation et de l’algorithmique. Le but de cette formation
initiation programmation est de vous donner de solide base en programmation pour pouvoir aborder
n’importe quel langage de programmation. Tous les aspects essentiels de la programmation seront
abordés. De la programmation procédurale à la programmation événementielle, et la programmation
objet.

A qui s’adresse la formation

Cette formation initiation programmation est destinée à toute personne ayant à programmer dans un
langage structuré, objet ou de script et désirant acquérir les bases de la programmation
indépendamment d’une syntaxe particulière.

Pré-requis :

Aucun

Travax pratiques :

Ce stage contient plus de 60% de travaux pratiques.

Contenu de la formation

Du besoin utilisateur au programme.
La chaîne globale.
Nécessité de paliers entre la pensée humaine et les séquences binaires 01010001…
Les différentes phases : sources, compilation, binaire
Le cas particulier d’un interpréteur Ne pas tout réécrire (bibliothèques, éditions de liens, et
exécutables) Algorithme.
Les « atomes » pour s’exprimer
Apprendre à formuler un traitement (rien ne s’invente)
Utilisation d’un pseudo langage
Exemples d’algorithme bien conçu, « mal » conçu, et … faux !
Les composants d’un programme.
Variables et types de données.

Pourquoi typer les variables
Exemples de type (entier, réel, caractères, …)
Exemples de problèmes liés aux types Les opérateurs disponibles (+, -, /, */ %, …)
Le confort des tableaux et des structures.
La « grammaire » d’un langage.
Les blocs de programme (début … fin)
Le test d’une expression (si … alors … sinon …)
La boucle (tant que …)
Les conforts syntaxiques.
Un premier programme.
Présentation de l’environnement de développement
Un premier programme simple en Java.
Compilation et exécution.
Bien écrire ses programmes.
Structurer son programme.
La nécessité d’utiliser des procédures ou des fonctions
Différences conceptuelles et syntaxiques entre les deux
Passer des arguments à une fonction (prototype, code retour)
Passages par valeur et par adresse dans une fonction.
Les bibliothèques.
Ne pas réécrire ce qui existe déjà (librairies)
Ecrire ses propres librairies
Comment les utiliser dans d’autres programmes ?
L’importance de la présentation.
Les bonnes habitudes pour anticiper les erreurs
Les commentaires utiles
L’accès aux données.
Les SGBD (Systèmes de Gestion de Bases de Données)
Fonctions spécifiques d’un SGBD par rapport au système d’exploitation.
Quelques acteurs : EXCEL, Access, ORACLE, SQL Server, MySQL, ….

Les traitements offerts par le SGBD (stockage, extraction, …)
Que signifie Client/Serveur ?
Comment récupérer les données d’une base dans un programme ?
Comment écrire les données d’un programme dans une base ?
Les bases du SQL (Structured Query Language) « Parler » avec les bases de données en SQL
Créer une table Stocker des données dans une table (insert) Les modifier (update) Les supprimer
(delete) Extraire les données (requêtes select simples)
Communiquer avec les fichiers
Le cycle classique : ouvrir, lire ou écrire ou modifier, puis fermer.
Le cas particulier du clavier et de l’écran
L’environnement de développement.
Savoir utiliser son environnement.
Peut-on développer sous un traitement de texte quelconque ?
Les apports de tel ou tel atelier (Visual Studio, Eclipse, …)
L’aide en ligne
Utiliser un debbugeur.
Fonctionnement d’un debbugeur.
Les points d’arrêts (breakpoint)
Connaître la valeur des variables pendant l’exécution.
Les différents types de langage
Les langages de programmation procédurale.
Pourquoi parle-t-on de procédurale ?
Les exemples du C, Cobol, … Leurs limites et l’apport de l’objet.
Les langages de programmation objet.

Que signifie « Programmer objet « ?
La « discipline» imposée par la programmation objet
Liens entre classes, instances, et objets
Méthodes et propriétés d’une classe
Exemples de programmes objets en java
L’approche objet de la programmation par composants (services).
Les langages de programmation événementielle.
Associer des traitements à des événements (clic, drag and drop, …)
Problématiques spécifiques (gestion du contexte)
Les langages de programmation de script.
Rôle de l’interpréteur
L’exemple des shellscripts d’exploitation (powershell, bash)
Le WEB avec javascript.
Synthèse.
Quels langages sont utilisés selon les natures des projets (WEB, scientifique