Introduction à la programmation (420-PK2-SL) cours 2 Gestion des applications Technologie de...
-
Upload
evette-hamelin -
Category
Documents
-
view
108 -
download
5
Transcript of Introduction à la programmation (420-PK2-SL) cours 2 Gestion des applications Technologie de...
Introduction à la programmation(420-PK2-SL)
cours 2
Gestion des applications
Technologie de l’information
(LEA.BW)
Plan Introduction au Java Les variables Le traitement des entrées et des sorties Installation de l’environnement de
programmation La structure type d’un programme simple Quelques tests
Introduction au Java Programme
Un programme informatique indique à un ordinateur ce qu'il devrait faire. Il s'agit d'un ensemble d'instructions qui doivent être exécutées dans un certain ordre par un processus.
Interprète En informatique, un interprète (parfois appelé, à tort, interpréteur par
mauvaise traduction de l'anglais) est un outil ayant pour tâche d'analyser, de traduire, et d'exécuter un programme écrit dans un langage informatique.
Compilateur Un compilateur est un programme informatique qui traduit un langage, le langage
source, en un autre, appelé le langage cible…En pratique, un compilateur sert le plus souvent à traduire un code source écrit dans un langage de programmation en un autre langage, habituellement un langage d'assemblage ou un langage machine (byte code). Le programme en langage machine produit par un compilateur est appelé code objet.
Langage de programmation Un langage de programmation permet d'écrire des programmes. L'activité de rédaction
du code source d'un logiciel est nommée programmation. Il en existe plusieurs Java, C, C++, C#, ASP, PHP, SQL, ... http://www.georgehernandez.com/h/xComputers/Programming/Media/tongues-cleane
r.png
Introduction au Java Caractéristiques du Java
Java est interprété Le code source est compilé en byte code et ensuite exécuté par un interpréteur Java (Java Virtual
Machine (JVM) Slogan de SUN pour Java WORA (Write Once, Run Anywhere) Le byte code est spécifique à JVM et non à un système d’exploitation
Java est portable Il peut être exécuté sur tout périphérique aillant la machine virtuelle Java (JVM)
Java est orienté objet Abordé dans le cours 420-PK4-SL
Java est simple Les créateurs ont supprimé les éléments mal compris des autres langages de programmation. Par
exemple, les pointeurs, l’héritage multiple et la surcharge des opérateurs. Java est fortement typé
Toutes les variables sont typées et il n’existe pas de conversion automatique. Si une telle conversion doit être réalisé, le développeur doit obligatoirement utiliser un cast ou ume
méthode statique fournie en standard pour la réaliser (un parser) Java assure la gestion de la mémoire
JVM gère la mémoire et fait le ménage des variables qui ne sont plus utilisées Java est sûr
Protection des fichiers Protection de l’exécution de commande
Java est multitâche Il permet les threads et facilite l’utilisation d’un processeur à plusieurs coeurs
Introduction à Java Différentes éditions et versions de Java Java Development Kit / Java 2 Software Devlopment Kit (JDK /
J2SDK) Ensemble d’outils et d’API permettant de programmer en Java Contiens aussi le JRE
Java Runtime Environement (JRE) Permets l’exécution de code Java compilé
Java Standard Edition (J2SE / Java SE) Environnement d'exécution et ensemble complet d'API pour des
applications de type desktop Java Enterprise Edition (J2EE / Java EE)
Environnement d'exécution reposant intégralement sur Java SE pour le développement d'applications d'entreprises
Java Micro Edition (J2ME / Java ME) Environnement d'exécution et API pour le développement d'applications
sur appareils mobiles et embarqués dont les capacités ne permettent pas la mise en œuvre de Java SE
Introduction à Java Les différences entre Java et JavaScript
Il ne faut pas les confondre, car ce n’est pas du tout la même chose. Par contre, les deux langages sont semblables, car ils dérivent les
deux du langage C.
Java JavaScript
Auteur Sun Microsystems Netscape Communications
Format Compilé sous forme de byte code
Interprété
Stockage Applet téléchargé comme un élément de la page
Web
Source inséré dans le code HTML
Utilisation Tous les types d’applications
Dynamiser une page Web
Exécution Exécuté par JVM Exécuté par le navigateur Web
POO Orienté Objet Permet de manipuler des objets mais pas d’en créer
Typage Fortement typé Pas de contrôle de type
Complexité du code Complexe Simple
Introduction à Java Compilation
Le code source (fichier .java) est compilé et traduis en byte code dans un fichier .class
Interprétation Le JVM interprète les .class en exécutant une instruction à la fois
Compilation et exécution Éditeur de texte
Compilation (javac)
Exécution (java)
.java
JVM
.class
Programme
Introduction à Java Les commentaires
Il est important de toujours commenté dans le code, mais aussi de bien identifier ce que fais le programme, qui là fait et quand il a été créer.
Type de commentaires Exemple
Commentaire abrégé // Commentaire sur une ligne
Commentaire multi-ligne /* Commentaire sur deuxlignes */
Commentaire de documentation automatique
/*** Commentaire de la méthode* Fait par: Julien Le Roux* Date de création: 17/01/2011* Dernière modif. :19/01/2011*/
Introduction à Java Java est sensible à la case
a != A Les bloques de code sont encadrés par des accolades.
public static void main(String args[]){
} Chaque instruction se termine par un ;
byte
test1
=
'A';
byte test2 = 'B'; L’indentation n’est pas obligatoire, mais fortement recommandée pour
faciliter la lecture du code.public static void main(String args[]){
byte test='A';
if(byte != 'A'){
System.out.println("Hello World ! ");
}
}
Introduction à Java Une variable à un type, un identificateur et une valeur (pas obligatoire)
type identificateur = valeur; byte test = 'B';
L’identificateur ne peut pas avoir un nom réserver par Java Voici la liste des noms réserver
abstract const final int public throw
assert continue finally interface
return throws
boolean default float long short transient
break do for native static true
byte double goto new strictfp try
case else if null super void
catch enum implements
package
switch volatile
char extends import private synchronized
while
class false instanceof
protected
This
Les variables La déclaration de variable
Un identificateur de variable peut commencer par une lettre, par le signe $ ou par le signe _.
Pour le reste de l’idenficateur il peut contenir lettre/chiffre/signe, mais jamais d’espace!
Il est possible définir plusieurs variables sur une même ligne int jours,mois,annee; int jours=20,mois=1,annee=2011;
Pour faire des changements de variables, vous devez souvent utiliser des fonctions de programmation. Par exemple, si on demande l’age d’un utilisateur, nous le
sauvegarderons sous forme de texte, mais par la suite nous devons le transformer en format numérique si nous voulons l’utiliser pour des calculs.
Les variables Les types élémentaires
Dans le cours 420-PK4-SL vous créez vos propres types et vos propres objets
Le type String n’est pas un type élémentaire. Nous le verrons plus tard.Type Longueur Valeurs
boolean 1 bit true or false (0 ou 1)
byte 8 bits -128 à 127
short 16 bits -32768 à 32767
char 16 bits \u0000 à \uFFFF
int (entier) 32 bits -2147483648 à 2147483647
float 32 bits 1.401e-045 à 3.40282e+038
double 64 bits 2.22507e-308 à 1.79769e+308
long (entier) 64 bits -9223372036854775808 à 9223372036854775807
Les variables Le format des types élémentaires
Le format des nombres entiers byte,short,int et long Peuvent être codé en octal, décimal et en hexadécimal
Octal Le nombre doit commencer par 0 010
Hexadécimal Le nombre doit commencer par 0x 0xFF
Le format des nombres réels float et double Avec float il faut faire attention, car nous devons
préciser ou s’arrête la virgule. Il est recommandé d’utiliser le double.
Les variables L’initialisation des variables
int nombre;nombre = 0;OU int nombre = 0;
Les valeurs par défaut Boolean false byte/short/int/long0 float/double 0.0 char \u000
Les variables L’affectation est l’action de stocker une
information dans une variable. Le signe utilisé est le =.
Opérateur Exemple Signification
= x=10 x=10
+= x+=10 x = x + 10
-= x-=10 x = x – 10
*= x*=10 x = x * 10
/= x/=10 x = x / 10
%= x%=10 Reste de la division par 10
^= x^=10 x = x ^ 10
Les packages Pour faciliter certaines tâches génériques,
nous pouvons utiliser le travail fait par d’autres programmeurs en important des packages.
Voici les packages les plus utilisésPackages Descriptions
java.io Accès aux flux entrant et sortant
java.lang Classes et interfaces fondamentales
java.math Opérations mathématiques
java.net Accès aux réseaux
java.security Mise en oeuvre de fonctionnalités concernant la sécurité
java.sql API JDBC (accès aux bases de données)
java.util Utilitaires
Le traitement des entrées et des sorties Écrire à l’écran
System.out.println("Bonjour"); Saisir au clavier
2 méthodes possibles Méthode la plus simple et la plus performanteimport java.util.Scanner;
public class test_io
{
public static void main(String args[])
{
String nom;
Scanner clavier = new Scanner(System.in);
System.out.println("Quel est votre nom?");
nom = clavier.nextLine();
clavier.close();
System.out.println("Bonjour " + nom);
}
}
Le traitement des entrées et des sorties
Saisir au clavier Méthode plus compliquéeimport java.io.*;
public class test_io
{
public static void main(String args[])
{
String nom="";
BufferedReader clavier = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Quel est votre nom?");
try {
nom = clavier.readLine();
}catch(IOException ioe){
System.out.println("IO Error");
}
System.out.println("Bonjour " + nom);
}
}
Installation de l’enviromenet de programmation
JDK http://www.oracle.com/technetwork/java/javase/do
wnloads/index.html BlueJay
http://www.bluej.org/download/download.html Plus tard dans la session nous utiliserons Eclipse
La structure type d’un programme simple
/*
* Calcule du salaire
* Julien Le Roux
* 19/01/2010
*/
import java.util.Scanner;
public class salaire
{
public static void main(String args[])
{
// Initialisation des variables
int salaire, heures, total;
Scanner clavier = new Scanner(System.in);
// Saisie des informations
System.out.println("Quel est votre taux horaire?");
salaire = Integer.parseInt(clavier.nextLine());// Nous aurions pu faire clavier.nextInt();
System.out.println("Combien d'heure travailler vous?");
heures = Integer.parseInt(clavier.nextLine()); // Nous aurions pu faire clavier.nextInt();
clavier.close();
// Calcul du salaire
total = salaire * heures;
// Affichage du résultat
System.out.println("Votre salaire est " + total + "$ par semaine");
}
}
Quelques tests Écrivez un programme imc.java qui demande à un
utilisateur son poids (en kilos) et sa taille (en mètres) et qui lui affiche son indice de masse corporel (poid / taille2) Exemple: 84 kilos et 1,81 mètres donne un IMC de 25.64024297 Indice utiliser Double.parseDouble() plutôt que Integer.parseInt().
Écrivez un programme echange.java qui échange deux valeurs en mémoire. Saisissez deux variables (x et y). Pensez à une stratégie pour que le contenu de x se retrouve dans
y et vice versa. Faites afficher le contenu des deux variables
NOTE: LES SOLUTIONS SUR LE WEB N’ONT PAS DE COMMENTAIRES. VOUS DEVEZ TOUJOURS EN METTRE!!
Demain Un peu de théorie Beaucoup de pratique