Apprenez à programmer en C# sur .NET Par Narvarth www.siteduzero.com Licence Cr

Apprenez à programmer en C# sur .NET Par Narvarth www.siteduzero.com Licence Creative Commons 4 2.0 Dernière mise à jour le 5/10/2012 Sommaire 2 Sommaire ........................................................................................................................................... 2 Lire aussi ............................................................................................................................................ 4 Apprenez à programmer en C# sur .NET ........................................................................................... 5 Partie 1 : Les fondamentaux ............................................................................................................... 6 Introduction ........................................................................................................................................................................ 6 Préface ........................................................................................................................................................................................................................ 6 À qui s’adresse ce tutoriel ? ........................................................................................................................................................................................ 6 Esprit du tutoriel .......................................................................................................................................................................................................... 6 Durée d’apprentissage ................................................................................................................................................................................................ 6 Composition du cours ................................................................................................................................................................................................. 7 Le code ........................................................................................................................................................................................................................ 7 Allez plus loin ! ............................................................................................................................................................................................................ 8 Comment sont créés les programmes ? ..................................................................................................................................................................... 8 Un programme : qu'est-ce que c'est ? ......................................................................................................................................................................... 8 Comment créer des programmes "simplement" ? ...................................................................................................................................................... 11 Le langage C# et le framework .NET ........................................................................................................................................................................ 12 Aperçu historique ...................................................................................................................................................................................................... 13 Exemple de programme : Paint .NET ........................................................................................................................................................................ 13 À quoi ressemble le C# ? .......................................................................................................................................................................................... 16 Installer un IDE pour programmer ............................................................................................................................................................................. 16 Lequel choisir ? ......................................................................................................................................................................................................... 16 Installation de Microsoft Visual C# 2010 Express Edition ......................................................................................................................................... 23 Tour d'horizon de Visual C# Express 2010 ............................................................................................................................................................... 23 Allure générale .......................................................................................................................................................................................................... 24 Fonctionnement ........................................................................................................................................................................................................ 24 Bonus ........................................................................................................................................................................................................................ 27 Premiers pas sur console ................................................................................................................................................ 27 Création de la solution .............................................................................................................................................................................................. 30 Lancement depuis l'invite de commandes (console) ................................................................................................................................................ 33 Les variables ................................................................................................................................................................... 33 Qu'est-ce que c'est ? ................................................................................................................................................................................................. 33 Donner un nom à ses variables ................................................................................................................................................................................ 33 Types de variables de base ....................................................................................................................................................................................... 34 Illustration avec sizeof et typeof ................................................................................................................................................................................ 35 Conventions d'écriture pour le typage des données écrites "en dur" dans le code .................................................................................................. 35 Utiliser des variables ................................................................................................................................................................................................. 35 Déclaration ................................................................................................................................................................................................................ 35 Valeur par défaut ....................................................................................................................................................................................................... 36 Attribuer une valeur ................................................................................................................................................................................................... 36 Type valeur ou référence ? ........................................................................................................................................................................................ 36 Type valeur ................................................................................................................................................................................................................ 36 Type référence .......................................................................................................................................................................................................... 37 Les énumérations ...................................................................................................................................................................................................... 39 Les opérateurs ................................................................................................................................................................ 39 Les opérateurs mathématiques ................................................................................................................................................................................. 40 Simplifications d'écriture ............................................................................................................................................................................................ 41 Priorités des opérateurs ............................................................................................................................................................................................ 41 Les opérateurs logiques ............................................................................................................................................................................................ 42 Autres opérateurs ...................................................................................................................................................................................................... 42 L'opérateur d'affectation ............................................................................................................................................................................................ 42 Les opérateurs de comparaison ................................................................................................................................................................................ 43 L'opérateur ternaire "?" .............................................................................................................................................................................................. 43 Les conditions et les boucles conditionnelles ................................................................................................................. 44 if et sa famille ............................................................................................................................................................................................................ 45 switch : un if spécial .................................................................................................................................................................................................. 46 while .......................................................................................................................................................................................................................... 47 for .............................................................................................................................................................................................................................. 49 Les méthodes .................................................................................................................................................................. 49 Créer une méthode ................................................................................................................................................................................................... 50 Appeler une méthode ................................................................................................................................................................................................ 50 Passage par valeur ................................................................................................................................................................................................... 52 Passage par référence .............................................................................................................................................................................................. 54 La surcharge ............................................................................................................................................................................................................. 55 Les classes (1/2) ............................................................................................................................................................. 56 Créer une classe ....................................................................................................................................................................................................... 59 Créer un objet ............................................................................................................................................................................................................ 61 Utiliser un objet ......................................................................................................................................................................................................... 61 Accéder aux membres d'un objet .............................................................................................................................................................................. 61 Les propriétés ............................................................................................................................................................................................................ 63 La comparaison d'objets ........................................................................................................................................................................................... 64 Des méthodes importantes ....................................................................................................................................................................................... 65 Les classes (2/2) ............................................................................................................................................................. 66 Le modificateur "static" .............................................................................................................................................................................................. 67 Application console : étude du code ......................................................................................................................................................................... 2/132 www.siteduzero.com 68 Les espaces de noms ............................................................................................................................................................................................... 68 La classe Program .................................................................................................................................................................................................... 68 Les tableaux .................................................................................................................................................................... 69 Tableaux simples ....................................................................................................................................................................................................... 69 Tableaux à deux dimensions ..................................................................................................................................................................................... 70 Tableaux de tableaux ................................................................................................................................................................................................ 72 Effectuer des conversions ............................................................................................................................................... 73 Conversions implicites .............................................................................................................................................................................................. 74 Conversions explicites (casts) ................................................................................................................................................................................... 74 Les casts ................................................................................................................................................................................................................... 75 Classes et méthodes de conversion ......................................................................................................................................................................... 75 Les Classes Convert et TypeConverter ..................................................................................................................................................................... 75 Méthodes ................................................................................................................................................................................................................... 76 Manipuler les chaînes de caractères .............................................................................................................................. 77 La concaténation ....................................................................................................................................................................................................... 77 L'opérateur + ............................................................................................................................................................................................................. 77 La méthode Concat ................................................................................................................................................................................................... 77 Les chaînes de formatage ......................................................................................................................................................................................... 79 La classe StringBuilder ............................................................................................................................................................................................. 80 Nouveautés sur la console et les opérateurs .................................................................................................................. 81 Envoyer des arguments à un programme qui démarre ............................................................................................................................................. 81 Interagir avec la console ........................................................................................................................................................................................... 82 Évaluations paresseuses des opérateurs && et || ..................................................................................................................................................... 84 TP : Plus ou moins .......................................................................................................................................................... 85 Le jeu ......................................................................................................................................................................................................................... 85 But ............................................................................................................................................................................................................................. 85 Informations indispensables ...................................................................................................................................................................................... 85 Correction .................................................................................................................................................................................................................. 88 Partie 2 : Notions importantes ........................................................................................................... 88 Les WinForms (ou Windows Forms) ............................................................................................................................... 88 Création de la solution .............................................................................................................................................................................................. 88 Program.cs ................................................................................................................................................................................................................ 92 Boîte à outils et contrôles .......................................................................................................................................................................................... 93 Propriétés .................................................................................................................................................................................................................. 94 La classe MessageBox ............................................................................................................................................................................................. 96 Les évènements .............................................................................................................................................................. 97 Les gestionnaires d'évènements ............................................................................................................................................................................... 97 But ............................................................................................................................................................................................................................. 97 Fonctionnement ........................................................................................................................................................................................................ 98 Exemples d'évènements ........................................................................................................................................................................................... 99 Les paramètres passés ............................................................................................................................................................................................. 99 Envoyeur ................................................................................................................................................................................................................... 101 Arguments d'évènement ......................................................................................................................................................................................... 102 Travailler avec le temps ................................................................................................................................................ 103 Les structures DateTime et TimeSpan .................................................................................................................................................................... 103 DateTime ................................................................................................................................................................................................................. 104 TimeSpan ................................................................................................................................................................................................................ 105 Les contrôles MonthCalendar et DateTimePicker ................................................................................................................................................... 105 MonthCalendar ........................................................................................................................................................................................................ 105 DateTimePicker ....................................................................................................................................................................................................... 105 Les classes Timer ................................................................................................................................................................................................... 108 Gérer les exceptions ..................................................................................................................................................... 109 Lancer er intercepter des exceptions ...................................................................................................................................................................... 110 Créer ses propres exceptions .................................................................................................................................................................................. 110 Quelques exceptions courantes .............................................................................................................................................................................. 112 Les interfaces ................................................................................................................................................................ 112 Créer une interface .................................................................................................................................................................................................. 112 Utiliser une interface existante ................................................................................................................................................................................ 113 Utiliser plusieurs interfaces ...................................................................................................................................................................................... 116 Lire et écrire dans un fichier .......................................................................................................................................... 116 Structure d'un fichier ................................................................................................................................................................................................ 117 Lire et écrire via des boîtes de dialogue .................................................................................................................................................................. 117 Lire ........................................................................................................................................................................................................................... 122 Écrire ....................................................................................................................................................................................................................... 124 Les collections ............................................................................................................................................................... 124 Aperçu des génériques ........................................................................................................................................................................................... 124 Méthodes génériques .............................................................................................................................................................................................. 124 Classes génériques ................................................................................................................................................................................................. 125 Les listes ................................................................................................................................................................................................................. 125 Comparaison avec les tableaux .............................................................................................................................................................................. 126 Utiliser une liste ....................................................................................................................................................................................................... 126 Les dictionnaires ..................................................................................................................................................................................................... 126 Utiliser un dictionnaire ............................................................................................................................................................................................. 128 Les piles .................................................................................................................................................................................................................. 128 Fonctionnement ...................................................................................................................................................................................................... 128 En pratique .............................................................................................................................................................................................................. 129 foreach ... in ............................................................................................................................................................................................................. 129 Présentation ............................................................................................................................................................................................................ 129 Exemples ................................................................................................................................................................................................................ Sommaire 3/132 www.siteduzero.com Apprenez à programmer en C# sur .NET Par Narvarth Mise à jour : 05/10/2012 Difficulté : Facile Durée d'étude : 2 mois 2 802 visites depuis 7 jours, classé 54/797 V ous avez entendu parler du langage C, du C++, et voilà qu'on vous présente maintenant le C# ! Encore un langage me direz-vous ? Oui, mais pas n'importe lequel ! Il existe des centaines de langages de programmation, comme le C, le C++, Python, Java... Chacun a ses avantages et défauts. Le C# (aussi écrit C Sharp et prononcé "cé sharp" voire "ci sharp" à l'anglaise) n'est peut-être qu'un langage de plus à vos yeux, mais il est en fait très important dans le monde de la programmation ! Alors, qu'est-ce qui caractérise le C# ? Récent : il a été créé par Microsoft au début des années 2000, ce qui en fait un langage assez jeune (comparé au C, au C++ et à Java). Idéal sous Windows & Windows Phone 7 : c'est le langage recommandé pour développer sous Windows aujourd'hui, mais on s'en sert aussi pour créer des applications Windows Phone 7, pour Silverlight, ASP... Libre : le langage est ouvert, et on peut s'en servir pour développer des applications sous Linux notamment. Le fait qu'il soit issu de Microsoft ne l'empêche pas d'avoir son lot d'aficionados dans le monde du libre. Inspiré de Java : même s'il a ses spécificités, il ressemble globalement plus au Java qu'au C ou au C++ contrairement à ce que son nom pourrait laisser penser. Associé au framework .NET : un langage seul comme le C# ne permet pas de faire grand chose. On l'associe en général à une boîte à outils que l'on appelle le framework .NET (aussi écrit Dot NET et prononcé "dotte nette") qui offre toutes les possibilités que l'on peut imaginer : accès réseau, création de fenêtres, appel à une base de données... Apprécié en entreprise : si Java reste un des langages les plus utilisés en entreprise, C# se présente comme un sérieux challenger. C'est aujourd'hui une compétence recherchée en entreprise. J'ai écrit ce tutoriel spécialement pour les débutants qui veulent découvrir le C#, comme le veut la tradition du Site du Zéro. Peut-être qu'il y en a parmi vous qui connaissent déjà le C, le C++ ou Java. Cela pourra vous aider à apprendre plus rapidement, mais ce n'est absolument pas grave si vous n'avez jamais fait de programmation avant. Bonne lecture, amusez-vous bien ! Paint .NET Windows Phone 7 Sommaire 4/132 www.siteduzero.com V isual Studio Paint .NET (programme C#), Windows Phone 7 et le code sous V isual Studio Apprenez à programmer en C# sur .NET 5/132 www.siteduzero.com Partie 1 : Les fondamentaux Alors, par quoi on commence ? Par les bases pardi ! Dans cette première partie, nous allons découvrir à quoi ressemble le langage C# et ce qu'est .NET. Nous apprendrons à manipuler V isual Studio, l'outil de travail du développeur C#. Enfin et surtout, nous allons créer nos premiers programmes console en manipulant nos premières instructions en C#. Cette partie ne sera pas la plus graphique et la plus interactive, mais il faut bien commencer quelque part ! Prenez le soin de bien apprendre toutes les notions théoriques, elles vous seront indispensables pour la suite. Nous aurons l'occasion de pratiquer avec deux petits TP pour vérifier que vous avez bien suivi les premiers chapitres. V ous êtes prêts ? Moi aussi, ça tombe bien ! Allez c'est parti, on y va ! Introduction Dans ce tout premier chapitre, nous allons découvrir ce qu'est le C#, son histoire et son rapport avec le framework .NET. D'ailleurs, vous ne savez pas ce qu'est un framework ? Ce n'est pas grave, je vous rappelle que c'est un cours pour débutants, tout cela sera expliqué ! Avant d'aller plus loin, une petite préface vous présentera l'esprit du tutoriel et vous donnera quelques conseils pour le suivre dans les meilleures conditions. Préface À qui s’adresse ce tutoriel ? Aux débutants ! uploads/Litterature/ apprenez-a-programmer-en-c-sur-net 1 .pdf

  • 34
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager