Microsoft Developer Conférence 2003 (Page 2)

Le concept .NET

 

On aura remarqué que Microsoft à réellement étendu .NET aux versions mobiles de son système d’exploitation. Puisque cette stratégie devient la colonne vertébrale du développement logiciel chez Microsoft, un petit rappel me semble utile pour ceux qui, comme moi, trouvaient la raison d’être de .NET encore assez subtile jusqu’ici…

 

Tout part d’un constat devenu nécessaire : obtenir un jour un téléphone qui ferait aussi office de PC portable, de Tablet PC et de PDA est irréaliste ne serait-ce que pour des considérations ergonomiques, ou stérilisatrices pour le marché des constructeurs innovants. Il est en effet important de laisser les constructeurs pousser vers l’avant tout le secteur sans les brider par des restrictions logicielles, et aux acheteur le choix de choisir parmi une grande variété de formats et de capacités du matériel informatique …

 

Inversement, abandonner l’espoir d’obtenir un jour un appareil unique et idéal signifiait généralement aussi que les difficultés rencontrées par les éditeurs de logiciel ne s’arrangeraient pas. En effet, tout vient de la spécialisation des systèmes d’exploitations vis-à-vis du matériel qui les supporte ; et chaque variation entraîne autant de connaissances, d’efforts de développement et, in fine, de coût.

 

C’est pour cela que Microsoft à repris le concept, originalement lancé avec Java, de passer par un code intermédiaire unique qui puisse s’exécuter sur différentes plateformes physiques via une machine virtuelle qui se charge des détails matériels tels que le processeur utilisé, les entrées-sorties disponibles, l’affichage, les options réseau et le système de fichiers. Comme en Java, une fois la machine virtuelle .NET définie sur un appareil, celui-ci peut exécuter des programmes .NET d’où qu’ils viennent.

Ceci dit, une différence et une amélioration intéressante de.NET par rapport à Java et qu’il ne s’agit pas d’un langage lui-même mais presque d’un système d’exploitation, ou du moins d’une API très vaste. En effet, on peut produire une application .NET à l’aide de nombreux langages incluant bien entendu les langages principaux de Microsoft tels que Visual Basic, C++ et C# (prononcé « C sharp » en anglais, qui est une extension assez aboutie du C++), mais aussi d’autres langages plus inattendus de la part du géant, tels que Perl. Cela permet non seulement de recycler beaucoup de code existant, de tenir compte des spécificités intéressantes de chacun des langages, mais aussi des compétences que les programmeurs ont déjà, ce qui, à mon avis est une excellente idée.

 

Donc, dans l’idéal, un programme .NET compilé sur PC tournera même sur la dernière mouture de Smartphone, qui propose dorénavant une version allégée de l’environnement .NET, nommée Compact Framework .NET.

Notez cependant qu’un téléphone cellulaire présente bien entendu de nombreuses particularités très spécifiques comme la taille réduite de l’écran, l’absence d’écran tactile, ou la nécessité de concevoir la navigation dans le logiciel à l’aide d’une seule main. En pratique, il faudra généralement revoir toute l’interface de l’application car il n’existe semble-t-il toujours aucune approche automatique, même si les outils Visual de Microsoft restent toujours particulièrement intuitifs en la matière de création d’interfaces par rapport à une approche programmée. Attention aussi, certains objets d'interface ne sont pas disponibles dans la version compacte de .NET !

 

Une dernière remarque que je ferai à propos de .NET est l’absence du conflit apparent entreVisual Studio .NET et Visual C++ par exemple. Le C++ reste en effet finalement le choix de prédilection pour développer des pilotes de périphériques propres à la machine ciblée ou toute partie non encore prise en charge par .NET, au même titre que Java nécessite une machine virtuelle écrite généralement en C. Ainsi, la version « embedded » de Visual C++ n’est ni redondante avec Visual .NET, ni amenée à disparaître, mais elle est bien complémentaire. Heureusement, les deux environnements de développement ont été developées en pensant à cette complémentarité et des passerelles logicielles ont été prévues. Ainsi, la majeure partie d’une application pourra être écrite rapidement en C# sous Visual .NET afin d’etre facilement portée à plusieurs architectures matérielles, et seules les parties sensibles comme la prise en compte de spécificités matérielles nouvelles d’un appareil ou encore l’optimisation en vitesse se fera à l’aide de eVC ciblant le matériel en question.

 

Conclusion

 

Cette édition Parisienne 2003 de Microsoft Mobility Developer Conference a été pour moi non seulement une réelle réussite, mais aussi peut être plus personnellement une convaincante introduction pratique aux outils et langages de Microsoft, tel que le concept de .NET dont seule la part commerciale et marketing ne m’avait choqué jusqu’à présent. Malgré mes forts a-prioris linuxiens de demomaker et quelques expériences malheureuses en programmation Windows sous Visual Studio, j’ai trouvé les sessions, les orateurs et les participants très constructifs et j’en suis ressorti plus informé, et au moins en partie « converti ». Merci Microsoft (oh, j’aurais parié ne jamais dire cela un jour!) 




 
Premiers commentaires sur 11 au total:
eksyt - 07.04.2003 - 14h21
Bien ouej et merci Jérémie ...Ca fait bizare de te voir là... See U"
@lexis - 07.04.2003 - 14h32
C'est pas mal aussi de l'entendre dire (écrire plutôt...) "Merci Microsoft"
eksyt - 07.04.2003 - 14h51
Héhé' See U"

Debitel Simpleo : Forfait mobile sans engagement à partir de 9,90€ par mois!
Plus d’info sur Simpleomobile.fr

Derniers articles de la rubrique

Du même auteur


Les plus lues de la rubrique

Les plus commentées de la rubrique

Lire cet article sur votre mobile ou smartphone Lire cet article sur mon mobile Qu'est-ce que le MobileTag?