Un plaidoyer pour le développement web « platonique »

kool-aid-manJe mentionne souvent. Développer une application web, c’est facile. En faire la maintenance est une autre histoire. À l’époque des frameworks front-end JavaScript permettant de faire des applications web riches et interactives à la fois, il est facile d’oublier que l’ont construit des abstractions par dessus d’autres abstractions. Nous vivons à une époque où, à chaque ajout de librairie tierce, un enjeu de maintenabilité est à portée de main.

Les navigateurs évoluent à la vitesse grand V. Inévitablement, vous aurez à mettre à jour une librairie dans le lot que vous utilisez. Cela signifie aussi que ce sera le jour où vous réaliserez que vous aurez, peut-être, à mettre à jour une série de dépendances.

Plus la chaîne de dépendances est grande, plus j’ai l’impression de percevoir ce même sentiment d’angoisse chez le lecteur. Cela nous est tous déjà arrivé au moins une fois? D’ailleurs, je cite l’exemple avec le développement front-end. Cependant, il est tout aussi valide avec .NET.

Devoir retester une application entière en raison d’une mise à jour mineure d’une librairie et de ses dépendances utilisée dans son application n’est pas cool.

J’avais initialement commencé ce billet en ayant comme objectif de faire un résumé de comment il est facile de faire une grille de données de type CRUD avec ASP.NET « vanille ». En fait, c’est tellement simple que je n’ai pas envie de répéter ce qui existe déjà sur le web à ce sujet.

Mon intention était surtout de démontrer qu’il n’est pas automatiquement nécessaire d’inclure une panoplie de librairies JavaScript pour manipuler le HTML et faire un SPA avec quelque chose qui peut se faire directement avec ASP.NET. Il y a un truc que je garde régulièrement en tête concernant le développement web. Plus une librairie va tenter de résoudre un problème complexe (ex.: faire un SPA ou de l’AJAX), plus son utilisation en sera aussi complexe ou induite en compromis contraignants.

Ceux qui lisent les Liens de la Semaine auront remarqué que j’ai inclus le lien vers le The boring front-end developer dans l’édition #141. Je me suis tout de suite reconnu dans les arguments avancés. Je le considère réellement comme un manifeste pour une façon platonique de concevoir le web. Les arguments sont aussi en ligne directe avec YAGNI pour le développement logiciel.

Le web est basé sur un protocole assez simple: HTTP. Gardons les choses simples lorsqu’il est temps de prévoir l’architecture front-end de son site. Pour faire simple, pour faire des grilles d’édition web, je doute sincèrement que vous ayez besoin d’AngularJS ou même de React.js, jQuery, d’un préprocesseur CSS comme Sass et de gulp pour faire tenir tout ça ensemble.

Comme toujours, soyez vigilant et, surtout, faites preuve de pragmatisme lorsque vous développez!

Advertisements

5 avis sur « Un plaidoyer pour le développement web « platonique » »

  1. Aurélien dit :

    Bonjour,

    Quelle est la bonne pratique concernant le CRUD avec ASP.NET « Vanille » ? ([Bind(Include = « LastName, FirstMidName, EnrollmentDate »)] dans l’exemple)
    Utiliser « Bind attribute » ou un ViewModel (+ AutoMapper) ?
    Dans quel cas utiliser l’un et pas l’autre ?

    Merci !

    • Bonne question! J’ai aucune idée pour la meilleure pratique. Cependant, je suis un grand fan d’employer un ViewModel et AutoMapper. Peut-être que j’en ferai un billet à venir. :)

  2. […] plaidoyer pour une pause de la course à l’évolution du web. Autant en faveur d’un développement web « platonique » que je suis, je ne suis pas réellement en faveur de […]

  3. […] Juillet : Un plaidoyer pour le développement web « platonique » […]

  4. […] Happiness is a Boring Stack. Ça me fait penser à un certain plaidoyer pour le développement web platonique… […]

Laisser un commentaire

Entrer les renseignements ci-dessous ou cliquer sur une icône pour ouvrir une session :

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

%d blogueurs aiment ce contenu :