Archive pour le ‘Framework’ catégorie

Nex’Hebdo 04 : Techdays, VS2010, AOP & UI

15 février 2010

image Les TechDays ont eu lieu en début de semaine dernière (8,9 et 10 Février 2010). Cet évènement gratuit que propose Microsoft, a connu un franc succès ; en effet, un record d’affluence sans précédent a été battu : plus de 16 000 participants au total. En attendant les webcasts, je vous conseille vivement de regarder les conférences plénières si vous n’avez pas pu y assister : Blog Microsoft TechDays [fr].

Au-delà de la mise en scène et de la « Microsoft touch », un certain nombre d’annonces et de démos ont été présentées sur diverses technologies (Microsoft Azure, Hyper-V, VSTS 2010, VS Lab Management, Windows 2008 R2, etc.). Illustration de l'AOPParmi les sessions disponibles, une m’a particulièrement intéressé : « Aspect Oriented Programing » in .Net présenté par Romain Verdier et Yann Schwartz. En attendant de pouvoir télécharger la session, je vous renvoie vers quelques liens (quand on parle d’AOP la notion d’IoC Container n’est jamais très loin):

Logo de Visual Studio 2010Parallèlement, il y aussi eu un autre temps fort durant cette semaine. Je veux parler bien sur de la sortie de la toute dernière RC de VS2010 (qui a fait l’objet d’un précédent billet/news). Bien que les premiers retours furent positifs, un problème de « crash IntelliSense » semble s’être produit sur le poste de certains utilisateurs ; Scott Guthrie détaille le problème sur son blog : Intellisense Crashing fix for VS 2010 [en]. Certains regretteront aussi que les fonctionnalités suivantes ne soient pas incluses :

· Pas de support de projet Silverlight 4, toujours en cours de développement ; mais disponibilité des projets basés sur SL 3.

· Pas de MVC2 RC2. En effet, cette version de VS a été compilée avec MVC2 RC1

Cette RC, comme le contrat de licence le stipule, expire au 30 Juin 2010. Téléchargement de VS2010 : MSDN Download – VS2010 RC [en].

clip_image002Enfin, je conclurai par un sujet qui me tient toujours à cœur : l’interface utilisateur (UI). Cette semaine, j’ai découvert un article qui s’intéresse au UI du future : des capteurs « brain waves »  au « papier digital » en passant par la biométrie.

A découvrir : Future of UI [en] :

Partagez cet article :
  • del.icio.us
  • Facebook
  • Netvibes
  • Scoopeo
  • Twitter
  • Wikio FR

Articles relatifs

Les nouveautés d’ASP.NET 4.0

13 novembre 2009

Ajax, à la conquête du client-sideGuillaume Lacasa (blog) vient de publier chez Bewise un petit dossier sur les nouveautés d’ASP.NET 4.0, dont :

  • Viewstate optimisé avec notamment la possibilité de l’activer/désactivé pour chaque contrôle
  • Web.config allégé par un meilleur héritage du machine.config
  • URL Rewriting pour enfin avoir de jolies URL bien indexables par les moteurs de recherche
  • ID Client statiques (enfin !)
  • Support des langages dynamiques comme IronPython et IronRuby (logique quand on connait les évolutions de .NET 4.0 – hors ASP.NET)
  • Client Templates pour faire du rendu de données côté client
  • Ajax Content Delivery Network : une bibliothèque mutualisée de librairies, à la manière de Google AJAX librairies API

Pour plus de détails, je vous invite à lire l’article de Guillaume.

Partagez cet article :
  • del.icio.us
  • Facebook
  • Netvibes
  • Scoopeo
  • Twitter
  • Wikio FR

Articles relatifs

Poster Framework 4.0

4 novembre 2009

image Ce poster met en avant les principaux changements & ajouts au niveau des namespaces et classes. Une ressource principalement destinée aux développeurs.

Disponible en téléchargement  : poster .Net Framework 4.0 (pdf)

Partagez cet article :
  • del.icio.us
  • Facebook
  • Netvibes
  • Scoopeo
  • Twitter
  • Wikio FR

Articles relatifs

MSDays09 : la conférence plénière !

8 octobre 2009

Get Microsoft Silverlight

Partagez cet article :
  • del.icio.us
  • Facebook
  • Netvibes
  • Scoopeo
  • Twitter
  • Wikio FR

Articles relatifs

6 nouveautés du Framework .NET 4.0

23 septembre 2009

Logo Microsoft .NetLe framework .NET (qui arrive gentiment sur ses 10 ans) évolue de version en version. La deuxième version a apporté les Génériques, la 3.0 a propulsé LINQ et tout ce qui était nécessaire à son intégration. Quelle surprise nous réserve le Framwork 4.0 ?

