322 membres inscrits | 1 connectés | 74 sujet(s) sur le forum dont 363 post(s) | Mardi 2 décembre 2008 à 09h48
fleche Tutorial
Lecture du tuto

Chapitre 1: Une histoire de programme

Bienvenue dans ce gros tuto sur le C/C++, ce chapitre est un petit peu une sorte d'introduction dans laquelle je vous présenterai le C/C++, leur utilisation, les créations réalisées avec. Je donnerai ces possibilités puis enfin je dévoilerai mon plan pour ce cours (qui pourra être modifier par la suite).

Présentation



Le C/C++, c'est quoi?


Tout d'abord sachez que le C et le C++ sont des langages de programmation distincts. On les met souvent ensemble car ils se ressemblent. Mais le C++ est comme une évolution du C, car il permet de faire beaucoup plus de choses.

Voyons tout d'abord le C:

Le C est un langage de programmation conçu pour la programmation système, c'est-à-dire pour créer des applications pour votre ordinateur. Le langage C a été utilisé pour rendre le système d'exploitation UNIX plus portable. Il a conservé de cela une très grande efficacité pour tout ce qui concerne le développement système. Ainsi la majorité des grands systèmes d'exploitation entre les années 1975 et 1993 ont été développés en C.

Ce langage est utilisé dans des domaines comme la programmation de microcontrôleurs, les calculs intensifs, l'écriture de systèmes d'exploitation et tous les modules où la rapidité de traitement est importante.

Malheureusement, le C a beaucoup de limitations : on ne peut pas faire de la programmation orientée objet ou de traitement des exceptions (on verra ce que c'est ?). Ainsi certains langages plus récent ont levé ces limitations, dont le C++ que nous allons présenter dans un instant. Le C a aussi inspiré le PHP qui est un langage de script pour le web et le JAVA qui est un langage de programmation entièrement orienté objet.

Maintenant au tour du C++ :

Le C++ est un langage de programmation permettant la programmation sous plusieurs formes comme, par exemple, la programmation orientée objet. Au cours des années 1990, C++ est le langage le plus utilisé au monde. Le langage C++ n'appartient à personne et par conséquent n'importe qui peut l'utiliser sans payer de droits.

En langage C, ++ est l'opérateur d'incrémentation, c'est-à-dire l'augmentation de la valeur d'une variable de 1. C'est pourquoi C++ porte ce nom : cela signifie que C++ est un niveau au-dessus du C. Il existe de nombreuses bibliothèques C++ en plus de celle qui est incluse dans la norme. Par ailleurs, C++ permet l'utilisation des nombreuses bibliothèques C existantes.

A la base, le C++ était appelé "C with classes" qui veut dire le C avec les classes, qui est en fait la base de la programmation orientée objet, par son créateur Bjarne Stroustrup alors qu'il travaillait pour Bell d'AT&T.

Voici une liste des améliorations, que j'ai simplifié, du C++ par rapport au C (mais vous comprendrez pas grands choses :-° ) :

- les opérateurs new et delete pour la gestion d'allocation mémoire ;
- le type de données bool (booléen) ;
- les références ;
- les classes, ainsi que tout ce qui y est lié : l'héritage, les fonctions membres, les fonctions membres virtuelles, les constructeurs et le destructeur ;
- la surcharge des opérateurs ;
- les templates ;
- la gestion d'exceptions ;

Il y en a bien plus, mais croyez moi au niveau où l'on va programmer, ceci est amplement suffisant, et encore, j'ai pas parlé de la STL qui va avec les templates.

Bien après ces brèves présentations, passons à leur possibilités.

Les possibilités



Dans cette partie, je parlerai surtout de programme créé en C/C++, mais aussi des deux "types" de programmes que l'on rencontre avec ces langages : les programmes en GUI et en console.

Tout d'abord, voyons ce qu'est un programme en console :

Qu'est-ce qu'une console


Tout le monde à envie de dire une station de jeux vidéos comme une Xbox 360, une Wii ou bien une PS3.

Et bien détrompez-vous ! Il s'agit d'une invite de commande. L'invite de commande sous windows c'est çà :

image utilisateur

Bien çà peut faire peur, mais vous allez vous y habituer puisque nos premiers programmes seront en console, vous verrez qu'il ne faut pas la sous-estimée.

Un exemple de programme en console (ou plûtot un système d'exploitation) : DOS. Il s'agit de l'un des premiers systèmes d'exploitation tout en console, on avait pas de souris seulement un clavier pour rentrer des commandes.

Un autre exemple de programme console ( pour les linuxiens surtout) : les éditeurs de textes Vim et Nano.
Mais bon je pense que cela n'effraye pas les linuxiens, car la console est la base des distributions Linux, je dirais même le coeur.

Passons maintenant au GUI.

Qu'est ce que GUI


GUI veut dire en anglais 'Graphical User Interface', sois environnement graphique. Il s'agit d'une interface graphique.

Une interface graphique : c'est des boutons, des icônes, une fenêtre, l'utilisation de la souris avec des contrôles comme des listes déroulantes, des cases à cocher...

Il s'agit donc de votre navigateur internet, de votre client de chat, de votre système d'exploitation aussi car maintenant tous sont sous forme d'interface graphique!

On peut aussi dire que tous les jeux vidéos en plein écran que vous jouez sont des interfaces graphiques.

Voilà maintenant je dévoile le cours ?

Plan du tuto



Comme le C et le C++ sont deux langages distincts, il y aura deux tutos (un pour chaque).

Je vais faire le plan des deux ici, mais le C++ s'arrêtera là, il faudra attendre la parution du prochain tuto mais avant je fini celui-ci.

Concernant le C :

Nous verrons :
- les environnements de développement
- l'affichage d'un texte
- les variables (type, récupération et affichage)
- les structures conditionnelles et les boucles
- les fonctions
- les tableaux
- les pointeurs (çà commencera à se compliquer)
- les structures
- les chaînes de caractères
- l'allocation de mémoire
- les fichiers
- les préprocesseurs et les macros

J'ajouterai dès fois quelques exemples de pratique pour appliquer vos connaissances, comme des jeux ou autres. Vous verrez, vous aurez de quoi travailler ;)

Je pense aussi que je vais faire un exemple d'utilisation de bibliothèque en C, je ne sais pas encore, mais je pense que l'on fera du traitement de son avec FMOD.

En ce qui concerne le C++ :

Nous verrons:
- les flux
- les variables (tout du moins les améliorations)
- la gestion de la mémoire
et toutes les améliorations par rapport au tuto sur le C
- la programmation orientée objet
- l'héritage
- le polymorphisme
- les templates et tout ce qui va avec
- les fonctions virtuelles et amies

Nous verrons la bibliothèque standard du C++ qui contient entre autre la STL, dont nous verrons un peu le contenu.

Enfin comme pour le C, nous verrons une bibliothèque, étant donné les efforts que vous vous aurez donné pour apprendre à manier le C et le C++, je vous ferai une partie sur la fameuse librairie graphique Qt, pour faire des interfaces, mais aussi pour faire du réseau, des bases de données, car nous verrons une bonne partie de Qt, et ce sera l'acheminement de votre formation.

Conclusion



Voilà pour ce long chapitre d'introduction, j'espère que cela vous a donné l'eau à la bouche, mais on ira progressivement. D'ailleurs, avant de commencer, çà serait bien d'avoir les outils pour bien programmer, ce que nous verrons dans le chapitre suivant.

sommairesuivant