Développer avec Visual Studio 2005

Transcription

Développer avec Visual Studio 2005
Avant-propos
Introduction
Le développement d’un logiciel est une tâche très difficile. Le développeur est confronté
à des difficultés d’ordre technique. Il doit prendre en compte les problématiques de besoins, d’analyse, d’études, de modélisation et de bancs de tests. Il doit également faire
preuve d’élégance et d’efficacité. Son code doit être fonctionnel, propre, solide, lisible,
réutilisable et pérenne.
En ce sens, le choix d’une technologie pour développer un logiciel destiné à s’exécuter sur
une machine Windows doit être mûrement réfléchi. Le rythme des évolutions apportées
par Microsoft est de l’ordre d’une version tous les 3 ans en moyenne. Se pose alors régulièrement la question fatidique : doit-on capitaliser sur la technologie existante, qui a fait
ses preuves, ou vers la toute dernière technologie qui nous promet monts et merveilles ?
Ces évolutions fréquentes peuvent être perçues comme de l’instabilité. J’ai tendance à
penser que ce sentiment entre pour beaucoup dans les a priori négatifs que bon nombre
de développeurs ont à l’encontre de la firme de Redmond. Le comble est d’ailleurs que
parmi eux beaucoup ne travaillent que sous Windows.
Dans ce contexte, la naissance de la plate-forme .NET représente une révolution à plus
d’un titre. Certains (mal informés) la considèrent comme une évolution de la technologie COM/DCOM. Rien n’est plus faux, car les changements sont très profonds. L’avènement récent de la version 2.0 de la plate-forme .NET enfonce encore plus le clou. Avec
.NET, et pour la première fois, Microsoft opère un virage à 180° et tourne franchement
la tête en direction des développeurs. Il s’agit d’une ambition délibérée de faire table rase
des erreurs du passé, tout en conservant suffisamment de compatibilité (le terme barbare
consacré est interopérabilité) avec les technologies antérieures dites classiques. Avec cette
nouvelle technologie, Microsoft cherche à damer le pion à son grand rival du moment :
Java et la plate-forme J2EE. Tout au long de ce livre, j’espère vous persuader par l’exemple
que la plate-forme .NET sait véritablement conjuguer puissance, souplesse et modernité
avec une déconcertante facilité de mise en œuvre.
Toutefois, cette simplicité n’est qu’apparente : dans les coulisses, la technologie est très
complexe, même si les rouages les plus intimes sont accessibles rapidement. Il est possible
dans l’absolu de concevoir une application .NET en utilisant simplement NotePad et le
xii
Table des matières
compilateur C livré par Microsoft. Cependant je ne connais aucune personne raisonnable qui songerait à développer sérieusement pour la plate-forme .NET de cette façon,
sans les outils adéquats. Alors, quels outils choisir ? La réponse est toute trouvée : actuellement, ce qui se fait de mieux en matière d’environnement de développement est la
dernière mouture du produit phare de Microsoft, Visual Studio .NET 2005. Je crois fermement que vous partagerez cet avis après avoir lu ce livre. Avec cet outil, il est possible
entre autres de développer des applications Windows, des sites web, des services web, des
applications déportées pour les mobiles, etc. Le tout dans un environnement intégré,
robuste et intuitif.
Pour ceux qui désirent s’initier au développement sous .NET, le principal défaut de Visual Studio .NET 2005 est justement sa puissance. Sa complexité de prise en main, la
grande richesse de ses options et de ses possibilités, en réservent l’usage aux développeurs professionnels, lesquels ont l’habitude et (plus ou moins) le temps de s’adapter à de
nouveaux outils. Ceux qui ne sont pas habitués aux développements pour la plate-forme
Windows peuvent également éprouver des difficutés d’adaptation à ce nouvel environnement. De plus, Visual Studio .NET 2005 est trop cher sans doute pour les débutants
ou les développeurs qui veulent juste découvrir la plate-forme .NET. L’objectif est bien
souvent de produire rapidement des applications complètes et fonctionnelles. Ce livre
est là pour répondre à ces attentes.
Microsoft décline son offre Visual Studio .NET 2005 en plusieurs versions, chacune étant
destinée à un public différent. Parmi celles-ci, on trouve des outils simples, allégés par
rapport à la version professionnelle, et faciles à mettre en œuvre. Ces outils permettent
de développer rapidement une application Windows ou web complète, clé en main, en
C comme en Visual Basic 2005. Ces versions sont appelées Visual Studio 2005 Editions
Express par Microsoft.
A propos de ce livre
De plus en plus d’articles sur le web concernent Visual Studio 2005 et le Framework .NET
2.0. Ce livre est un traité de vulgarisation. Il donne également l’occasion d’aller plus loin
sur certains sujets.
Il s’agit d’un ouvrage pratique destiné à servir de guide à tous ceux qui désirent s’initier
puis se perfectionner au développement .NET 2.0. Il concerne l’utilisation de Visual Studio .NET 2005 Editions Express. L’approche que je vais suivre tout au long de ce livre est
résolument simple, didactique, progressive, et orientée outils. Je vais rester pragmatique.
Mon discours sera émaillé de nombreux exemples de mise en œuvre. Vous trouverez
beaucoup de code C ou Visual Basic 2005 destiné à éclairer les notions les plus fondamentales et produire rapidement une application concrète.
Ce livre n’est toutefois pas un cours sur .NET, ni d’ailleurs sur Visual Studio. Après avoir
tout lu et assimilé vous en saurez peut-être autant sur Visual Studio.NET que de nombreux développeurs professionnels que je connais. Il s’agit avant tout d’aller à l’essentiel,
d’appréhender les principes du développement d’applications sous .NET en expliquant
A qui s’adresse ce livre
xiii
le fonctionnement de l’outil, en somme de vous mettre le pied à l’étrier pour vous lancer
seul dans sa maîtrise au quotidien.
Mon but est de faire en sorte qu’à l’issue de ce livre vous soyez en mesure de produire
rapidement des applications .NET complètes, aussi bien Windows que des sites web opérationnels et élaborés. Vous aurez aussi abordé la technologie .NET avec suffisamment
de recul et de compréhension globale pour pouvoir aller encore plus loin si, d’aventure,
vous aviez un jour la chance de vous impliquer dans les versions professionnelles de Visual Studio .NET 2005.
A qui s’adresse ce livre
Ce livre s’adresse à vous, débutants en développement d’applications Windows pour la
plateforme .NET 2.0, que vous soyez étudiant, développeur occasionnel ou simplement
passionné.
Il s’adresse également aux développeurs professionnels d’applications Windows dites
classiques, qui souhaitent sauter le pas et évoluer vers un environnement .NET. Vous
pourrez découvrir rapidement les tenants et les aboutissants du développement d’applications pour cette nouvelle technologie sans avoir à consacrer trop de temps à l’appréhension d’un nouvel outil.
Ceux qui connaissent déjà .NET 1.1 et Visual Studio 2003 découvriront avantageusement
les nouveautés de l’environnement Visual Studio 2005, et les évolutions du Framework
.NET et du développement d’applications par rapport à la version 1.1.
Pour bien profiter de ce livre, il est toutefois nécessaire de connaître au préalable soit le
langage C , soit le langage Visual Basic 2005.
Tour d’horizon des chapitres
Ce livre est constitué de chapitres indépendants les uns des autres. Vous pouvez lire les
chapitres dans n’importe que ordre. Par exemple, si vous êtes déjà initié aux bases de la
programmation en environnement .NET, vous pouvez passer directement au chapitre 2.
Le livre est découpé de la façon suivante :
Le chapitre 1, Développer pour le Framework .NET 2.0, constitue une introduction
aux fondements du développement d’applications pour le Framework .NET 2.0. Il s’agit
d’une synthèse des grands principes de la technologie .NET et de ses classes de base.
Vous vous familiariserez avec l’accès aux sources de données grâce à ADO .NET. Vous
y découvrirez les différentes versions de Visual Studio 2005 et les grands principes du
développement d’applications .NET avec Visual Studio, sur la base d’exemples concrets.
Le chapitre 2, L’environnement de développement, présente le fonctionnement et la
manipulation de l’environnement de développement Visual Studio, quel que soit le type
d’applications à développer. Vous y découvrirez ensuite l’environnement de développement. Vous irez enfin à la découverte de l’éditeur de code et de ses assistants.
xiv
Table des matières
Le chapitre 3, Créer un site web avec Visual Web Developer, présente la création d’une
application web avec Visual Web Developer, en C et Basic 2005. Après avoir détaillé les
différents types d’application web, vous suivrez la mise en œuvre complète et pratique
des techniques liées au développement d’un site web. Vous découvrirez comment utiliser
les pages et les contrôles serveurs web. Vous saurez comment compiler et lancer l’exécution d’un site web sur le serveur de développement local fourni avec ASP.NET. Vous
apprendrez à construire un portail web personnalisable à l’aide des Web Parts. Enfin, vous
découvrirez les contrôles d’accès aux sources de données, et la façon de consommer les
méthodes d’un service web.
Le chapitre 4, Développer un site web multi-pages, poursuit la présentation des techniques utilisées pour le développement d’applications web. Il étend les principes présentés dans le chapitre 3. Sa lecture vous sera utile si vous désirez concevoir un site web
composé de plusieurs pages. Il présente les principes de réutilisation de code, les master
pages, la navigation, ainsi que les thèmes et les skins.
Le chapitre 5, Applications web avancées, aborde des notions avancées pour le développement d’applications web. Il commence par les principes de création d’un service web.
Vous connaîtrez ensuite la façon de sécuriser et de personnaliser un site web. Enfin vous
découvrirez comment optimiser les performances de votre site web avec les techniques
de mise en cache.
Le chapitre 6, Créer une application Windows avec Visual C ou Visual Basic 2005
présente le développement d’applications WinForms, avec des exemples de code pour
chacun de ces deux langages. J’y présente les différents types d’application Windows,
avant d’aborder les principes de développement d’une application graphique WinForms.
Vous apprendrez à manipuler les formulaires et les contrôles. Vous découvrirez la façon
de compiler une application Windows. Vous saurez comment mettre en œuvre des boîtes
de dialogue et des applications MDI. Le chapitre se termine avec les principes du dessin
avec GDI+.
Le chapitre 7, Mettre en œuvre une interface Windows élaborée, poursuit le chapitre 6 en présentant des techniques avancées. Vous apprendrez notamment à utiliser
des contrôles évolués comme par exemple les arborescences. Vous saurez profiter des
paramètres applicatifs et des ressources. Vous découvrirez comment mettre en œuvre
le glisser-déposer et comment imprimer des documents. Le chapitre se poursuit avec
les techniques de réutilisation de code, comme les contrôles personnalisés ou les bibliothèques de classe. Vous terminerez la découverte des types d’application Windows Forms
avec la création d’une application console.
Le chapitre 8, Déboguer une application, détaille un aspect essentiel du développement d’une application Windows ou web : le débogage. Vous découvrirez les techniques
de débogage destinées à simplifier la vie (mais surtout le travail) du développeur d’applications.
Le chapitre 9, Déployer une application web, montre comment copier et synchroniser
les fichiers d’un site web local pour le publier sur un site web distant une fois développé
et débogué.
Remerciements
xv
Le chapitre 10, Déployer une application Windows, montre comment utiliser la nouvelle technologie ClickOnce pour déployer et automatiquement mettre à jour une application Windows, pour la rendre ainsi disponible aux utilisateurs finaux.
Remerciements
En premier lieu, ce livre n’aurait jamais pu voir le jour sans le soutien constant et les
conseils avisés de Patrick Smacchia, à qui j’adresse mes plus profonds remerciements. Son
discernement et sa grande intelligence ont été les moteurs initiaux de ce livre.
Mes remerciements vont aussi tout particulièrement à Sami Jaber, consultant .NET,
pour ses encouragements et ses critiques affûtées qui m’ont beaucoup aidé. En plus
d’être un orateur de talent, Sami est également le webmaster du site http://www.
DotNetGuru.org, la référence française incontournable en matière de sites web consacrés
à la technologie .NET.
Un grand merci aux personnes suivantes, pour leur support, leurs encouragements, et
tout le temps passé à relire et commenter ce livre : Thomas Gil, Sébastien Ros, Luc Fournier, Thomas Pierrain, Christophe Moustier, Philippe Moissonnier, ainsi qu’à toute la
communauté .NET francophone.
Je tiens également à remercier mon éditeur, Xavier Cazin. Sa patience et son professionnalisme m’ont aidé à faire les choix les plus judicieux. Ce livre lui doit beaucoup dans
l’élaboration de sa structure et l’orientation de son contenu. Un grand merci également
à Samuel Cuneo, des éditions O’Reilly, pour ses remarques toujours pertinentes, ses précieux conseils, et sa relecture approfondie de l’ensemble des chapitres de ce livre.
La présence constante de ma famille à mes côtés est l’un des secrets de mon équilibre. J’ai
puisé dans ce soutien inestimable le courage nécessaire à l’aboutissement de mon projet.
Mes pensées vont aussi vers toi, Pauline. C’est en grande partie grâce à toi que ce livre
existe. Je te remercie du fond du cœur pour avoir sacrifié toutes ces heures à la rédaction
de ce livre. Nous en consacrerons d’autres à flâner tous les deux sous le soleil de Provence.
A mon père, enfin, qui m’a donné le virus.