0% ont trouvé ce document utile (0 vote)
5 vues9 pages

Introduction à la Programmation Java

Le document présente les concepts de base de la programmation, notamment la définition de la programmation, l'importance d'apprendre à programmer, ainsi que les langages de programmation populaires comme Java, Python et JavaScript. Il aborde également les variables, types de données, opérateurs, structures de contrôle, notions clés de Java Core, et la mémoire de la JVM, tout en fournissant des exemples pratiques pour illustrer chaque concept. L'objectif global est d'initier les apprenants aux fondamentaux de la programmation et de leur donner les outils nécessaires pour développer des applications simples.

Transféré par

peyagodson
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
5 vues9 pages

Introduction à la Programmation Java

Le document présente les concepts de base de la programmation, notamment la définition de la programmation, l'importance d'apprendre à programmer, ainsi que les langages de programmation populaires comme Java, Python et JavaScript. Il aborde également les variables, types de données, opérateurs, structures de contrôle, notions clés de Java Core, et la mémoire de la JVM, tout en fournissant des exemples pratiques pour illustrer chaque concept. L'objectif global est d'initier les apprenants aux fondamentaux de la programmation et de leur donner les outils nécessaires pour développer des applications simples.

Transféré par

peyagodson
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Cours : Concepts de Base de la Programmation

Semaine 1-2
Introduction à la Programmation
Objectifs :

• Comprendre ce qu'est la programmation et pourquoi elle est essentielle.


• Introduction aux langages de programmation.

Contenu :

1. Qu'est-ce que la programmation ?


• Définition : La programmation est le processus de création de
logiciels par l'écriture de code. Elle consiste à donner des instructions
à un ordinateur pour qu'il exécute des tâches spécifiques.
• Rôle des programmeurs : Transformer des problèmes en solutions
logicielles.
2. Pourquoi apprendre la programmation ?
• Résolution de problèmes complexes.
• Automatisation des tâches.
• Développement de logiciels, applications et jeux.
• Possibilités de carrière dans de nombreux secteurs.
3. Langages de programmation populaires :
• Java : Orienté objet, largement utilisé pour le développement
d'applications d'entreprise.
• Python : Polyvalent, connu pour sa simplicité et utilisé dans l'IA et le
data science.
• JavaScript : Principalement utilisé pour le développement web.

Exemples :

• Exemple 1 : Écrire un programme pour calculer la somme de deux nombres.


public class Somme {
public static void main(String[] args) {
int a = 5;
int b = 10;
int somme = a + b;
[Link]("La somme est : " + somme);
}
}

• Exemple 2 : Créer un script qui affiche "Bonjour le monde!" à l'écran.

public class BonjourMonde {


public static void main(String[] args) {
[Link]("Bonjour le monde!");
}
}

• Exemple 3 : Développer une application simple qui demande à l'utilisateur son


nom et lui répond par un message personnalisé.

import [Link];

public class Salutation {


public static void main(String[] args) {
Scanner scanner = new Scanner([Link]);
[Link]("Entrez votre nom : ");
String nom = [Link]();
[Link]("Bonjour, " + nom + "!");
}
}

Variables, Types de Données et Opérateurs


Objectifs :

• Comprendre comment déclarer et utiliser des variables.


• Connaître les types de données fondamentaux.
• Utiliser des opérateurs pour manipuler les données.
Contenu :

1. Variables :
• Définition : Une variable est un emplacement en mémoire avec un
nom associé, utilisé pour stocker des données.
• Syntaxe de déclaration : type nomVariable = valeur;
• Types de portée : locale, d'instance et de classe.
2. Types de Données :
• Primitifs : int , double , char , boolean .
• Objets : String , ArrayList , etc.
• Tableaux (Arrays) : Structure de données qui stocke des éléments
de même type dans une séquence contiguë en mémoire.
3. Opérateurs :
• Aritmétiques : + , - , * , / , % .
• Logiques : && , || , ! .
• Comparaison : == , != , > , < , >= , <= .

Exemples :

• Exemple 1 : Déclaration d'une variable entière pour l'âge.

int age = 30;

• Exemple 2 : Utilisation d'une variable chaîne pour un nom.

String nom = "Alice";

• Exemple 3 : Variable booléenne pour un état.

boolean estActif = true;

• Exemple 4 : Tableau d'entiers.

int[] nombres = {1, 2, 3, 4, 5};

• Exemple 5 : Addition de deux nombres.


int a = 10;
int b = 5;
int somme = a + b;

• Exemple 6 : Comparaison de deux valeurs.

if (a > b) {
[Link]("a est plus grand que b");
}

Structures de Contrôle (Conditions, Boucles)


Objectifs :

• Apprendre à diriger le flux d'exécution du programme avec des conditions et des


boucles.

Contenu :

1. Conditions :
• if-else : Permet de prendre des décisions.
• switch : Choix multiple basé sur la valeur d'une variable.
2. Boucles :
• for : Pour itérer un nombre fixe de fois.
• while : Pour répéter tant qu'une condition est vraie.
• do-while : Exécute le bloc au moins une fois.

