SlideShare une entreprise Scribd logo
1  sur  11
Quelques éléments de base 
M. DIENG Abdoulaye 
Introduction au C#
Sommaire 
1. Présentation du C# 
2. Plateforme .NET 
3. Types primitifs 
4. Entrée et sortie de base 
5. Tableaux 
6. Boucle foreach 
7. Passage de paramètres
Présentation de C# 
• Créé par Anders Hejlsberg de Microsoft en 2001 
• Langage OO, inspiré de C++ et proche de Java 
• Normalisé par ECMA et ISO 
• Principal langage de la plateforme .NET. 
• Il est précompilé en MSIL (Microsoft Intermediate Language), 
puis exécuté sur une machine virtuelle 
• Permet de développer diverses applis (Win, Web, mobile, …) 
• Il est non déclaratif (pas d'en-tête) 
• La directive « using » permet de simplifier l'accès aux 
fonctionnalités des namespaces 
• Comme en Java, le point d'entrée est la méthode statique 
« Main » de la classe de l'application
Plateforme .NET 
C# J# VB.NET … 
COMMON LANGUAGE SPECIFICATION 
spécifications communes à tous les langages 
ASP.NET 
Web Forms et Web Services 
Windows Forms 
ADO.NET et XML 
Librairie des classes de base 
(System.IO, System.Data, System.Windows, …) 
COMMON LANGUAGE RUN-TIME 
(compilateur JIT du MSIL, chargeur de classe, garbage collector, …) 
SYSTÈME D’EXPLOITATION
Types primitifs
Entrée et sortie de base 
sortie 
• Permettent l’interactivité entre le programme et l’utilisateur 
• La classe Console fournit les méthodes d’entrée/sortie 
• Console.Write(expression) et 
Console.WriteLine(expression) permettent d’écrire une 
chaîne de caractères sur la console de l’écran 
• La seconde fait un saut de ligne après l’écriture 
• Exemples : 
– Console.Write("BONJOUR"); 
– Console.WriteLine(nbr1+" + "+nbr2+" = "+som); 
– Console.WriteLine("{0}+{1}={2}",nbr1,nbr2,som); 
– Console.WriteLine();
Entrée et sortie de base 
entrée 
• Console.Read() lit le prochain caractère entré dans la 
console et le renvoie sous la forme d‘un entier. 
• Console.ReadLine() lit une ligne entrée dans la console et 
la renvoie sous la forme d’une chaîne de caractères 
• type_nombre.Parse(Console.ReadLine()) permet de 
convertir la chaîne renvoyée en nombre de type type_nombre 
• Exemple : 
int nbr; 
nbr = int.Parse(Console.ReadLine());
Entrée et sortie de base 
exemple 
• Exemple : 
using System; 
namespace exemple1_1{ 
class Program{ 
static void Main(string[] args){ 
Console.WriteLine("Entrez un entier : "); 
int i = int.Parse(Console.ReadLine()); 
Console.WriteLine("Le carre de {0} est {1}",i,i*i); 
} 
} 
}
Tableaux 
• Un tableau est un objet 
• Déclaration 
type[] nomTableau; 
• Allocation 
nomTableau = new type [taille]; 
• Pré-initialisation 
nomTableau = new type []{ val1, val2, …. }; 
ou <type>[] <nomTableau>={ val1, val2, …. }; 
• L'attribut Length donne la taille du tableau.
Boucle foreach 
• La boucle foreach répète un traitement pour chaque élément 
d'un tableau ou d'une collection d‘éléments 
• Foreach ne permet pas de modifier les éléments 
• Syntaxe 
foreach (typeElement element in collectionDéléments) 
{ 
// Code utilisant element courant 
}
Passage de paramètre 
• Par valeur 
– Paramètre effectif accessible qu’en lecture 
– Passage par défaut 
• Par référence 
– Paramètre effectif accessible en lecture et en écriture 
– Syntaxe : typeRslt nomMeth(ref typeParam param) {…} 
• Paramètre en sortie 
– Paramètre effectif accessible qu’en écriture 
– Syntaxe : typeRslt nomMeth(out typeParam param) {…} 
• ref ou out doit aussi précédé un paramètre effectif

Contenu connexe

Tendances

Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptAbdoulaye Dieng
 
Cpp2 : classes et objets
Cpp2 : classes et objetsCpp2 : classes et objets
Cpp2 : classes et objetsAbdoulaye Dieng
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French CourseHaytam EL YOUSSFI
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScriptMicrosoft
 
Développement informatique : Programmation fonctionnelle, décorateur et génér...
Développement informatique : Programmation fonctionnelle, décorateur et génér...Développement informatique : Programmation fonctionnelle, décorateur et génér...
Développement informatique : Programmation fonctionnelle, décorateur et génér...ECAM Brussels Engineering School
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationECAM Brussels Engineering School
 
Développement informatique : Chaines de caractères et expressions regulières
Développement informatique : Chaines de caractères et expressions regulièresDéveloppement informatique : Chaines de caractères et expressions regulières
Développement informatique : Chaines de caractères et expressions regulièresECAM Brussels Engineering School
 
Python avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionPython avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionECAM Brussels Engineering School
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en PythonABDESSELAM ARROU
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesECAM Brussels Engineering School
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancépierrepo
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmiqueAbdoulaye Dieng
 
Csharp2 : classes et objets
Csharp2 : classes et objetsCsharp2 : classes et objets
Csharp2 : classes et objetsAbdoulaye Dieng
 

Tendances (20)

Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Cpp2 : classes et objets
Cpp2 : classes et objetsCpp2 : classes et objets
Cpp2 : classes et objets
 
Introduction à jQuery
Introduction à jQueryIntroduction à jQuery
Introduction à jQuery
 
Python For Data Science - French Course
Python For Data Science - French CoursePython For Data Science - French Course
Python For Data Science - French Course
 
Introduction à JavaScript
Introduction à JavaScriptIntroduction à JavaScript
Introduction à JavaScript
 
Python avancé : Qualité de code et convention de codage
Python avancé : Qualité de code et convention de codagePython avancé : Qualité de code et convention de codage
Python avancé : Qualité de code et convention de codage
 
Cours javascript v1
Cours javascript v1Cours javascript v1
Cours javascript v1
 
Développement informatique : Programmation fonctionnelle, décorateur et génér...
Développement informatique : Programmation fonctionnelle, décorateur et génér...Développement informatique : Programmation fonctionnelle, décorateur et génér...
Développement informatique : Programmation fonctionnelle, décorateur et génér...
 
Programmation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulationProgrammation orientée objet : Object, classe et encapsulation
Programmation orientée objet : Object, classe et encapsulation
 
Développement informatique : Chaines de caractères et expressions regulières
Développement informatique : Chaines de caractères et expressions regulièresDéveloppement informatique : Chaines de caractères et expressions regulières
Développement informatique : Chaines de caractères et expressions regulières
 
Python avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exceptionPython avancé : Gestion d'erreurs et mécanisme d'exception
Python avancé : Gestion d'erreurs et mécanisme d'exception
 
La programmation modulaire en Python
La programmation modulaire en PythonLa programmation modulaire en Python
La programmation modulaire en Python
 
Python avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de donnéesPython avancé : Ensemble, dictionnaire et base de données
Python avancé : Ensemble, dictionnaire et base de données
 
Cours python avancé
Cours python avancéCours python avancé
Cours python avancé
 
Initiation à l'algorithmique
Initiation à l'algorithmiqueInitiation à l'algorithmique
Initiation à l'algorithmique
 
Python avancé : Lecture et écriture de fichiers
Python avancé : Lecture et écriture de fichiersPython avancé : Lecture et écriture de fichiers
Python avancé : Lecture et écriture de fichiers
 
Csharp2 : classes et objets
Csharp2 : classes et objetsCsharp2 : classes et objets
Csharp2 : classes et objets
 
Formation python 3
Formation python 3Formation python 3
Formation python 3
 
Cours php
Cours phpCours php
Cours php
 
Héritage et redéfinition de méthode
Héritage et redéfinition de méthodeHéritage et redéfinition de méthode
Héritage et redéfinition de méthode
 

En vedette

Principes Relationnels et Concepts Oracle
Principes Relationnelset Concepts OraclePrincipes Relationnelset Concepts Oracle
Principes Relationnels et Concepts Oraclewebreaker
 
C# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL ServerC# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL ServerMahfoud EL HOUDAIGUI
 
Les Contraintes | SQL Oracle
Les Contraintes | SQL OracleLes Contraintes | SQL Oracle
Les Contraintes | SQL Oraclewebreaker
 
Opérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL OracleOpérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL Oraclewebreaker
 
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...PMB-BUG
 
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de GroupeSQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de Groupewebreaker
 
c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)Mahfoud EL HOUDAIGUI
 
