Abstraction or not abstraction

Le fondement même de la qualité, en matière de logiciel, passe par l’abstraction.

Si on veut écrire un logiciel apte à évoluer, on doit le concevoir sous la forme de modules.

Un module, c’est un ensemble de programmes, qui doivent résoudre un problème bien défini.

L’abstraction, c’est l’idée qu’on peut définir et programmer un module, sans aller voir dans les modules voisins : ceux avec qui les programmes discutes, a côté donc mais également en dessous.

Ainsi, quand on développe une application Windows par exemple, on a besoin de connaitre les API de Windows. Pas son fonctionnement intime.

Et bien actuellement, il me semble que cette idée est bien mise à mal. Quand on développe un service Internet, il est difficile de se positionner dans cette posture. Tout est incroyablement entre-mêlé.

Ainsi, pour mettre en ligne un service, qui va devoir supporter de grosses montée en charges, on doit tout prendre en compte, et avoir une culture qui mêle base de données, réseau, serveur Internet, …

C’est bien entendu une situation temporaire, qui met en avant la fragilité des architectures actuelles, et de la non maturité des solutions mises en oeuvre.

Ceci étant dit, il faut bien avancer et on doit faire avec !

2 commentaires

  1. Je pense que c’est assez dur de trouver des développeurs qui découpe leurs applications en module rien que pour clarifier le tout c’est important.

    Mais je pense qu’il faudrait d’abord sensibiliser les développeurs à la montée en charge qui généralement s’en foutent et donc à toutes les techniques permettant d’améliorer les applications.

    Pour les applications internet, tout dépend de l’ampleur du site, par exemple pas besoin de découper en 1000 modules un CMS qui sera utiliser sur un site à basse audience, mais c’est clair que pour un nouveau concept qui est prévu pour du fort trafic il faut forcement le faire.

    Commençons à sensibiliser nos équipes…

  2. La standardisation du web passe par la démocratisation d’outils et programmes. Ces mêmes outils et programmes dépendent de l’évolution des besoins. Bref, patience, nous y viendront progressivement.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.