Accueil > .Net, Divers, Feeds > Feeds Of The Week #8

Feeds Of The Week #8

Cette semaine, pas mal de choses.

Déjà, comme il est toujours bon de garder en mémoire les bases : A Brief Introduction of Fundamental OOP.

Ensuite, des liens qui suivent des conversations que j’ai eu avec des collègues.
Par habitude maintenant (et parce que c’est super pratique), j’utilise beaucoup d’expressions lambdas (sauf quand je dois rendre mon code compatible VS2005…). Résultat, une discussion avec un collègue qui disait que les lambdas, c’est pas forcément simple de comprendre comment ça fonctionne. Kodefuguru a répondu à ma place : Lambdas for Junior Developers.

Avec les lambdas, il y a souvent Linq (les méthodes d’extensions System.Linq dans mon cas). Et là, on a discuté de performances. J’avais lu, il y a pas mal de temps, que ceux qui constatent des performances moindres (Linq to SQL), c’était aussi ceux qui employaient mal Linq. Je suis plutôt d’accord avec cet avis. Et du coup : LINQ query performance (Count & Any).

Question optimisation, il y a aussi les génériques. Dans notre cas, on a un socle qui a été fait en .Net 1.1 (sic…) et migré par parties (comprendre : quand les devs avaient que ça à faire). Du coup, on se trimballe parfois des méthodes qui usent (abusent) du cast (tout est object, et je dis bien object, pas objet…).
Mais les génériques, on  peut aussi optimiser un peu : Optimization and generics, part 1: the new() constraint & Optimization and generics, part 2: lambda expressions and reference types.

Pour en revenir un peu à Linq. Un autre billet sur les méthodes d’agrégation : Five Easy Sequence Aggregators.

Après, d’autres liens un peu en vrac !

Voilà, ça fait déjà pas mal de choses ^^

Sinon, concernant mes helpers Ext.Net.
J’ai eu à affronter un cas auquel je n’avais pas pensé durant le développement du helper pour le GridPanel.
Et c’est en cherchant à le résoudre que j’en ai résolu d’autres ^^
Pour résumer, voici les problèmes :

  • L’une de nos données à afficher est stockée dans un Dictionary<String, Double>, la clef est l’identifiant de la monnaie (EUR, USD, JPY…) et le double est le montant :
    • Dans certains cas, il faut afficher le montant de la devise sur la même ligne (1 ligne = 1 contrat)
    • Parfois, il faut afficher le montant de la devise dans une autre devise (quand on change la devise sur l’écran)
  • Les objets que l’on utilise sont énorme (il y a bien trop d’infos à l’écran…), ce qui fait que la sérialisation Ext.Net (pour stocker les données dans le store) prend :
    • TOUT l’objet
    • Uniquement les propriétés primitives (String, Int32…en sommes les types du namespace System)

La solution…Et bien, ça a été de créer un dictionnaire de données (littéralement : Dictionary<String, Object>) pour stocker les données (en utilisant la réflexion pour le charger). Ce ne fut pas une mince affaire, mais au final le résultat est plutôt concluant.
Je mettrais donc, sous peu, à jour le repository GitHub. Et je ferais donc le billet qui va bien.

En conclusion : A t-on encore besoin de développeurs ?
Je réserve mon avis, pour le moment… Il y a quelques années, j’entendais partout que les développeurs iraient en Inde/Chine/Maroc/etc. Aujourd’hui, il y a toujours des développeurs. Il y a même des entreprises qui se payent des consultants (j’en sais quelque chose…) pour…pisser du code. Wait and see!

Catégories:.Net, Divers, Feeds
  1. Pas encore de commentaire.
  1. No trackbacks yet.

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Suivre

Recevez les nouvelles publications par mail.

Rejoignez 57 autres abonnés

%d blogueurs aiment cette page :