2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédiblePatrick Guimonet
 
GP Chapitre 2 : Les méthodes de prévision
GP Chapitre 2 : Les méthodes de prévision GP Chapitre 2 : Les méthodes de prévision
GP Chapitre 2 : Les méthodes de prévision ibtissam el hassani
 
Sous-Interrogations - sql oracle
Sous-Interrogations - sql oracleSous-Interrogations - sql oracle
Sous-Interrogations - sql oraclewebreaker
 
Création de Vues | SQL Oracle
Création de Vues | SQL OracleCréation de Vues | SQL Oracle
Création de Vues | SQL Oraclewebreaker
 
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL OracleAfficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL Oraclewebreaker
 
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTSQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTwebreaker
 
Fonctions Mono-Ligne
Fonctions Mono-LigneFonctions Mono-Ligne
Fonctions Mono-Lignewebreaker
 
Manipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracleManipulation des Données , cours sql oracle
Manipulation des Données , cours sql oraclewebreaker
 
Mise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*PlusMise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*Pluswebreaker
 
Création et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL OracleCréation et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL Oraclewebreaker
 

En vedette (20)

Principes Relationnels et Concepts Oracle
Principes Relationnelset Concepts OraclePrincipes Relationnelset Concepts Oracle
Principes Relationnels et Concepts Oracle
 
