| |
|
Présentation de .NET Smart Device Extensions
Cet article s'adresse aux personnes qui
ne connaissent pas le nouvel environnement de développement Microsoft
.NET. Je profite de la disponibilité de la version RC1, qui inclus pour
le première fois Smart Device Extensions, pour faire une présentation
de cette nouvelle technologie avec un exemple pour PocketPC.
Vous avez dis .NET ?
En Juillet 2000 Microsoft annonce Microsoft
.NET, un tout nouvel environnement de développement qui marque une vrai
coupure avec le passé. Le produit est toujours en phase de développement,
mais des pré-versions (des bêtas) sont disponibles. La version finale
arrive normalement en Février 2002.
Voici quelques points introduits par .NET,
faire une liste exhaustive serait totalement impossible.
- Le framework (=les fonctions disponibles) est totalement
nouveau et totalement objet.
- C# (dites C Sharp), un nouveau langage, est le
mieux adapté pour développer une application .NET
- Le choix de son langage. VB, C# (sur PC C++, JScript,
Cobol... plus de 20). Tous ces langages sont égaux en performance
et tous voient le même framework. Vous développez en utilisant le
langage que vous connaissez bien, et non plus suivant ce que vous
devez faire.
- Une gestion mémoire simplifiée, un déploiement
plus simple
- Webservices (service web). Derrière ce mot toute
la stratégie de Microsoft. Dans l'avenir de plus en plus de terminaux
auront accès à Internet, mais comment échanger des informations simplement?
La norme SOAP (c'est
une norme w3c) permet d'unifier les échanges sur Internet. Derrier
les Webservices nous retrouvons SOAP, mais surtout une mise en oeuvre
très simple.
- Support de toutes les plate-formes Microsoft, du
PocketPC à Windows XP, en passant par Windows 98
Pour avoir plus d'informations sur .NET
je vous renvoie vers le site de Microsoft
Les mains dans le code
Je vous propose de faire une application
avec seulement deux lignes de code! Et pas un simple Hello World, quelque
chose de plus consistant. Nous allons vérifier si le numéro de carte bancaire
saisi est valide, et si oui de quel type est la carte (Visa, Mastercard...)
Pour cela nous allons utiliser un service web qui offre cette fonctionnalité.
J'ai mis le maximum de capture d'écran pour que vous ayez une bonne idée
sur comment cela se présente.
 |
| Dans
Visual Studio .NET je crée un nouveau projet. Je choisi une application
PocketPC en C#.
Dans la partie gauche de cette boite de dialogue
vous pouvez choisir le langage.
Dans le partie droite le type de projet.
|
 |
| Si vous connaissez VB
6 vous ne devriez pas être trop dépaysé avec l'environnement de
développement.
La fenêtre "Solution Explorer" liste
les différents fichiers du projet.
Toolbox est notre boite à outil, j'ai déposé
sur la boite de dialogue un label "Numéro de carte:",
une TextBox txt_numero, un bouton btn_test, enfin un second label
rouge pour afficher la réponse lbl_resultat.
Dans solution explorer vous voyez un dossier
References. Je vais ajouter une nouvelle référence à mon projet,
celle du service web de vérification de carte de crédit. Pour
cela bouton droit sur le projet puis choix "Ajouter une reférence
Service Web".
|
 |
| Pour ajouter une référence
web il suffit de saisir son URL dans le champ adresse.
Un petit résumé des méthodes disponibles est
fait.
Il ne reste plus qu'a appuyer sur "Add
Reference" pour ajouter cet objet dans notre projet.
Une liste de services Web existe sur xmethods.com,
c'est sur ce site que j'ai trouvé l'URL pour vérifier les cartes
de crédit. (http://www.iemfamily.com/ iemfamily/CreditCard.asmx)
|
| Dans l'explorateur de la solution apparaît
maintenant la référence à notre service web. Il ne reste plus qu'a
l'utiliser.
Double clic sur le bouton btn_test et l'environnement
de développement ouvre la partie de code qui est exécutée quand
l'utilisateur appuie sur le bouton.
|
 |
private
void btn_test_Click(object
sender, System.EventArgs e)
{
com.iemfamily.www.CreditCheck testCarte = new
com.iemfamily.www.CreditCheck();
lbl_resultat.Text = testCarte.VerifyCreditCard(txt_numero.Text);
} |
C'est ici que je saisie les deux lignes
de code.
Tout d'abord je crée l'objet testCarte
qui référence l'objet service web com.iemfamilly.www.CreditCheck :
com.iemfamily.www.CreditCheck testCarte = new
com.iemfamily.www.CreditCheck();
Ensuite j'appelle
la méthode VerifyCreditCard en passant en argument le numéro, affichant
le résultat dans lbl_resultat :
lbl_resultat.Text = testCarte.VerifyCreditCard(txt_numero.Text);
| Il ne reste plus qu'a compiler
le projet.
L'extension Smart Device offre un émulateur
PocketPC avec une ROM PocketPC 2002.
Je l'exécute dans ce mode, je saisie un numéro
de carte de test valide, puis j'appuie sur le bouton "Tester
carte".
En appuyant sur ce bouton l'objet testCarte
est crée.
L'appel de la méthode VerifyCreditCard fait une requette HTTP
en passant mon numéro de carte en argument. En réponse j'ai un
fichier XML, il est analysé, la chaîne de réponse "Valid
Visa" est extraite. La réponse est affichée dans lbl_resultat.
Ici j'ai "Valid Visa"
Et voila, comme promis nous venons de faire
une application Internet de vérification de carte de crédit avec
seulement deux lignes de code.
Avec les nouvelles machines PocketPC intégrant
GSM ou UMTS, les connexions Internet seront de plus en plus répandue.
L'utilisation des ressources Internet sur PocketPC n'a jamais
été aussi simple à mettre en oeuvre.
|
|
Conclusion
Si après ce rapide survol de .NET vous
voulez vous y mettre, Visual Studio .NET bêta 2 est disponible en Français
sur le site de Microsoft.
Cette version n'intègre pas l'extension Smart Devices, mais vous pouvez
déjà vous initier à .NET. Je vous met le code source du projet pour cette
version. Attention pour Visual Studio.NET il faut Windows NT, 2000
ou XP.
forum bêta Visual Studio en Français :
news://msnews.microsoft.com/microsoft.public.fr.vsnetbeta
L'unification des développements, le choix
de son langage, un framework totalement objet, les services web, tout
ceci est vraiment une évolution majeure pour développer des applications
Windows. Les PocketPC sont les grands gagnants de cette évolution.
Rémi
THOMAS
|
|