Pour répondre à cette question, il faut comprendre les grandes tendances actuelles en matière de développement :

  • Les développeurs  se tournent de plus en plus vers des langages déclaratifs, qui leurs permettent de se concentrer d’avantage sur ce qu’ils doivent faire et pas sur la façon dont ils pourront rendre leur code impératif fonctionnel.
  • Les langages dynamiques tels que Php, Javascript, Ruby… connaissent un succès qui ne se dément pas. La simplicité du développement, le typage implicite et l’absence de compilation y sont pour beaucoup.
  • Paradoxalement, on observe un intérêt sans cesse renouvelé pour les langages statiques. Ils apportent leur lot de robustesse, de performance et d’outils intelligents comme IntelliSense dans Visual Studio, ainsi que, généralement, une meilleure sécurité lors de la montée en charge (le code étant compilé, il est moins évident de passer à côté d’une erreur, même si le projet fait plusieurs millions de lignes).
  • Enfin, un besoin important d’économiser de l’énergie en privilégiant les technologie multicoeurs, et donc de maitriser les problématiques d’accès concurrent et de gestion de ressources démultipliées.

Voici la réponse de Microsoft à ces problématiques.

1. Le Dynamic Language Runtime

C# 4.0 poursuivra le travail de C# 3.0 et continuera à promouvoir l’utilisation de LINQ, afin de rendre le code plus fonctionnel et d’en faciliter la relecture., mais il fournira également de nouvelles fonctionnalités, orientées « programmation dynamique » grâce à la DLR, un socle de création de langages dynamiques implanté en surcouche de la CLR qui donnera accès aussi bien à un Object Binder .NET qu’à des Binder Silverlight, Python ou Ruby…

2. Le typage dynamique des objets

La grosse révolution de C# 4.0 est le typage dynamique d’objets. C# 4.0 introduira un type statique dynamic dont la résolution se fera non pas à la compilation, mais à l’exécution (la compilation générant en fait du script). Une vraie révolution dans le monde du .NET et une annonce très attendue par ceux qui utilisent la réflexion à outrance. L’exemple donnée est assez parlant.

Imaginez que vous ayez une méthode GetCalculator() en provenance d’une usine logicielle, qui renvoie un objet de type Object (mais dont vous savez qu’il s’agit d’un calculateur). Voici ce qu’il fallait écrire avant pour calculer 10+20 :

object calc = GetCalculator();
Type calctype = calc.gettype();
object res = calctype.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] {10, 20});
int sum = convert.ToInt32(res).

Le code n’est pas très intuitif, et cela est principalement dû à la phase d’appel à la procédure par invocation… Voilà ce que cela pourra donner en C# 4.0 :

dynamic calc = GetCalculator();
int sum = calc.add(10,20);

3. Paramètres optionnels et nommés

C# 4.0 introduira la possibilité de définir des paramètres optionnels et nommés (oui, il aura fallu un certain temps diront les détracteurs…). Il ne sera donc plus la peine de développer 8 signatures d’une même méthode pour définir des valeurs par défaut ; autant de temps gagné par les développeurs pour s’interroger sur de vrais problèmes.

4. Améliorations relatives à l’usage de COM

Outre les paramètres optionnels et nommés déjà décrits, qui permettront d’écrire :

var maVariable = comObject.method();

au lieu de :

var maVariable = comObject.method(System.Type.Missing, System.Type.Missing, System.Type.Missing, System.Type.Missing);

C# 4.0 utilisera également ses nouvelles fonctionnalités « dynamiques » pour permettre le mapping automatique des objets (en réalité, il résoudra ce problème à l’exécution).

 

5. Covariance et contra-variance

Lorsque vous instanciez une classe générique avec un type référence B dérivant de A, le transtypage de B vers A des éléments de la liste était impossible. Via une astuce de déclaration de l’interface de la classe générique, cette covariance sera désormais autorisée :

IBoite<cookie> maBoiteACookies = new Boite<cookie>();
IBoite<biscuit> maBoiteABiscuits = maBoiteACookies;

Réciproquement, un second mot clé permettra des opérations de contra-variance (de la classe vers ses dérivées) et on peut dès lors imaginer des scénarios mixtes mélangeant co et contra-variance, comme l’écriture de délégués ayant des paramètres d’entrée et sortie (d’où les mots clés choisis… in et out).

6. Co-évolution des langages

Microsoft s’est engagé à faire évoluer conjointement C# et VB.NET à partir de cette version du Framework. Voilà une grande nouvelle qui devrait réjouir les développeurs VB.NET, jusque-là un peu moins bien traités que leurs camarades C#-istes.

Pour aller plus loin

Si vous désirez aller plus loin dans la compréhension des nouveautés du Framework .NET 4.0, Nexdotnet vous invite à imprimer le poster prévisionnel du Framework .NET 4.0 et à lire les articles suivants :

Partagez cet article :
  • del.icio.us
  • Facebook
  • Netvibes
  • Scoopeo
  • Twitter
  • Wikio FR

Articles relatifs