C# dates and times date formats
C# dates and times  date formatsC# dates and times  date formats
C# dates and times date formats
 
C# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL ServerC# - Mappages de types de données SQL Server
C# - Mappages de types de données SQL Server
 
Les Contraintes | SQL Oracle
Les Contraintes | SQL OracleLes Contraintes | SQL Oracle
Les Contraintes | SQL Oracle
 
Opérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL OracleOpérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL Oracle
 
Sql
SqlSql
Sql
 
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...
Gestion avancée avec PMB: traitement par lots (paniers) et SQL: quelques exem...
 
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de GroupeSQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
 
c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)c# programmation orientée objet (Classe & Objet)
c# programmation orientée objet (Classe & Objet)
 
C# langage & syntaxe
C#   langage & syntaxeC#   langage & syntaxe
C# langage & syntaxe
 
2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible2009-03-13 SQL Server une plateforme crédible
2009-03-13 SQL Server une plateforme crédible
 
GP Chapitre 2 : Les méthodes de prévision
GP Chapitre 2 : Les méthodes de prévision GP Chapitre 2 : Les méthodes de prévision
GP Chapitre 2 : Les méthodes de prévision
 
Sous-Interrogations - sql oracle
Sous-Interrogations - sql oracleSous-Interrogations - sql oracle
Sous-Interrogations - sql oracle
 
Création de Vues | SQL Oracle
Création de Vues | SQL OracleCréation de Vues | SQL Oracle
Création de Vues | SQL Oracle
 
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL OracleAfficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
 
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTSQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
 
Fonctions Mono-Ligne
Fonctions Mono-LigneFonctions Mono-Ligne
Fonctions Mono-Ligne
 
Manipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracleManipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracle
 
Mise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*PlusMise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*Plus
 
Création et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL OracleCréation et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL Oracle
 

Similaire à Csharp1 : quelques elements de base

Cours VB 2012 seance 1
Cours VB 2012 seance 1Cours VB 2012 seance 1
Cours VB 2012 seance 1ISIG
 
Vbisigk
VbisigkVbisigk
VbisigkISIG
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Les fondamentaux de langage C#
Les fondamentaux de langage C#Les fondamentaux de langage C#
Les fondamentaux de langage C#Youness Boukouchi
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)mahbouba
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxLuneSabsPericolo1
 
Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)ISIG
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de donnéesISIG
 
Introduction au langage python notion de base
Introduction au langage python notion de baseIntroduction au langage python notion de base
Introduction au langage python notion de basemohamedAitomar1
 
Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)mohamedAitomar1
 
Dotnet csharp
Dotnet csharpDotnet csharp
Dotnet csharpSDFG5
 
Chap 1 Initiation.pptx
Chap 1 Initiation.pptxChap 1 Initiation.pptx
Chap 1 Initiation.pptxolfaharrabi2
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Aziz Darouichi
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieLoic Yon
 
Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfHailisara
 

Similaire à Csharp1 : quelques elements de base (20)

Cours VB 2012 seance 1
Cours VB 2012 seance 1Cours VB 2012 seance 1
Cours VB 2012 seance 1
 
