aboutsummaryrefslogtreecommitdiff
path: root/semestre 4/java/0- Rentrée.typ
blob: 50b29d35790c13baca655f10b31bb81c90d0409b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
#import "@local/template:1.0.0": *
#import "@local/callout:1.0.0": *

#show: doc.with(
  authors: (
    (name: "William Hergès", affiliation: "Sorbonne Université", email: "william@herges.fr"),
  ),
  page_title: "Introduction",
)

= Introduction

Partiel le lundi 9 mars.
TP solo durant la séance TP9.
Mini-projet, rendu & soutenance lors du dernier TP.
On a le droit à une feuille A4 écrite à la main lors des examens.

== Programmation orientée objet

Cherche à développer des systèmes complexes.
Divise le système en plusieurs objets tout en sécurisant les données sensibles.

Permet de travailler à plusieurs~: toujours penser son programme pour les autres, donc on sécurise, on simplifie et on
compartimente.

== Java

Java est une application classique de l'OOP.
Langage moderne, robuste, sûre et fortement typée.

Propose une architecture dynamique avec un compilateur pour créer des applications performantes.
Repose sur la JVM pour exécuter le code compilé~: permet de créer des applications indépendantes de la machine physique.

= Premier programme

En Java, tout le code doit être écrit dans une classe.
```java
// contenu de MonPremierProgramme.java
public class MonPremierProgramme {
  // code
}
```

Un fichier `.java` contient forcément un fichier.
Il doit avoir le même nom de la classe.

Un programme est un ensemble de classes.
Le point d'entrée est la méthode `main`.

La signature de la fonction `main` est~:
```java
public class MonPremierProgramme {
  public static void main(String[] args) {
    System.out.println("Hello world :D");
  }
}
```

Besoin du JDK pour développer en Java.
Pour compiler, on écrit dans le terminal~:
```bash
javac MonPremierProgramme.java
```
Cela crée un fichier `MonPremierProgramme.class` qui contient du bytecode JVM.
Pour l'exécuter, on écrit
```bash
java MonPremierProgramme
```

Pour compiler plusieurs classes, on fait~:
```bash
javac *.java
```

= Concept de base de l'OOP

En OOP, tout est encapsulé dans un objet.
Un objet est autonome~: il est réutilisable partout.
Il est aussi sécurisé~: il garantie le bon usage.
Il intègre des données et des méthodes pour le manipuler proprement.

= Syntaxe de Java

...

Les objets sont représentés par deux valeurs en mémoire~: le type et ses attributs.