28
Enix Learning (journée du 11/01/2014) C# sur .NE T (les bases du langage) Par Hamoji

Introduction à la programmation C#

Embed Size (px)

Citation preview

Enix Learning (journée du 11/01/2014)

C# sur .NET(les bases du langage)Par Hamoji

Enix Learning (journée du 11/01/2014)

Plan de présentation

PART 1 (les fondamentales)

IntroductionVariables et operateursConditions et bouclestableauMéthodes (fonction et procédure)manipulation de fichier

PART 2 (notions utiles)

POO en C#les WinFormsles événementsutilisation de la classe MathématiqueTravailler avec le Tempsles interfaces Les collections

Enix Learning (journée du 11/01/2014)

INTRODUCTION{ // …

historique etfonctionnement

}

Bref historique Le C# (cé Sharp) et le .NET ont été par Anders Hejlsberg (le

créateur du langage Delphi ) alors employé chez Microsoft.

2001 : création du C#

2002: naissance du Framework .Net: 1.0

Les autres versions du .NET: 2.0, 3.0, 3.5, 4.0, 4.5.

Le C# est considéré comme le langage phare de Microsoft

Enix Learning (journée du 11/01/2014)

Utilisation du C#

application de bureau, Développement mobile (Windows mobile et Android avec Xamarin), web, surface, jeux vidéo (unity 3D)…

Enix Learning (journée du 11/01/2014)

Compilation (1)

Enix Learning (journée du 11/01/2014)

La compilation est le processus par lequel un programme dit compilateur traduit le code source en code binaire exécutable

Exemple compilation de nos bons vieux langages

Compilation (2)Inconvénients de ce type

Notre programme tourne sur un S.E et un processeur précis.

Ex: pour faire tourner un programme écrit sous une machine Windows avec un cpu x86 sous une machine linux avec un cpu x64, nous devons recompiler le code suivant les spécificité du systèmes voire faire une modification dans le code pour qu’il s’adapte à ce dernier

Enix Learning (journée du 11/01/2014)

Compilation (3)

Enix Learning (journée du 11/01/2014)

Notez que le CIL correspond au programme que vous allez distribuer. Sous Windows il prend l’apparence d’un .exe comme les programme habituels mais

ils ne contient pas de binaire

Le CLR est la machine virtuel (Framework .net) qui interprète le CIL et le transforme en binaire.Il dispose du JIT debugger qui permet de lancer Visual studio en cas d’erreur dans le

programme .net afin d’afficher la source de l’erreur

Le .NET

Enix Learning (journée du 11/01/2014)

Le traditionnel Hello world!

Enix Learning (journée du 11/01/2014)

Enix Learning (journée du 11/01/2014)

Variables et operateurs{ // …

Int i ;i++;String a = new String();

}

Les variables (1)

Enix Learning (journée du 11/01/2014)

Déclaration

1. Type_C# nom_de_la variable;2. Type_C# nom_de_la variable = valeur;

Les variables (2)

Enix Learning (journée du 11/01/2014)

Les variables (3)Les mots clés sizeof et typeof permettent de déterminer respectivement la taille et le type d’une variable.Ex: { //… typeof(int) }

Un type particulier: les enumeration;

Enix Learning (journée du 11/01/2014)

Les opérateurs (1)

Enix Learning (journée du 11/01/2014)

Mathématiques (+,-,*, /, %,=){

i++ vaut i + 1;i-- vaut i – 1;i += 3 vaut i + 3;i -= 3 vaut i – 3;i *= 3 vaut i * 3;i /= 3 vaut i /3;

}

Comparaison (<, >, <=, >=, !=, ==){

l’operateur d’égalité est ‘==‘ quant à ‘=‘, il est le symbole d’affectation.}

Les operateurs (2)Les operateurs logiques0 correspond à false (faux)1 correspond à true (vrai)NOT(!), AND(&&), OR(||), XOR(^)

Enix Learning (journée du 11/01/2014)

Les opérateurs (3)L’opérateur ternaire ‘ ? ’ { a ? b : c; }

a doit etre une expression conditionnelle.Si a vaut true, b est retournéSi a vaut false, c est retourné

Enix Learning (journée du 11/01/2014)

Demo

Enix Learning (journée du 11/01/2014)

Enix Learning (journée du 11/01/2014)

Conditions et boucles { // …

for (int i; i = 0; i++){}

}

Les conditionsif (condition)

{

}

Else

{

}

Switch (valeur)

{

case val1 {}

break;

case val1 {}

break;

default {}

break;

}

Enix Learning (journée du 11/01/2014)

/*break sert stopper l’exécution d’une instruction*/

Boucles conditionnelfor(int i; i <= 100, i++)

{

}

while (condition)

{

//instruction

}

do

{

//instruction

}

while (condition);

Enix Learning (journée du 11/01/2014)

/*le mot clé continue sert à faire un saut d’instruction*/

Enix Learning (journée du 11/01/2014)

Les tableaux{ // …int[] myArray = new int[4];}

Création de tableaux

Enix Learning (journée du 11/01/2014)

class TestArraysClass { static void Main() {

// Declare a single-dimensional array int[] array1 = new int[5]; // Declare and set array element values int[] array2 = new int[] { 1, 3, 5, 7, 9 }; // Alternative syntax int[] array3 = { 1, 2, 3, 4, 5, 6 }; // Declare a two dimensional array int[,] multiDimensionalArray1 = new int[2, 3];

// Declare and set array element values int[,] multiDimensionalArray2 = { { 1, 2, 3 }, { 4, 5, 6 } };

// Declare a jagged array int[][] jaggedArray = new int[6][]; // Set the values of the first array in the jagged array structure jaggedArray[0] = new int[4] { 1, 2, 3, 4 };

}}

Enix Learning (journée du 11/01/2014)

methodes{ // …Private void procedure()

{…}}

Procédure et fonctionProcédurestatic void nom_procedure(parametres){…}

Fonction Static string nom_fonction(parametres) // string représente le type de retour de la fonction et peut être changé

{…return valeur_de_retour_de_la_methode;

}

Enix Learning (journée du 11/01/2014)

Enix Learning (journée du 11/01/2014)

Fichiers{ // …

}

Notions de Fichiers

Enix Learning (journée du 11/01/2014)

Enix Learning (journée du 11/01/2014)

MERCI A [email protected]

655299370