activitÉ de programmation - etsmtl.ca · introduction ! contenu • utilité de l’ordinateur,...

24
ACTIVITÉ DE PROGRAMMATION Une introduction The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam

Upload: others

Post on 11-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

ACTIVITÉ DE PROGRAMMATION

Une introduction

The purpose of the Implementation

Process is to realize a specified system

element.

ISO/IEC 12207

Sébastien Adam

Page 2: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Introduction

Ø  Contenu

•  Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement de programmation

•  Écrire un programme Java, la mémoire, réserver un espace mémoire, les types de données, déclarer une variable, quelques opérateurs de base, écrire des données en mémoire, un paquetage, afficher des données à l'écran, lire des données au clavier, instruction de contrôle, exemples sans et avec normes de programmation

Ø  Références

•  Spécification du langage Java http://java.sun.com/docs/books/jls/download/langspec-3.0.pdf

2

Page 3: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Introduction

Ø  Objectifs

•  Introduire le concept de langage de programmation.

•  Introduire les instructions de base du langage Java.

Ø  Plan

1.  Expliquer comment exploiter l’ordinateur.

2.  Écrire des instructions.

3

Page 4: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

1.   Expliquer comment exploiter l’ordinateur.

Utilité de l’ordinateur

Organisation d'un ordinateur

Langage de programmation

Opérations permises

Environnement de programmation

Suivi du plan

Page 5: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

5

Utilité de l’ordinateur

Ø  Le programmeur réalise trois tâches avec l’ordinateur.

Page 6: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Organisation d'un ordinateur

Ø  Le programmeur exploite les composants de l’ordinateur pour réaliser ses tâches.

Ø  L’ordinateur a des composantes internes.

•  Le microprocesseur, la mémoire vive, le lecteur de disquettes, le disque dur, les bus, la carte vidéo, la carte audio, le modem, etc.

Ø  L’ordinateur a des composantes externes.

•  Le clavier, la souris, l'écran, le lecteur de disquettes amovible, le disque dur amovible, le modem, le numériseur d'images, la caméra numérique, etc.

6

Page 7: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Langage de programmation

Ø  Le programmeur donne des instructions à l’ordinateur à l’aide d’un langage de programmation.

Ø  Une instruction indique à l'ordinateur quelle opération il doit effectuer.

Ø  Un programme informatique est un ensemble d'instructions permettant d’exploiter l’ordinateur pour réaliser des tâches.

Ø  Un langage de programmation est composé d'outils, de symboles et de mots-clés qui peuvent être assemblés selon certaines règles afin d'écrire des programmes informatique.

Ø  Le langage orienté objet Java est utilisé dans ce cours.

7

Page 8: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Opérations permises

Ø  Le langage de programmation permet au programmeur :

1.  d'utiliser la mémoire pour enregistrer et obtenir de l'information,

2.  d'utiliser le clavier et l'écran pour saisir et afficher de l'information,

3.  d’utiliser le processeur pour effectuer des calculs,

4.  de choisir d'exécuter ou non un ensemble d'instructions,

5.  d'exécuter plusieurs fois un ensemble d'instructions.

8

Page 9: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Environnement de programmation

Ø  Un environnement de programmation est un regroupement de plusieurs outils (éditeur, compilateur, dévermineur, etc.) permettant de développer des programmes.

Ø  Eclipse offre un environnement de développement intégré (IDE).

9

Page 10: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

1.  Expliquer comment exploiter l’ordinateur.

Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement de programmation

2.   Écrire des instructions.

Écrire un programme Java

La mémoire, réserver un espace mémoire

Les types de données, déclarer une variable

Quelques opérateurs de base, écrire des données en mémoire

Un paquetage, afficher des données à l'écran, lire des données au clavier

Instruction de contrôle, Exemples sans et avec normes de programmation

Suivi du plan

Page 11: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Écrire un programme Java

Ø  Écrire un programme se résume à écrire les instructions le constituant. Le programme doit être écrit à l'intérieur d'un fichier texte ayant l'extension < .java >.

Ø  Dans ce fichier, on doit obligatoirement indiquer à quel endroit débute notre programme. L'endroit où débute l'exécution d'un programme est appelé la fonction principale (main). La fonction principale doit se situer à l’intérieure d’une classe (class).

class MonPremierProgrammeJava

{

public static void main(String args[ ])

{

Instruction(s) du programme

}

}

11

Page 12: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

La mémoire

Ø  La mémoire peut être vue comme une suite de cases numérotées dans lesquelles on peut lire et écrire des données.

Ø  Ces cases sont des espaces mémoires ayant la même taille.

Page 13: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Réserver un espace mémoire

Ø  Réserver un espace mémoire se fait en déclarant une variable.

Ø  Déclarer une variable nous permet d'associer le nom de la variable à un espace mémoire. On utilise ensuite ce nom de variable pour accéder à l'espace mémoire.

Ø  Pour déclarer une variable, on doit spécifier son nom et le type de données quelle peut contenir.

Ø  La syntaxe est la suivante :

type nom;

Page 14: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Les types de données

Ø  Un espace mémoire peut contenir des données de différentes catégories (entier, chaîne de caractères, réel simple précision, réel double précision, etc.).

Ø  En programmation ces catégories de données font parties de ce que nous appelons des types de données.

