**Sous-titre du module Campus-Booster ID : **XXXXX www.supinfo.com Copyright © SUPINFO. All rights reserved Notions fondamentales du C# 2.0.

Slides:



Advertisements
Présentations similaires
La programmation orientée objet avec Java L3-MIAGE Plan
Advertisements

Hiver 2010JGA Beaulieu GEF 243B Programmation informatique appliquée Structure de base des programmes en C.
GEF 243B Programmation informatique appliquée
Premier programme en C :
La boucle for : init7.c et init71.c
A RECUPERER EN ENTRANT Le polycopié de Caml Partie 1
Rappels C.
Langage C# et Plate-forme .NET
Formation universitaire à .NET: Introduction à C#
La classe String Attention ce n’est pas un type de base. Il s'agit d'une classe défini dans l’API Java (Dans le package java.lang) String s="aaa"; // s.
(Classes prédéfinies – API Java)
Plan du cours La sérialisation: – comment stocker et restaurer les Objets? Les interfaces graphiques et la programmation évènementielle. –Comment concevoir.
C.
Programmer en JAVA par Tama
Tableaux Certains problèmes nécessitent beaucoup de variables du même type. Exemple : relevé de températures matin et soir dans 10 villes pour 10 jours.
Algorithme et programmation
Principes de programmation (suite)
Points importants de la semaine Les commentaires. Les variables. Les instructions conditionnelles. Les instructions itératives (les boucles).
Introduction à la programmation (420-PK2-SL) cours 12 Gestion des applications Technologie de linformation (LEA.BW)
Récursivité.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
UNIVERSITE CHOUAIB DOUKKALI Département des mathématiques
Les méthodes en java Une méthode est un regroupement d’instructions ayant pour but de faire un traitement bien précis. Une méthode pour être utilisée.
Les éléments de base de l’algorithmique
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
Introduction à la programmation (Java)
Les pointeurs Modes d’adressage de variables. Définition d’un pointeur. Opérateurs de base. Opérations élémentaires. Pointeurs et tableaux. Pointeurs et.
Structures de données IFT Abder Alikacem La classe string Département dinformatique et de génie logiciel Édition Septembre 2009 Département dinformatique.
66 Utilisation des classes et des objets. 6-2 Objectifs A la fin de ce cours, vous serez capables de : Créer de nouvelles classes à laide de Eclipse Utiliser.
IFT 6800 Atelier en Technologies d’information
LIFI-Java 2004 Séance du Jeudi 9 sept. Cours 1. La notion de langage Décrire une tâche à effectuer –programme Écrire à un haut niveau –facile pour lutilisateur.
Chapitre 9 Les sous-programmes.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI) Plate-forme.NET.
CSI 1502 Principes fondamentaux de conception de logiciels
Leçon 1 : notion dobjet IUP Génie Informatique Besançon Méthode et Outils pour la Programmation Françoise Greffier Université de Franche-Comté.
Procédures et fonctions
Les Opérateurs Ils régissent toutes les opérations ou transformations sur les valeurs des variables. Opérateur d'affectation Opérateurs arithmétiques Opérateurs.
L’essentiel du langage C
La notion de type revisitée en POO
SIF-1053 Architecture des ordinateurs
ALGORITHMIQUE ET PROGRAMMATION C
GESTION ET TRAITEMENT DES ERREURS
Créer des packages.
Un survol du language C.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Les erreurs communes en Java.
Introduction à Visual Studio C++ (VC++)
 Syntaxe du langage PHP