Exemples :

• Exemple 1 : Utilisation de if-else .

int nombre = 7;
if (nombre % 2 == 0) {
[Link]("Nombre pair");
} else {
[Link]("Nombre impair");
}

• Exemple 2 : Instruction switch .


int mois = 3;
String nomMois;
switch (mois) {
case 1: nomMois = "Janvier"; break;
case 2: nomMois = "Février"; break;
case 3: nomMois = "Mars"; break;
default: nomMois = "Mois invalide"; break;
}
[Link](nomMois);

• Exemple 3 : Boucle for .

for (int i = 1; i <= 10; i++) {


[Link](i);
}

• Exemple 4 : Boucle while .

int compteur = 0;
while (compteur < 5) {
[Link]("Compteur: " + compteur);
compteur++;
}

• Exemple 5 : Boucle do-while .

int num = 1;
do {
[Link]("Num: " + num);
num++;
} while (num <= 3);

Notions Clés de Java Core


Objectifs :

• Comprendre des concepts avancés spécifiques à Java, tels que la gestion des
chaînes, les collections, les exceptions et la programmation concurrente.
Contenu :

1. String Pool et Immutabilité des Strings :


• String Pool : Les chaînes littérales sont stockées dans une mémoire
partagée pour économiser de l'espace.
• Immutabilité : Les chaînes en Java sont immuables, ce qui signifie
qu'une fois créées, elles ne peuvent pas être modifiées.
2. Collections :
• Définition : Structures de données pour stocker des collections
d'éléments.
• Types principaux : List , Set , Map .
3. Exceptions :
• Définition : Mécanisme pour gérer les erreurs et les exceptions au
moment de l'exécution.
• Gestion des exceptions : try-catch-finally .
4. Threads :
• Définition : Unité d'exécution indépendante.
• Programmation concurrente : Permet d'exécuter plusieurs tâches
en parallèle.

Exemples :

• Exemple 1 : String Pool et immutabilité.

String s1 = "Java";
String s2 = "Java";
[Link](s1 == s2); // true, car s1 et s2 pointent vers la même insta

• Exemple 2 : Utilisation de StringBuilder .

StringBuilder sb = new StringBuilder("Hello");


[Link](" World");
[Link]([Link]()); // "Hello World"

• Exemple 3 : Utilisation d'une ArrayList .


import [Link];

ArrayList<String> liste = new ArrayList<>();


[Link]("Pomme");
[Link]("Banane");
[Link]("Orange");

for (String fruit : liste) {


[Link](fruit);
}

• Exemple 4 : Utilisation d'un tableau (array).

int[] nombres = {10, 20, 30, 40, 50};


for (int nombre : nombres) {
[Link](nombre);
}

• Exemple 5 :

Gestion d'une exception avec try-catch .

try {
int division = 10 / 0;
} catch (ArithmeticException e) {
[Link]("Erreur : Division par zéro");
}

• Exemple 6 : Création d'un thread avec Runnable .


class MonThread implements Runnable {
public void run() {
[Link]("Thread en cours d'exécution");
}
}

public class TestThread {


public static void main(String[] args) {
Thread t = new Thread(new MonThread());
[Link]();
}
}

Mémoires de la JVM et leurs Rôles


Objectifs :

• Comprendre la structure interne de la JVM, y compris ses différentes zones de


mémoire et leurs fonctions.

Contenu :

1. Method Area (Zone des Méthodes) :


• Rôle : Stocke les informations sur les classes chargées, y compris les
méthodes et les constantes. Elle est partagée par tous les threads.
2. Heap (Tas) :
• Rôle : Zone de mémoire où les objets sont alloués. Le garbage
collector nettoie cette zone en supprimant les objets non référencés.
• Importance : Crucial pour la gestion dynamique des objets et de la
mémoire en Java.
3. Stack (Pile) :
• Rôle : Gère les appels de méthode et stocke les variables locales et
les états partiels. Chaque thread a sa propre pile.
• Caractéristique : Plus rapide à accéder que le tas.
4. PC Register (Registre du Compteur de Programme) :
• Rôle : Contient l'adresse de l'instruction actuelle à exécuter pour
chaque thread.
5. Native Method Stack (Pile des Méthodes Natives) :
• Rôle : Gère les appels de méthodes natives écrites dans des
langages comme C ou C++.
6. Garbage Collection (Ramasse-miettes) :
• Rôle : Gestion automatique de la mémoire, récupérant la mémoire
utilisée par les objets qui ne sont plus référencés.

Illustration :

• Exemple : Création et destruction d'objets dans le heap.

public class ExempleObjet {


public static void main(String[] args) {
ExempleObjet obj = new ExempleObjet(); // Objet alloué dans le heap
obj = null; // Objet éligible pour le garbage collection
}
}

Vous aimerez peut-être aussi