Introduction à la programmation informatique
Bernard Amade
previous page
next page
Programmer?
Table of contents
Introduction à la programmation informatique
Programmer?
1. Qu’est-ce qu’un programme ?
1.1. Un exemple du degré zero
1.2. Plus sophistiqué
1.3. Programmation "périphérique" §§
1.4. Qu’est-ce qu’un programme? Premières approximations …
1.5. Qu’est-ce qu’un programme? Premières règles … §§
2. Les éléments d’un programme
2.1. Les données de base: première approche
2.2. Les variables
2.2.1. Typage faible §§
2.2.2. Typage "fort"
2.2.3. Problèmes et règles concernant l’usage des variables §§
3. Les fonctions
3.1. Lire et écrire la documentation
4. Retour sur les types: quelques structures de données
4.1. Tableaux
4.2. Listes
4.3. Dictionnaires
5. Blocs de code, portée, modularité
5.1. Découpages
5.1.1. Retour sur les principes de programmation
5.1.2. Modularité §§
5.1.3. Organisation de la modularité
5.1.4. Effets de bord
5.1.5. Blocs de code
5.2. Choix
5.3. Boucles
5.3.1. Boucles à test bas (pour mémoire)
5.3.2. Problèmes généraux des boucles (pour mémoire)
6. Digression: Les symboles et la vision du bas niveau §§
6.1. Langages interprétés, langages compilés
6.2. Au niveau le plus bas….
6.3. Représentation des données
6.4. Processeurs
6.5. Parallélisme
6.6. Manipulation de données, gestion de la mémoire
6.7. Implantation des structures de données
6.7.1. Tableaux §§
6.7.2. Listes
6.7.3. Table de Hachage
7. Les types composites §§
7.1. Agrégats §§
7.2. "Objets" §§
8. La programmation "à objets"
8.1. Définitions dérivées.
8.1.1. Définition d’un objet à partir d’un autre objet: délégation
8.1.2. Définition d’un objet à partir d’un autre objet: définition différentielle (héritage)
8.2. Abstractions
8.2.1. Polymorphisme
8.2.2. Classes abstraites
8.2.3. Interfaces
8.3. La documentation
9. Types fonction
10. Réflexion/Introspection
11. Types paramétrés
12. Recommandations générales
12.1. Quelques problèmes classiques:
12.1.1. Erreurs, rapports, §§
12.1.2. Ressources §§
12.1.3. Concurrence d’accès
12.2. De quelques principes
13. Conclusions §§
ANNEXE A: les langages de programmation
14. Comparer des langages de programmation?
14.1. Points de comparaison
14.2. Cobol, RPG
14.3. Basics
14.4. Php, Perl, Javascript
14.5. Autres paradigmes "exotiques"
14.6. C
14.7. Java, C#
14.8. Les "flots" fonctionnels
14.9. Langages d’enseignement
14.10. Langages spécifiques : SQL
14.11. Formalismes spécifiques : XML (et la famille SGML)
14.12. Langages spécifiques : langages de commandes
14.13. Langages spécifiques : les DSL
Annexe B: Les développeurs
15. Qui sont les "développeurs"?
15.1. Pourquoi se préoccuper des programmeurs?
15.2. Les métiers "développeur"?
15.3. Comment qualifier un "développeur"?
16. Activités, savoir-faires et connaissances
16.1. Les grands axes de compétences
16.2. Types d’organisation des équipes
16.3. Quelques opinions de développeurs sur le contenu de leur métier
16.4. Les outils du développeur
Annexe C : Glossaire
Annexe D : Exercices: compléments et illustrations
previous page
start
next page