Quelques mots à propos de nos outils de développement préférés !

.NET Framework

.netLe .NET Framework constitue la charpente sur laquelle sont contruites la plupart des applications Windows depuis le début des années 2000. C'est un élément stratégique clef de Microsoft. Depuis Windows Vista et Windows Server 2008 le Framework .NET est intégré au système d'exploitation. Il est également intégré à Windows Mobile depuis la version 5 (.NET Compact Framework). Une version légère et limitée fournie avec un moteur d'exécution fonctionnant à l'intérieur d'un navigateur ou d'un périphérique mobile est disponible sous le nom de Silverlight. Le Framework .NET est installable sur les anciennes versions de Windows.

Le framework .NET s'appuie sur la norme Common Language Infrastructure (CLI) qui est indépendante du langage de programmation utilisé. Ainsi tous les langages compatibles respectant la norme CLI ont accès à toutes les bibliothèques installées (installables) dans l'environnement d'exécution. Le framework .NET est un sous ensemble de la technologie Microsoft .NET.

Il a pour but de faciliter la tâche des développeurs en proposant une approche unifiée à la conception d'applications Windows ou Web, tout en introduisant des facilités pour le développement, le déploiement et la maintenance d'applications.

Le framework gère tous les aspects de l'exécution d'une application dans un environnement d'exécution dit « managé » :

il alloue la mémoire pour le stockage des données et des instructions du programme
il autorise ou refuse des droits à l'application
il démarre et gère l'exécution
il gère la réallocation de la mémoire pour les ressources qui ne sont plus utilisées

Nous développons dans l'environnement .NET depuis les années 2002 et avons acquis une expérience considérable dans ce domaine.

Visual Studio

vs2010

Visual Studio de Microsoft est l'environemment de développement intégrés de Microsoft. Il permet de développer des applications dans différents langages tels que C# (que nous utilisons de préférence), C++, etc. Il permet d'exploiter au mieux le Framework .NET et l'ensemble des très nombreuses classes disponibles dans et pour ce dernier.

La bibliothèque de classes du Framework .NET est une bibliothèque de classes, d'interfaces et de types valeur qui fournissent l'accès aux fonctions du système. Il s'agit du fondement sur lequel les applications, composants et contrôles .NET Framework sont construits.

WebServices et Windows Communication Foundation

Dans toute la mesure du possible, nous appliquons une achitecture distribuées à nos applications et ce, même si elles sont destinées à tourner sur une même machine.

L’architecture d'un environnement informatique ou d'un réseau est dite distribuée quand toutes les ressources ne se trouvent pas au même endroit ou sur la même machine. On parle également d'informatique distribuée. Ce concept s'oppose à celui d'architecture centralisée dont une version est l'architecture client-serveur. Internet est un exemple de réseau distribué puisqu'il ne possède aucun nœud central. Les architectures distribuées reposent sur la possibilité d'utiliser des objets qui s'exécutent sur des machines réparties sur le réseau et communiquent par messages au travers du réseau.

La technologies des WebServices permet à des applications distribuées dans différents systèmes d'exploitation de communiquer entre elles. Il s'agit ni plus ni moins d'une technologie RPC (Remote Procedure Call) standardisée et indépendante des constructeurs. Adieu donc à CORBA et autres usines à gaz propriétaires! Les classes de la Windows Communication Foundation (WCF), qui font partie intégrante du Framework .NET, permettent non seulement de réaliser très rapidement des WebServices mais également d'aller beaucoup plus loin et de réaliser des interfaces complètement paramètrables. En effet, les protocoles de communication entre les différents objets (TCP/IP sockets, http, etc.) ne doit plus faire l'objet d'un choix au moment du développement. Tout est consigné dans des fichiers de configuration et le choix se fait au moment de l'installation des applications en fonction de la configuration physique de la topologie du réseau. Si nos modules doivent communiquer entre eux sur une même machine, on choisira un protocole propriétaire très performant. Par contre, s'il faut communiquer avec des modules tiers installés sur une machine utilisant un autre système d'exploitation que Windows, on utilisera les WebServices classiques.

MS-SQLServer, LINQ

Concernant la persistance des données, nous travaillons avec MS-SQLServer et LINQ (Language Integrated Query) dans un environnement .NET.

Adobe Dreamweaver, PHP, MySQL

Dreamweaver

Pour le développement de sites web, nous travaillons avec Dreamweaver CS5.5. Côté serveur, nous utilisons PHP et MySQL.