Vbisigk
VbisigkVbisigk
Vbisigk
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Les fondamentaux de langage C#
Les fondamentaux de langage C#Les fondamentaux de langage C#
Les fondamentaux de langage C#
 
Chapitre 1 (algorithme)
Chapitre 1 (algorithme)Chapitre 1 (algorithme)
Chapitre 1 (algorithme)
 
COURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptxCOURS C++ [Enregistrement automatique]Complet (1).pptx
COURS C++ [Enregistrement automatique]Complet (1).pptx
 
Tour Horizont.Net
Tour Horizont.NetTour Horizont.Net
Tour Horizont.Net
 
Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)Programmation événementielle avec VB (ISIG)
Programmation événementielle avec VB (ISIG)
 
De Java à .NET
De Java à .NETDe Java à .NET
De Java à .NET
 
Environnement de développement de bases de données
Environnement de développement de bases de donnéesEnvironnement de développement de bases de données
Environnement de développement de bases de données
 
Introduction au langage python notion de base
Introduction au langage python notion de baseIntroduction au langage python notion de base
Introduction au langage python notion de base
 
Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)Introduction au langage python (Notion de base)
Introduction au langage python (Notion de base)
 
Dotnet csharp
Dotnet csharpDotnet csharp
Dotnet csharp
 
C#
C#C#
C#
 
Chap 1 Initiation.pptx
Chap 1 Initiation.pptxChap 1 Initiation.pptx
Chap 1 Initiation.pptx
 
Chap1V2019: Cours en C++
Chap1V2019: Cours en C++Chap1V2019: Cours en C++
Chap1V2019: Cours en C++
 
Chapitre 1
Chapitre 1Chapitre 1
Chapitre 1
 
C2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partieC2 - Langage C - ISIMA 1 - Deuxieme partie
C2 - Langage C - ISIMA 1 - Deuxieme partie
 
Cours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdfCours_C_for_Etudiant.pdf
Cours_C_for_Etudiant.pdf
 

Plus de Abdoulaye Dieng

Fondamentaux du Référencement naturel
Fondamentaux du Référencement naturelFondamentaux du Référencement naturel
Fondamentaux du Référencement naturelAbdoulaye Dieng
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobilesAbdoulaye Dieng
 
Prise en main de WordPress
Prise en main de WordPressPrise en main de WordPress
Prise en main de WordPressAbdoulaye Dieng
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API RESTAbdoulaye Dieng
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonAbdoulaye Dieng
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JSAbdoulaye Dieng
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchronesAbdoulaye Dieng
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJSAbdoulaye Dieng
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express jsAbdoulaye Dieng
 
Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Abdoulaye Dieng
 
Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Abdoulaye Dieng
 

Plus de Abdoulaye Dieng (20)

Introduction à React
Introduction à ReactIntroduction à React
Introduction à React
 
Fondamentaux du Référencement naturel
Fondamentaux du Référencement naturelFondamentaux du Référencement naturel
Fondamentaux du Référencement naturel
 
Introduction à Symfony
Introduction à SymfonyIntroduction à Symfony
Introduction à Symfony
 
Panorama des Technologies mobiles
Panorama des Technologies mobilesPanorama des Technologies mobiles
Panorama des Technologies mobiles
 
Prise en main de WordPress
Prise en main de WordPressPrise en main de WordPress
Prise en main de WordPress
 
Initiation à Bootstrap
Initiation à BootstrapInitiation à Bootstrap
Initiation à Bootstrap
 
Introduction à Laravel
Introduction à LaravelIntroduction à Laravel
Introduction à Laravel
 
Fondamentaux d’une API REST
Fondamentaux d’une API RESTFondamentaux d’une API REST
Fondamentaux d’une API REST
 
Introduction à Angular
Introduction à AngularIntroduction à Angular
Introduction à Angular
 
Introduction à l’orienté objet en Python
Introduction à l’orienté objet en PythonIntroduction à l’orienté objet en Python
Introduction à l’orienté objet en Python
 
Introduction à React JS
Introduction à React JSIntroduction à React JS
Introduction à React JS
 
Introduction à Symfony
Introduction à SymfonyIntroduction à Symfony
Introduction à Symfony
 
Initiation à Bootstrap
Initiation à BootstrapInitiation à Bootstrap
Initiation à Bootstrap
 
Requêtes HTTP synchrones et asynchrones
Requêtes HTTPsynchrones et asynchronesRequêtes HTTPsynchrones et asynchrones
Requêtes HTTP synchrones et asynchrones
 