Ø  En attribuant un type de données à une variable, on détermine pour cette variable quelles vont être :

1.  le nombre d’espaces mémoires réservés,

2.  l'ensemble des valeurs permises,

3.  les opérations permises.

Page 15: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Déclarer une variable

Ø  Après la déclaration des variables, les espaces mémoire en bleu sont réservées pour le programme qui en a fait la demande. Aucun autre programme ne peut accéder à ces espaces mémoire.

Page 16: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Quelques opérateurs de base

Ø  Un opérateur permet d’effectuer une opération sur un ou plusieurs types de données.

Page 17: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Écrire des données en mémoire

Ø  Le symbole d'affectation = nous permet d'écrire en mémoire.

Ø  Une affectation détruit l'ancien contenu de l'espace mémoire. La ligne suivante écrase donc le contenu de la variable toto.

class MaClasse

{

public static void main(String args[ ])

{

int toto;

toto = 5; /* la variable toto contient 5 */

toto = toto + 3; /* la variable toto contient 8 */

toto = 8 + 3 * 2 / 4; /* la variable toto contient 9 */

}

}

Page 18: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Un paquetage

Ø  Un paquetage regroupe un ensemble de classes ayant une forte cohésion, un lien fonctionnel entre eux.

Ø  Lorsqu'on veut utiliser une classe faisant partie d'un paquetage, on doit importer dans notre programme le nom du paquetage.

import java.util.Random; // Importer seulement la classe Random.

import java.util.*; // Importer toutes les classes du paquetage.

class MaClasse

{

public static void main(String args[ ])

{

Random r = new Random();

double val = r.nextGaussian();

System.out.print("Valeur: " + val);

}

}

Page 19: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

19 Source: L. Bass, P. Clements, R. Kazman, "Software architecture in practice", 2e éd., Addison Wesley, 2003, p. 11.

Afficher des données à l'écran

Ø  On peut utiliser la méthode print pour afficher des données à l'écran.

Ø  La classe System donne accès à la variable out. Cette dernière réfère au tampon de sortie permettant d’écrire à l’écran.

class MaClasse

{

public static void main(String args[ ])

{

System.out.print("Afficher ce texte!");

}

}

Page 20: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Lire des données au clavier

Ø  On peut utiliser la méthode nextLine pour lire des données au clavier.

Ø  La classe Scanner donne accès à des méthodes permettant de lire des données au clavier.

import java.util.Scanner; // Importer la classe Scanner.

class MaClasse

{

public static void main(String args[ ])

{

String nom;

Scanner lectureClavier = new Scanner(System.in);

System.out.print("Veuillez entrer votre nom : ");

nom = lectureClavier.nextLine();

System.out.print("Votre nom est : " + nom);

}

}

Page 21: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Instruction de contrôle if

Ø  On utilise le mot réservé if lorsqu'on veut choisir d'exécuter ou non un ensemble d'instructions.

if (condition)

{

instruction(s);

}

if (condition)

{

instruction(s);

}

else

{

instruction(s);

}

Page 22: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Instruction de contrôle while

Ø  On utilise le mot réservé while ou les mots réservés do … while pour exécuter plusieurs fois un ensemble d'instructions.

while (condition) do

{ {

instruction(s); instruction(s);

} } while (condition);

Ø  Les instructions sont répétées tant que la condition est respectée (donne la valeur 1).

Ø  Les instructions à l'intérieur d'une boucle WHILE peuvent ne pas être exécutées.

Ø  Les instructions à l'intérieur d'une boucle DO ... WHILE sont toujours exécutées au moins une fois.

Page 23: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Exemple sans norme de programmation

import java.util.Scanner;

class MaClasse{

public static void main(String args[ ]) {

long bi; long bs; long somme = 0;

Scanner clavier = new Scanner(System.in);

System.out.prinln("Entrez un nombre : ");

bi = clavier.nextLong();

System.out.prinln("Entrez un nombre : ");

bs = clavier.nextLong();

while (bi <= bs) {if (bi%2 == 1) somme = somme + bi;

bi = bi + 1;}

System.out.prinln("Voici la somme : " + somme);}

}

Page 24: ACTIVITÉ DE PROGRAMMATION - etsmtl.ca · Introduction ! Contenu • Utilité de l’ordinateur, organisation d'un ordinateur, langage de programmation, opérations permises, environnement

Exemple avec normes de programmation import java.util.Scanner; // Importer Scanner pour lire au clavier.

/**********************************************************************************

Cette fonction permet de calculer la somme des entiers

impairs consécutifs compris dans un intervalle donne.

La borne inférieure de l'intervalle est d'abord saisie. La borne supérieure

de l'intervalle est ensuite saisie. Enfin, la somme est calculée et affichée.

**********************************************************************************/

class MaClasse {

public static void main(String args[ ]) {

long bi; long bs; long somme = 0;

Scanner clavier = new Scanner(System.in);

// Lire la borne inférieure.

System.out.prinln("Entrez un nombre : ");

bi = clavier.nextLong();

// Lire la borne supérieure.

System.out.prinln("Entrez un nombre : ");

bs = clavier.nextLong();

// Calculer la somme des entiers de l’intervalle.

while (bi <= bs) {

if (bi%2 == 1)

somme = somme + bi;

bi = bi + 1;

}

System.out.prinln("Voici la somme : " + somme);

}

}