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

 

EXERCICE III :

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).