NOTIONS DE BASE SUR LE DEVELOPPEMENT
LOGICIEL
1. Programme
et logiciel
Un programme informatique est une suite d’instructions permettant d’exécuter une suite d’opérations déterminées, demandées à un ordinateur.
-Un logiciel
est un programme ou ensemble de programmes informatiques nécessaires au fonctionnement
et l’utilisation d’un ordinateur ou un système informatique.
Le logiciel est plus qu'un code de programme. En
fait, un programme est un code exécutable, qui sert à des fins de calcul, par
contre, le logiciel, est considéré comme une collection de code de
programmation exécutable, des bibliothèques associées et de documentations.
Ainsi, lorsque le logiciel, est conçu pour une exigence spécifique, est appelé
un « produit logiciel ».
La programmation
est une activité qui consiste à écrire les programmes informatiques. On utilise
aussi le terme développement. Les programmeurs ou développeurs
écrivent les codes sources des programmes informatiques.
Le Code
Source d’un programme informatique est un texte qui représente les
instructions qui doivent être exécutées par le microprocesseur. Il se
matérialise souvent sous forme d’un ensemble de fichiers textes écrit dans un
langage de programmation permettant ainsi une meilleure compréhension des
humains. Le code source correspond donc au texte d’ecriture du logiciel dans un
langage compréhensible par l’homme.
Le
code source est enregistré sur des supports (DVD et CD) pour le rendre
accessible aux organes de traitements (ordinateur).
Un code exécutable est une
version d'un programme qui a été transformée en langage machine, ce qui permet
à un ordinateur de l'exécuter directement. Il correspond à un code source
compile, c.-à-d. traduit en langage binaire, à savoir une suite de de chiffres
exclusivement compréhensible par l’ordvinateur.
2. Quelques exemples d’outils de développement
logiciel
·
Éditeur
de code :
Ce sont des programmes
dédiés à l'écriture de code. On peut en général les utiliser pour de multiples
langages de programmation. Il existe de nombreux logiciels dédiés à la création
de code. Sous Windows :
-Le logiciel Bloc-Notes : c’est le logiciel d'édition de texte intégré par défaut sur Windows.
-Le logiciel Notepad++, est l'un des plus utilisés d'entre eux sous Windows. Ce logiciel
est simple, en français et gratuit.
D'autres
éditeurs disponibles sous Windows existent : jEdit ; PSpad ;
ConTEXT
·
Interpréteur :
Un interpréteur est un
programme informatique qui traduit, ligne par ligne, en langage machine un
programme établi en langage évolué.
·
Compilateur :
Un
compilateur est un programme
informatique qui traduit en langage machine un programme établi en langage
évolué. Le passage du langage évolué en langage machine est transparent pour
l’utilisateur, seule la machine contrôle toutes les opérations.
·
IDE
Pour
écrire un programme informatique, il faut :
-un
éditeur de texte qui permet d’écrire le code source.
-un
compilateur qui permet de traduire le code source en binaire.
-un
debugger qui permet de rectifier les erreurs commises par le programmeur.
Il existe des solutions
« trois-en-un » qui offrent des plateformes complètes contenant ces
trois outils appelé IDE (Integrated Development Environment) :
Code :: Blocks,
Visual studio, windev, Xcode etc.
3. Langages de programmation
Un
langage de programmation est un
ensemble normalisé des règles d’écriture du programme informatique. Le langage
de programmation permet d’obtenir le code source de ce logiciel.
Exemples :
Langage C ; Visual Basic, Pascal etc.
Le
langage machine est le langage spécifique
de l’ordinateur, dans lequel les instructions sont exprimées en code binaire.
Le processeur exécute les instructions du programme sous forme de chiffres 0 et
1 (bit). C’est le langage binaire.
On
peut distinguer deux grands types de langages évolués : les langages
interprétés et les langages compilés
Langages
interprétés : Le code source est interprété.
L’interpréteur va utiliser le code source et les données d’entrée pour calculer
les données de sortie. L’interpréteur va exécuter les instructions ligne par
ligne, en décidant à chaque étape de ce qu’il va faire par la suite.
Exemples :
java, python, JavaScript, php, ruby,
etc.
Avantages :
le code source d’un langage interprété peut marcher directement avec tout
ordinateur. Ils sont plus flexibles, le code est plus léger, plus simple à
écrire.
Inconvénients :
ils sont moins rapides car ils exécutent les instructions ligne après ligne. Ce
qui pose problème pour créer des logiciels rapides, des jeux vidéo et des
systèmes d’exploitation.
Langages
compilés : Le code source est d’abord compilé, par
le compilateur, c.-à-d. traduit
en code binaire, très facile à lire par l’ordinateur. C’est alors
directement le Système d’exploitation qui va utiliser le code binaire et les
données d’entrée pour calculer les données de sortie.
Avantage :
Le langage compilé est plus rapide car directement exécuté sur l’ordinateur.
Globalement les langages compilés sont plus performants.
Inconvénient :
Il faut un compilateur pour chaque machine. De plus, avec un langage compilé il
faut (en général) tout recompiler à chaque modification, ce qui pose d’énormes
soucis (peut durer plusieurs heures). Les langages compilés sont plus
complexes : plus dure à apprendre, plus de lignes de codes. Ils dépendent
de votre plateforme.
Exemple :
C, C++, Pascal, etc.
NB :
Les bugs informatiques sont des erreurs de programmation.
EXERCICES
CONTROLE DE CONNAISSANCES
1.Definir : programme
informatique, logiciel.
2.Quelle
est la différence entre un programme et un logiciel ?
3
Quelle est la différence entre un code source et code exécutable ?
4.Cite
4 outils de développement des logiciels.
5.Cite
4 langages de programmation.
EXERCICE I : Répondre par vrai
ou faux
1.Un
compilateur traduit le code ligne après ligne en langage machine
2.Un
interpréteur interprète le code déjà écrit en langage machine.
3.un
ordinateur ne comprend que le langage machine.
4.
Le langage’ C’ est un langage interprété.
5. IDE est un environnement de
développement intégré.
EXERCICE II :
COLONNE A |
COLONNE B |
1. Code source 2. compilateur 3.
Notepad++ 4. langage de
programmation 5. code exécutable |
a. éditeur de code b. permet d’écrire le code
source c. traduit le code source en
langage binaire d. dérive d’un code source e. texte d’ecriture du
logiciel dans un langage compréhensible par l’homme |
Un langage de haut niveau ou évolué est un langage indépendant du type d’ordinateur dans lequel les
instructions sont exprimées de façon proche du langage humain. Plus le niveau
d’un langage est haut, plus il se rapproche du langage humain donc facile à
utiliser, et plus il s’éloigne du langage machine. Les langages de bas niveau
sont plus proches du langage machine et plus complexes au niveau de la
programmation.
A
l’aide du texte ci-dessus et de tes connaissances en programmation, réponds aux
questions ci-dessous :
1.Définis : langage évolué
2.Cite 2 langages évolués
3.Quelle est la différence entre un
langage évolué et le langage machine ?
CORRIGES
CONTROLE DE CONNAISSANCES
1.
-Un programme informatique est
une suite d’instructions permettant d’exécuter une suite d’opérations
déterminées, demandées à un ordinateur.
-Un logiciel est
un programme ou ensemble de programmes informatiques nécessaires au
fonctionnement et l’utilisation d’un ordinateur ou un système informatique.
2.En dehors du code de programmation
exécutable, le logiciel a en plus des bibliothèques associées aux programmes et
de la documentation.
3 Un code exécutoire
est un code source convertit en langage machine(binaire)
4.editeur de code,
compilateur, interpréteur et IDE
5.Langage c, Visual Basic, Java, Pascal …
EXERCICE
I : Répondre
par vrai ou faux
1.Faux //plutôt un interpréteur
2.Faux //il interprète le code source ligne après
ligne en langage machine
3.Vrai
4. Faux //Le langage C est
un langage compilé
5. Vrai
EXERCICE
II :
1.e
2.c
3.a
4.b
5.d
EXERCICE
III :
1.Un
langage évolué ou de haut niveau est un langage de programmation utilisé facilement
par les humains parce qu’il est plus proche du langage humain.
2. Langage
c, Visual Basic, Java, Pascal …
3.Plus
proche des humains, le langage évolué utilise des symboles et des codes pour
obtenir le code source d’un programme alors que le langage machine est plus proche de l’ordinateur
et utilise les bits(0 et 1).