Introduction à HTML 5
Introduction à HTML 5Introduction à HTML 5
Introduction à HTML 5
 
Introduction à AngularJS
Introduction à AngularJSIntroduction à AngularJS
Introduction à AngularJS
 
Initiation à Express js
Initiation à Express jsInitiation à Express js
Initiation à Express js
 
introduction à MongoDB
introduction à MongoDBintroduction à MongoDB
introduction à MongoDB
 
Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15Cours référencement naturel supdeco techonologie avril-15
Cours référencement naturel supdeco techonologie avril-15
 
Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015Cours CSS feuilles de style en cascade- mars 2015
Cours CSS feuilles de style en cascade- mars 2015
 

Csharp1 : quelques elements de base

  • 1. Quelques éléments de base M. DIENG Abdoulaye Introduction au C#
  • 2. Sommaire 1. Présentation du C# 2. Plateforme .NET 3. Types primitifs 4. Entrée et sortie de base 5. Tableaux 6. Boucle foreach 7. Passage de paramètres
  • 3. Présentation de C# • Créé par Anders Hejlsberg de Microsoft en 2001 • Langage OO, inspiré de C++ et proche de Java • Normalisé par ECMA et ISO • Principal langage de la plateforme .NET. • Il est précompilé en MSIL (Microsoft Intermediate Language), puis exécuté sur une machine virtuelle • Permet de développer diverses applis (Win, Web, mobile, …) • Il est non déclaratif (pas d'en-tête) • La directive « using » permet de simplifier l'accès aux fonctionnalités des namespaces • Comme en Java, le point d'entrée est la méthode statique « Main » de la classe de l'application
  • 4. Plateforme .NET C# J# VB.NET … COMMON LANGUAGE SPECIFICATION spécifications communes à tous les langages ASP.NET Web Forms et Web Services Windows Forms ADO.NET et XML Librairie des classes de base (System.IO, System.Data, System.Windows, …) COMMON LANGUAGE RUN-TIME (compilateur JIT du MSIL, chargeur de classe, garbage collector, …) SYSTÈME D’EXPLOITATION
  • 6. Entrée et sortie de base sortie • Permettent l’interactivité entre le programme et l’utilisateur • La classe Console fournit les méthodes d’entrée/sortie • Console.Write(expression) et Console.WriteLine(expression) permettent d’écrire une chaîne de caractères sur la console de l’écran • La seconde fait un saut de ligne après l’écriture • Exemples : – Console.Write("BONJOUR"); – Console.WriteLine(nbr1+" + "+nbr2+" = "+som); – Console.WriteLine("{0}+{1}={2}",nbr1,nbr2,som); – Console.WriteLine();
  • 7. Entrée et sortie de base entrée • Console.Read() lit le prochain caractère entré dans la console et le renvoie sous la forme d‘un entier. • Console.ReadLine() lit une ligne entrée dans la console et la renvoie sous la forme d’une chaîne de caractères • type_nombre.Parse(Console.ReadLine()) permet de convertir la chaîne renvoyée en nombre de type type_nombre • Exemple : int nbr; nbr = int.Parse(Console.ReadLine());
  • 8. Entrée et sortie de base exemple • Exemple : using System; namespace exemple1_1{ class Program{ static void Main(string[] args){ Console.WriteLine("Entrez un entier : "); int i = int.Parse(Console.ReadLine()); Console.WriteLine("Le carre de {0} est {1}",i,i*i); } } }
  • 9. Tableaux • Un tableau est un objet • Déclaration type[] nomTableau; • Allocation nomTableau = new type [taille]; • Pré-initialisation nomTableau = new type []{ val1, val2, …. }; ou <type>[] <nomTableau>={ val1, val2, …. }; • L'attribut Length donne la taille du tableau.
  • 10. Boucle foreach • La boucle foreach répète un traitement pour chaque élément d'un tableau ou d'une collection d‘éléments • Foreach ne permet pas de modifier les éléments • Syntaxe foreach (typeElement element in collectionDéléments) { // Code utilisant element courant }
  • 11. Passage de paramètre • Par valeur – Paramètre effectif accessible qu’en lecture – Passage par défaut • Par référence – Paramètre effectif accessible en lecture et en écriture – Syntaxe : typeRslt nomMeth(ref typeParam param) {…} • Paramètre en sortie – Paramètre effectif accessible qu’en écriture – Syntaxe : typeRslt nomMeth(out typeParam param) {…} • ref ou out doit aussi précédé un paramètre effectif