Tutorat en bio-informatique
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 3 – Classes et objets en Java Master 1 SIGLIS1 Java Lecteur - Chapitre 3 Classes et objets en Java.
Les classes présenté par: RAHMOUNE RIME / ZEKRI SELMA.
Les classes et les objets Les données finales class A { … private final int n = 20 ; // la valeur de n est définie dans sa déclaration … } class A { public.
Les surcharges d'opérateurs
Cours LCS N°4 Présenté par Mr: LALLALI
Introduction et Généralités sur l’Algorithmique
Conception de Programmes - IUT de Paris - 1ère année – Cours 8 – Les entrées/sorties Comment fonctionnent les opérateurs > pour les types élémentaires.
Classe 1 CSI2572 Autres modificateurs de déclaration de variables: & volatile & register & static & auto & extern & const volatile Indique au compilateur.
1 PHP 5 Notions fondamentales (niveau 1 – cours #2) Formation continue – Cégep de Sainte-Foy.
Cours 4 (14 octobre) Héritage. Chapitre III Héritage.
Conception de Programmes - IUT de Paris - 1ère année Conception de Programmes Objectifs et organisation du cours Introduction à la P.O.O.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 2 – Java Premiers pas Master 1 SIGLIS1 Java Lecteur - Chapitre 2 - Java Premiers Pas.
Scripts et fonctions Instructions de contrôle
PRO-1027 Programmation Scientifique en C
22 Concepts de base du langage Java. 2-2 Objectifs A la fin de ce cours, vous serez capables de : Identifier les éléments essentiels de Java Identifier.
Exception Handling "Unfortunately, it's almost accepted practice to ignore error conditions, as if we're in a state of denial about errors." Bruce Eckel.
BlueJ_III 1 Java, les objets : tout de suite ! Interaction entre objets Notes de cours associées au chapitre 3 tutorial BlueJ
LES CLASSES ET LES OBJETS
C++ BY AURÉLIEN MODULO MARION. PLAN DES TROIS PRÉSENTATIONS C++ avancé C++ orienté objet Bases de C++
Transcription de la présentation:

**Sous-titre du module Campus-Booster ID : **XXXXX Copyright © SUPINFO. All rights reserved Notions fondamentales du C# 2.0

Votre formateur… Titre: **Entrez le titre ou la fonction. Distinctions & expérience: **Ce qui rend le présentateur qualifié pour ce cours. Formation: **Liste des diplômes ou certifications si nécessaire. Publications: **Toutes les publications du présentateur notamment au sujet du cours. Contact: **Campus-Booster ID: Nom du formateur Notions fondamentales du C# 2.0

Objectifs de ce module Utiliser Visual Studio pour créer un programme C# Utiliser des variables de types prédéfinis ou de types utilisateurs Modifier le flux d’exécution en utilisant des instructions spécifiques Utiliser des tableaux Utiliser des méthodes Gérer les exceptions A la fin de ce module, vous saurez : Notions fondamentales du C# 2.0

Plan du module Vue d’ensemble du C# 2.0 Types de données Instructions et tableaux Méthodes et gestion d’erreurs Voici les parties que nous allons aborder : Notions fondamentales du C# 2.0

Vue d’ensemble du C# 2.0 Notions fondamentales du C# 2.0

Plan de la partie Structure d’un programme C# 2.0 Opérations élémentaires d’entrées/sorties Méthodes conseillées Compilation, exécution et débogage Voici les chapitres que nous allons aborder : Vue d’ensemble du C# 2.0

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Méthode Main() Classes Espaces de noms Un programme C# est composé de :

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Point d’entrée du programme Méthode marquée static Type de retour : void ou int La méthode Main() static void Main() { }

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Argument de type string[] Contient les arguments de la ligne de commande La méthode Main() static void Main(string[] args) { }

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Toute méthode, variable, etc… doit être contenue dans une classe Une classe est déclarée avec le mot clé class Les classes class MyClass { }

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Ils regroupent les classes Ils peuvent être imbriqués Les espaces de noms namespace ParentNS.ChildNS { }

Structure d’un programme C# 2.0 Vue d’ensemble du C# 2.0 Exemple using System; namespace MyProgram { class HelloWord { static void Main() { Console.WriteLine("Hello World !"); } } }

Démonstration Vue d’ensemble du C# 2.0 Démonstration « Hello World »

Opérations élémentaires d’entrées / sorties Vue d’ensemble du C# 2.0 Classe Console Opérations de sorties Opérations d’entrées Interaction avec l’utilisateur

Classe Console Vue d’ensemble du C# 2.0 Permet d’accéder aux flux : Sortie standard (écran) Erreur standard (écran) Entrée standard (clavier) Les flux peuvent être redirigés Uniquement pour des applications console Accès aux entrées / sorties

Opérations de sortie Vue d’ensemble du C# 2.0 Console.Write pour afficher du texte Console.WriteLine pour afficher du texte suivi d’un retour à la ligne Exemples : Affichage à l’écran Console.Write("hello"); Console.WriteLine("world");

Opérations d’entrée Vue d’ensemble du C# 2.0 Console.Read pour lire le caractère suivant Console.ReadLine pour lire toute la ligne Exemple : Saisie de valeurs Console.WriteLine("Entrez votre nom :"); string name = Console.ReadLine();

Méthodes conseillées Vue d’ensemble du C# 2.0 Conventions de nommage Commentaires Documentation XML Gestion des exceptions Architecture Ecrire des programmes de qualité

Conventions de nommage Vue d’ensemble du C# 2.0 Peuvent être librement choisies Doivent être identiques au sein d’une équipe Conventions généralement respectées : « PascalCase » pour : méthodes, classes, namespaces, … « camelCase » pour : variables locales, … Il est possible de préfixer les noms de variables pour indiquer leur type : iRecordCount, …

Commentaires Vue d’ensemble du C# 2.0 Commentaires sur une ligne Commentaires multi-lignes Exemples : Faciliter la compréhension du code // Commentaire sur une ligne /* Commentaire multiligne */

Documentation XML Vue d’ensemble du C# 2.0 Commentaires rattachés à une classe, une méthode… Syntaxe particulière (/// et balises XML) Documentation accessible par l’IntelliSense et l’explorateur d’objet Documentation générée au format XML Génération de documentation

Documentation XML Vue d’ensemble du C# 2.0 Exemple /// /// Calcule le carré d'un entier /// /// Entier a à élever au carré /// Carré de a int Square(int a) { return a; }

Démonstration Vue d’ensemble du C# 2.0 Démonstration Commentaires XML

Gestion des exceptions Vue d’ensemble du C# 2.0 Une exception est un cas non géré Utilisation d’un bloc try / catch Exemple : try { // Instructions "risquées" } catch(Exception e) { // Gérer l'exception }

Architecture Vue d’ensemble du C# 2.0 Buts recherchés : Modularité Réutilisabilité Maintenabilité Evolutivité Architecture 3 couches : Couche présentation Couche métier Couche d’accès aux données

Compilation, exécution et débogage Vue d’ensemble du C# 2.0 Compilation Exécution Débogage Démonstration Utilisation de l’environnement de développement

Compilation Vue d’ensemble du C# 2.0 Microsoft Intermediate Language (MSIL) Microsoft Intermediate Language (MSIL) Code natif Code C# La compilation se fait en 2 étapes : Compilateur Just-In-Time Compiler (JIT) Compile-timeRun-time

Compilation Vue d’ensemble du C# 2.0 En ligne de commande csc.exe msbuild.exe Dans Visual Studio Menu Build > Build Solution Localisation des erreurs

Exécution Vue d’ensemble du C# 2.0 En ligne de commande Tapez le nom de l’application Dans Visual Studio Menu Debug > Start Without Debugging Lancement du programme

Débogage Vue d’ensemble du C# 2.0 Erreurs et débogage JIT Points d’arrêts et pas-à-pas Espions Examen et modifications des variables Localisation et correction des erreurs

Désassemblage Vue d’ensemble du C# 2.0 ildasm.exe Reflector Obfuscateurs Affichage compréhensible de l’IL

Démonstration Vue d’ensemble du C# 2.0 Démonstration Débogage & ildasm

Questions Vue d’ensemble du C# 2.0

Quiz Vue d’ensemble du C# 2.0 Une classe peut appartenir à plusieurs espaces de nom La fonction Main doit être marquée static Visual Studio permet de modifier la valeur d’une variable pendant le débogage Console.Print permet d’afficher du texte à l’écran ildasm.exe permet de visualiser l’IL Quelles sont les propositions vraies ?

Types de données Notions fondamentales du C# 2.0

Plan de la partie Types de données prédéfinis Types de données définis par l’utilisateur Conversion de types de données Comparaison entre types valeur et types référence Utilisation de références comme paramètres de méthode Voici les chapitres que nous allons aborder : Types de données

Types de données prédéfinis Types de données Déclaration de variables locales Attribution de valeurs Opérateurs courants Nous aborderons les points suivants :

Déclarations de variables locales Types de données Syntaxe générale : ; Exemples : Syntaxe int count; float price, weight;

Déclarations de variables locales Types de données Quelques types de données intégrés : char, byte, int, long, float, double, string Alias vers des types de l’espace de nom System : int → System.Int32 Alias de types int count; // est équivalent à : System.Int32 count;

Attributions de valeurs Types de données Syntaxe générale : = ; Exemples : // Les variables sont supposées déclarées count = 4; price = 2.5f; name = "Bob"; count1 = count2 = 0; // Déclaration et initialisation int i = 4;

Attributions de valeurs Types de données Ajout d’une valeur à une variable : Syntaxe abrégée : Assignations composées count = count + 5; Count += 5;

Attributions de valeurs Types de données Autres abréviations courantes : Assignations composées // count = count * 2; count *= 2; // count = count + 1; count++; // count = count - 1; count--; // etc...

Opérateurs courants Types de données La table suivante liste les principaux opérateurs OpérateursSyntaxe (In)égalité Relationnels Conditionnels Arithmétiques Incrément / Décrément == != > || && ?: + - * / % Assignation+= -= *= /= %=

Types de données définis par l’utilisateur Types de données Types énumération Types structure Nous aborderons les points suivants :

Types énumération Types de données Utiles lorsqu'une variable ne peut avoir qu'un ensemble spécifique de valeurs Déclaration : Utilisation : enum Color { Red, Green, Blue } Color colorPalette = Color.Red; Console.Write(colorPalette); // Affiche "Red"

Types structure Types de données Regroupement de variables Peut contenir des méthodes Peut contenir un constructeur pour initialiser les valeurs Définition

Types structure Types de données Déclaration : Utilisation : Syntaxe Employee emp; emp.FirstName = "Jean"; emp.Age = 23; struct Employee { public string FirstName; public int Age; }

Conversions de données Types de données Conversions implicites Conversions explicites Fonctions de conversions Il existe trois types de conversions de données :

Conversions implicites Types de données Généralement possible s’il ne peut y avoir de pertes de données Exemple : int vers long La conversion ne peut pas échouer int intValue = 5; long longValue = intValue;

Conversions explicites Types de données La conversion doit être explicite s’il y a une perte possible d’informations Exemple : long vers int Par défaut le compilateur ne génère pas d’exception en cas de débordement Opération de « cast » long longValue = 5.0f; int intValue = (int)longValue;

Fonctions de conversions Types de données Certaines conventions demandent un traitement des données Exemple : chaine de caractères vers entier Parsing string str = "1234"; int i = int.Parse(str);

Types valeur et types référence Types de données Il existe deux types de variables : Variables de type référence Variables de type valeur Leur comportement est différent Elles sont stockées dans des zones mémoires distinctes : la pile et le tas

Démonstration Types de données Démonstration Types valeur Types références

Cas des types valeur Types de données PileTas Les types valeur sont stockés dans la pile StructEmployee emp1; StructEmployee emp2 = emp1; emp1 : « Jean », 23 emp2 : « Jean », 23

Cas des types référence Types de données PileTas Les types référence sont stockés dans le tas ClassEmployee emp1; ClassEmployee emp2 = emp1; « Jean », 23 emp1 : Référence emp2 : Référence

Types valeur Types de données Les types valeurs incluent : Les types numériques bool, char Les énumérations Les structures

Types référence Types de données Les types références incluent : Les classes Les tableaux Les délégués La classe string est un cas à part, c’est une classe qui se comporte comme un type valeur

Paramètres par valeur Types de données Utilisation d’une référence comme paramètre de méthode : Une copie de la référence est fournie à la méthode Les données référencées peuvent être modifiées par la méthode

Paramètres par référence Types de données Utilisation d’une valeur comme paramètre de méthode : Une copie de la valeur est fournie à la méthode La méthode peut modifier la copie mais pas les données originales Le comportement d’un type par référence peut être forcé à l’aide du mot clé ref

Démonstration Types de données Démonstration Paramètres par valeur / référence

Questions Types de données

Quiz Types de données Les types numériques Les classes Les chaines de caractères Les structures Les tableaux Parmi les types suivant, lesquels sont des types valeur ?

Instructions et tableaux Notions fondamentales du C# 2.0

Plan de la partie Introduction aux instructions Instructions conditionnelles Instructions itératives Instructions de saut Introduction aux tableaux Voici les chapitres que nous allons aborder : Instructions et tableaux

Introduction aux instructions Instructions et tableaux Instructions exécutées les unes après les autres Certaines instructions modifient le flux d’exécution Conditions Itérations Sauts

Instructions conditionnelles if / then / else Instructions et tableaux Permet d’exécuter une instruction si une condition est vraie if (a == 5) Console.Write("a == 5"); else if (a == 10) Console.Write("a == 10"); else Console.Write("a != 5 && a != 10");

Instructions conditionnelles Types de données Une instruction peut être remplacée par un bloc if (a == 5 || a == 10) { Console.Write("a == 5..."); Console.Write(“ou a == 10"); }

Instructions conditionnelles Opérateur ternaire Instructions et tableaux Exemple : Equivalent à : if (b > 0) a = 1; else a = 2; a = (b > 0 ? 1 : 2);

Instructions conditionnelles switch Instructions et tableaux Exécute des instructions en fonction de la valeur d’une variable switch(a) { case 1: Console.Write("a == 1"); break; case 2: Console.Write("a == 2"); break; default: Console.Write("a != 1 && a != 2"); break; }

Instructions itératives Types de données Permettent d’exécuter une instruction plusieurs fois for foreach while do / while

Instructions itératives Boucle for Instructions et tableaux Exemple : // Affiche les nombres de 1 à 10 for (int i = 1; i <= 10; i++) { Console.WriteLine(i); }

Instructions itératives Boucle foreach Instructions et tableaux Permet d’itérer dans un ensemble de données Exemple : // Affiche les nombres de 1 à 10 int[] array = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; foreach (int i in array) { Console.WriteLine(i); }

Instructions itératives Boucle while Instructions et tableaux Exemple : // Affiche les nombres de 1 à 10 int a = 1; while (a <= 10) { Console.WriteLine(i); i++; }

Instructions itératives Boucle do / while Instructions et tableaux Exemple : Contrairement à while, le bloc do / while est exécuté au moins 1 fois // Affiche les nombres de 1 à 10 int i = 1; do { Console.WriteLine(i); i++; } while (i <= 10);

Instructions de saut break Instructions et tableaux break interrompt la boucle en cours L’exécution reprend juste après la boucle // Affiche les nombres de 1 à 5 for (int i = 1; i <= 10; i++) { if (i == 6) break; Console.WriteLine(i); }

Instructions de saut continue Instructions et tableaux Saute l’itération en cours L’exécution reprend sur l’itération suivante // Affiche les nombres de 1 à 10 sauf 5 for (int i = 1; i <= 10; i++) { if (i == 5) continue; Console.WriteLine(i); }

Instructions de saut goto Instructions et tableaux Branche l’exécution sur une ligne donnée L’utilisation de goto n’est pas considéré comme un style de programmation « propre » Utile pour sortir de boucles imbriquées

Instructions de saut goto Instructions et tableaux Exemple : for (int i = 0; i < 10; i++) { for (int j = 0; j < 10; j++) { if (i == 5) goto out_of_loop; } out_of_loop: Console.Write("Fin");

Introduction aux tableaux Instructions et tableaux Suite d’éléments du même type Accessibles par un index Type référence … index 3 index 0

Introduction aux tableaux Tableaux à 1 dimension Instructions et tableaux Déclaration : Utilisation : // Crée un tableau de 10 entiers int[] array = new int[10]; for (int i = 0; i < array.Length; i++) { array[i] = i * i; } // Affiche 25 Console.Write(array[5]);

Introduction aux tableaux Tableaux à 2 dimensions Instructions et tableaux Déclaration : Utilisation : // Crée un tableau de 10x10 entiers int[,] array = new int[10,10]; for (int i = 0; i < array.GetLength(0); i++) for (int j = 0; j < array.GetLength(1); j++) { array[i, j] = i * j; }

Questions Instructions et tableaux

Quiz Instructions et tableaux if for while switch foreach Parmi les structures suivantes, lesquelles sont des boucles ?

Méthodes et gestions d’erreurs Notions fondamentales du C# 2.0

Plan de la partie Utilisation des méthodes Utilisation des paramètres Gestion des erreurs Voici les chapitres que nous allons aborder : Méthodes et gestion d’erreurs

Remarque Méthodes et gestion d’erreurs Utilisation du mot clé static

Utilisation des méthodes Déclaration Méthodes et gestion d’erreurs ( ) { … } Exemples : static int Square(int i) { // Instructions... } static void Initialize() { // Instructions... }

Utilisation des méthodes Appel Méthodes et gestion d’erreurs ( ) ; Exemples : int sq = Square(5); Initialize();

Utilisation des méthodes Retour d’une valeur Méthodes et gestion d’erreurs Mot clé return Exemples : static int Square(int i) { return i * i; // Renvoi de valeur } static void Initialize() { //... if (a == 5) return; // Sortie prématurée //... }

Utilisation des paramètres Fonctions à plusieurs paramètres Méthodes et gestion d’erreurs Séparer les paramètres par des virgules Exemple : static int Add(int a, int b) { return a + b; } int result = Add(4, 2);

Utilisation des paramètres Paramètres de sortie Méthodes et gestion d’erreurs Déclaration Exemple int quotient, remainder; Divide(20, 3, out quotient, out remainder); Console.WriteLine("10 = 3 * {0} + {1}", quotient, remainder); void Divide(int n, int d, out int quotient, out int remainder) { quotient = n / d; remainder = n % d; }

Utilisation des paramètres Surcharge de méthodes Méthodes et gestion d’erreurs Deux méthodes peuvent avoir le même nom si elles ont des paramètres de types différents Exemple : Le compilateur détermine quelle méthode doit être appelée en fonction du type des valeurs passées en paramètres static int Square(int i) {... } static float Square(float f) {... }

Utilisation des paramètres Nombre de paramètres variables Méthodes et gestion d’erreurs Utilisé pour une fonction dont on ne connaît pas à l’avance le nombre de paramètres Utilisation du mot clé params : static int Sum(params int[] values) { int result = 0; foreach (int i in values) result += i; return result; } int sum = Sum(4, 2, 5, 5);

Gestion d’erreurs try / catch / finally Méthodes et gestion d’erreurs Bloc de gestion d’exception : try { // Instructions "risquées" } catch (Exception ex) { // Gestion de l'exception } finally { // finally est toujours exécuté }

Gestion d’erreurs Levée d’exception Méthodes et gestion d’erreurs Utilisation du mot clé throw Exemple : static float Divide(int a, int b) { if (b == 0) throw new Exception("Erreur de division par zéro dans Divide()"); else return a / b; }

Démonstration Méthodes et gestion d’erreurs Démonstration Gestion d’erreurs

Questions Méthodes et gestion d’erreurs

Deux méthodes peuvent avoir le même nom Un type valeur peut être passé en paramètre par référence en utilisant le mot clé byref Une méthode peut ne pas renvoyer de valeur Une méthode peut avoir un nombre de paramètres variables Quiz Méthodes et gestion d’erreurs Vrai Faux Vrai Faux Vrai Faux Vrai Faux

Instructions de base Type de données, tableaux Type de données, tableaux Structure d’un programme C# Méthodes, Gestion d’erreurs Méthodes, Gestion d’erreurs Résumé du module Utilisation de Visual Studio Notions fondamentales du C# 2.0

On peut implicitement convertir un long en float Par convention, les noms de méthodes sont écris en « camelCase » Les structures sont un type valeur Dans un block try / catch / finally, si une exception est levée le bloc finally n’est pas exécuté Quiz Notions fondamentales du C# 2.0 Vrai Faux Vrai Faux Vrai Faux Vrai Faux

Félicitations Vous avez suivi avec succès le module de cours Notions fondamentales du C# 2.0

Fin Notions fondamentales du C# 2.0