Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Langage C#

3 417 vues

Publié le

Apprendre facilement le langage C#

Publié dans : Technologie
  • I can't believe how much I saved! Why would anyone buy a car anywhere else - it's cheaper and easy. ▲▲▲ https://w.url.cn/s/AFqTUhi
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici

Langage C#

  1. 1. Présentation C# Jean-Baptiste Vigneron j.vigneron@epsi.fr
  2. 2. Introduction • Langage de programmation crée par Anders Heljberg (Microsoft) en 2001 • Langage orienté objet à typage fort, inspiré de C++ et Java • Permet d’utiliser le framework .NET de manière optimale • Dernière version: 4.5.1 (Octobre 2013) • Classement TIOB des langages les plus utilisés au monde: 5ème en janvier 2014
  3. 3. MOBILE Windows Phone WEB ASP.NET, Silverlight, WebAPI… PC WPF, Modern Style Apps, Windows Forms… XBOX & KINECT DirectX, XNA, WPF… CLOUD Windows Azure Disponible pour tous ces plateformes
  4. 4. Démarrage • Déclaration d’une variable int a; int b = 5; double c = a + b; • Assignation d’une valeur a = 6; c = a + 4 c += 9; • Déclaration d’une constante const float PI = 3.14; • Commentaire // Commentaire sur une ligne /* * Commentaires sur plusieurs lignes */
  5. 5. Exemples de types existants C# C / C++ VB int int Integer long long Long char char string String String bool bool Boolean double double Double float float Variant decimal float Decimal
  6. 6. Opérateurs a + b Addition a – b Soustraction a / b Division a % b Modulo a += b a est égal à la somme de a et de b a -= b a est égal à la soustraction entre a et b a == b Egal a != b Différent a > b Supérieur a >= b Supérieur ou égal a < b Inférieur a <= b Inférieur ou égal • Arithmétiques • Comparaison
  7. 7. Programmation orientée objet • Définition • Une classe comporte un ensemble de variables (appelés attributs) et de procédures/fonctions (appelés méthodes). La classe représente le moule de l’objet. • Un objet est une instance créée à partir d’une classe. • La POO permet de se rapprocher de la réalité. En effet, les variables représentent l’état de l’objet, alors que les méthodes définissent son comportement.
  8. 8. Programmation orientée objet • Exemple 1: • Une classe: Une personne • Des objets: Paul, Pierre, Sabine… • Attributs: Couleur des cheveux, Taille, Poids, Sexe… • Comportements: Parler, Courir, Marcher, Sourir… • Exemple 2: • Une classe: Une voiture • Des objets: Ford Fiesta, Peugeot 208, Audi R8… • Attributs: Couleur, Type de carburant, Nombre portes… • Comportements: Démarrer, Accélérer, Freiner, Tourner, Stop…
  9. 9. Programmation orientée objet • Notes: • Dans une classe, les éléments ont 3 niveaux de visibilité : Privé (Private), Protégé (Protected) et Public. • Les attributs est toujours PRIVES. Pour lire ou modifier une valeur, on créer une méthode publique Get…() et une autre méthode publique Set…(). Ainsi, il est interdit de faire maVoiture._couleur = « Rouge ». A la place on utilise maVoiture.SetCouleur(« Rouge »). • En C#, les classes peuvent comporter également des « propriétés ». Elles permettent d’alléger la syntaxe et ainsi finalement de faire maVoiture.Couleur = Rouge.
  10. 10. • Déclaration d’une classe sans propriétés class Personne { // Attribut private string _nom; // Getter public string GetNom() { return _nom; } // Setter public void SetNom(string nom) { _nom = nom; } // Méthode public void Parler() { Console.WriteLine(«{0} dit bonjour.», _nom); } } Programmation orientée objet
  11. 11. • Simplification en utilisant les propriétés class Personne { // Propriété public Nom { get; set; } // Méthode public void Parler() { Console.WriteLine(«{0} dit bonjour.», Nom); } } Programmation orientée objet
  12. 12. Programmation orientée objet • Sans propriétés class Personne { private int _age; public int GetAge() { return _age; } public void SetAge(int age) { _age = age; } } • Avec propriétés class Personne { private int _age; public int Age { get { return _age; } set { if(value > 0) { age = value; } } } }
  13. 13. Programmation objet • Notes: • Une classe peut comporter des constructeurs. Ce sont des méthodes qui permettent d’initialiser les attributs. Ils sont appelés lorsqu’un objet est instancié. • Une classe peut également comporter un seul destructeur. Il est appelé lorsque l’objet est détruit et permet par exemple de libérer des ressources. • Un constructeur possède le même nom que la classe mais n’a pas de type de retour. • On ne peut appeler qu’un seul constructeur, mais un constructeur peut en appeler un autre. • Un destructeur possède le même nom avec un « ~ » devant et ne possède pas de type de retour.
  14. 14. Programmation orientée objet • Constructeurs et destructeur class Personne { // Constructeur par défaut public Personne() { Nom = « Dupont »; Age = 17; } // Constructeur spécialisé (avec un ou plusieurs paramètres) public Personne(string nom, int age) { Nom = nom; Age = age; } // Un seul et unique destructeur public ~Personne() { Console.WriteLine(«{0} est détruit.», Nom); } }
  15. 15. Programmation orientée objet • Instanciation d’une objet / Création d’une instance de classe // Utilisation du constructeur par défaut Personne p1 = new Personne(); // Utilisation du constructeur spécialisé Personne p2 = new Personne(« Jean »); p1.Nom = « Pierre »; p1._nom = « Paul »; // Attribut privé p1.Parler(); p1.Age = 21;
  16. 16. Héritage • Définition: • En POO, il est possible de créer des classes dérivant d’une autre. On appelle ça l’héritage. • On appelle classe mère la classe de base. On appelle classes filles celles qui dérivent. • Les classes filles possèdent les attributs protégés et publics de la classe mère et apportent chacune leur propre lot d’attributs et de méthodes à leur tour. • En C#, une classe « fille » ne peut dériver que d’une seule classe « mère ». • Une classe fille peut redéfinir une méthode qui existe déjà dans la classe mère.
  17. 17. Héritage • Exemple 1: • Classe mère: Vehicule • Classes filles: Voiture, Camion… • Exemple 2: • Classe mère: Compte bancaire • Classes filles: Compte courant, Livret épargne… • Exemple 3: • Classe mère: Forme • Classes filles: Rectangle, Cercle, Carré…
  18. 18. Héritage • Déclaration: class Vehicule { protected int _nombreCV; private string _couleur; } class Camion : Vehicule { private double _longueurRemorque; public Voiture(int nombreCV, double longueurRemorque) { _longueurRemorque = longueurRemorque; _nombreCV = nombreCV; // Protégé _couleur = « Rouge »; // Privé } }
  19. 19. Classe et méthode abstraite • Définition: • Une classe peut être définie comme abstraite, c’est-à- dire qu’il n’est pas possible de l’instancier. Il faut donc instancier une classe fille. • Une méthode abstraite, est une méthode qui existe dans une classe mais qui ne possède pas de corps/d’implémentation. Le comportement est donc défini dans la/les classe(s) fille(s).
  20. 20. Interfaces • Définition • Une interface est un contrat de propriétés et/ou de méthodes qu’une classe s’engage à respecter. • Le nom d’une interface comme par un « I » en C#. • Pour une interface, on crée un fichier .cs • Contrairement à une classe, une interface ne contient pas de corps pour les méthodes. Elle définit juste les propriétés ou les méthodes que la classe doit implémenter.
  21. 21. Interfaces • Déclaration interface IAnimal { int Age { get; set; } void Crier(); void Courir(float vitesse); }
  22. 22. Interfaces • Implémentation class Lievre : IAnimal { public int Age { get; set; } public void Crier() { Console.WriteLine(« Le lièvre couine »); } public void Courir(float vitesse) { Console.WriteLine(« Le lièvre court à {0} km/h», vitesse); } }
  23. 23. Interfaces • Implémentation class Tortue : IAnimal { public int Age { get; set; } public void Crier() { Console.WriteLine(« La tortue cracrapète »); } public void Courir(float vitesse) { Console.WriteLine(« La tortue marche à {0} km/h», vitesse); } }
  24. 24. Interfaces • Utilisation IAnimal a1 = new Tortue(); a1.Age = 200; a1.Courir(2); // Affiche « La tortue marche à 2 km/h » a1 = new Lievre(); a1.Age = 5; a1.Crier(); // Affiche « Le lièvre couine »
  25. 25. Interfaces • Notes • Si une classe implémente une interface, elle DOIT respecter les propriétés et les méthodes contenues dans celle-ci. • Dans une classe qui implémente une interface, les éléments sont forcément publics. • Les interfaces ont plusieurs utilités: • Niveau d’abstraction supplémentaire: il n’est pas nécessaire de savoir si l’animal est un lion ou une tortue. L’important est de savoir qu’il a un âge, qu’il peut crier et courir. • Filtrage: Si une classe implémente beaucoup de méthodes, on peut utiliser les interfaces pour « filtrer » ces méthodes afin que celles qui nous intéressent soient uniquement proposés par l’auto-complétion. • Une interface peut implémenter une ou plusieurs autres interfaces.
  26. 26. Interfaces • Interfaces les plus frequemments utilisées - IDisposable - IEnumerable - ICollection - IList - IValueConverter - IEqualityComparer - ICommand - …
  27. 27. Static • Définition • Un attribut, une méthode ou une propriété peut être déclarée statique à l’aide du mot-clé static. • Un élément statique est accessible depuis le nom de la classe directement (ex: Personne.AgeMajorite, Math.PI) et non depuis une instance/un objet. • Les éléments statiques sont donc crées une seul fois et sont accessibles à tout moment. • Une classe peut être déclarée statique. Elle n’est pas instanciable et tous ses attributs, propriétés et méthodes doivent être forcément statiques.
  28. 28. Static • Déclaration class Personne { public static int AgeMajorite = 18; public static bool EstMajeur(int age) { return age >= AgeMajorite; } }
  29. 29. Static • Utilisation bool majeur = Personne.EstMajeur(21); int ageMajorite = Personne.AgeMajorite; Console.WriteLine(«Bienvenue ! »);
  30. 30. BLOGS DES EVANGELISTES ET DES EXPERTS MICROSOFT COACHS VIDEOS MSDN http://msdn.microsoft.com/fr-fr/bb899456 MSDN LIBRARY http://msdn.microsoft.com/ COMMUNAUTES DES DEVELOPPEURS SUR FACEBOOK TUTOS OPENCLASSROMMS (EX-SDZ) http://fr.openclassrooms.com/informatique/cours/apprenez -a-developper-en-c Ressources pour bien débuter avec C#

×