Le Développement WEB

Le développement web a connu une évolution marquante depuis le navigateur web développé par Tim Berners-Lee, en 1990. Nommé WorldWdeWeb puis renommé plus tard en Nexus.

Au début exclusivement à base de texte, le premier site web a marqué le début de ce qui est maintenant devenu une révolution digitale.

Il y a 20 ans, les sites Web étaient des documents HTML bruts desservis par des daemon HTTP simples. L'édition signifiait éditer ces documents directement via un shell, ou copier des fichiers édités localement sur le serveur.

Aujourd'hui, l'hypothèse est que tous les sites sont des logiciels, qu'il existe une sorte de CMS derrière chaque destination sur le Web, et probablement un flux de travail pour le développement et le déploiement.

Contrairement aux autres catégories de design, le web design doit son évolution, parfois forcée, à la technologie. Parfois contraignante à la créativité et d’autres fois plus propice.

Histoire du Développement WEB

1. Le Développement Web Aujourd'hui

a. Les métiers de l’internet

Toutes les entreprises aujourd'hui, même parmi les PME, se doivent d'avoir un site internet, gage de visibilité et de crédibilité. Si certaines grandes sociétés ont les moyens de compter à plein temps des professionnels du web, beaucoup font appel à des prestataires, les web-agencies, pour concevoir leur site web et gérer leur contenu. Les profils recherchés sont alors des webdesigners, développeurs, flasheurs, webmasters et autres ergonomes web. Avec le développement des réseaux sociaux, d'autres enjeux émergent aussi comme l'e-réputation ou la modération, via la fonction de community manager.

b. Les débouchés du web : e-commerce, communication et marketing

Contrairement aux idées reçus, tous les métiers du web ne sont pas liés à la technique. Les principaux recruteurs du web se trouvent dans le e-commerce, le marketing et la publicité. Il existe ainsi 48 000 sites marchands en France, un secteur qui emploie 50 000 personnes et en recrute 6000 nouvelles chaque année. Les trois-quart d’entre eux sont des jeunes ! Autant de postes que l’on trouve dans les web-agencies, les départements internet des régies et des agences de pub, les sites de commerce en ligne, les pure-players... Si les compétences commerciales sont évidemment de rigueur, les profils qui sortent du lot sont ceux qui démontrent une réelle connaissance de la culture web.

c. L’économie numérique portée par les réseaux sociaux

Il existe aussi des entreprises entièrement tournées vers le web, comme les fournisseurs d’accès à internet (une quinzaine en France), mais aussi des agences qui développent des applications pour les mobiles ou les réseaux sociaux. Un secteur en plein expansion notamment grâce aux réseaux sociaux. Ainsi le plus célèbre d’entre eux, Facebook, aurait généré 22 000 emplois indirects en 2011 en France. Il est certain que d’autres sites basés sur d’autres modèles prendront le relais dans le futur. Les professionnels se doivent donc d’être capables d’anticiper les changements, de les intégrer et de s’autoformer en permanence.

d. Accessibilité

Aujourd'hui, créer un site web est devenu un eju d'enfant. Beaucoup d'outils facile à utiliser et en ligne ont fait surface permettant un utilisateur lambda d'internet d créer une site web. Finis les heures passés à apprendre à coder, il suffit maintenant de qulque clics afin de mettre en ligne un site 100% personnalisé.

e. Tendances

La fonction première du design est d’améliorer l’expérience que l’on a d’un produit ou d’un service. Le web design n’est pas uniquement décoratif, il fait le lien entre les technologies et nous. Les nouveautés high-tech seraient plus difficiles d’accès sans l’ergonomie, le style, l’esthétique…

Les évolutions du web design sont liées aux innovations technologiques qui induisent de nouveaux usages. De fait, certains cycles peuvent durer quelques années.

En 2007, l’iPhone avait changé les habitudes avec iPhone OS, qui simplifiait la transition vers la mobilité en s’inspirant des objets de la vie réelle. Relayé par l’interface plate de Windows 8, plus adaptable et synthétique (flat design). Le web design a connu plusieurs mues avant de devenir adulte et de proposer des interfaces tournées vers l’avenir.

Aujourd’hui, la relève est à chercher du côté des objets connectés. Les interfaces modernes ont été pensées pour s’adapter aux usages à venir. Comme par exemple Windows 10 qui se décline sur tous types d’appareils, ou watchOS sur Apple Watch qui s’inspire d’iOS.

Les site webs deviennet adaptatif et offrent à l'usager l'embarras du choix de la plateforme.

D'autre types de design à but esthétique voient le jour. Les sites sur une seule page défilant dit les OnePage sites couplés avec les script à effet Parallax font fureur auprès des nouvelles entreprises mais plus particulièrement auprès des professionnels ayant besoin de présenter leur compétences ainsi que leur travail sous forme de Portfolio.

2. Evolution au cours du temps

a. Navigateurs ayant permis le développement web

Mosaïc

Le World Wide Web a commencé à croître exponentiellement avec l'apparition du navigateur web NCSA Mosaic en 1993. Ce navigateur était gratuit et développé par le National Center for Supercomputing Applications. Il fut le plus utilisé durant un an, jusqu'à fin 1994, avec l'apparition de Netscape Navigator, développé par Netscape Communications Corporation qui a débauché la plupart des développeurs de NCSA Mosaic. Mosaic fut supplanté par Netscape Navigator en quelques mois.

Netscape

En 1995, alors qu'Internet commence à être connu du grand public grâce au Web et au courriel, Microsoft préparait la sortie de Windows 95 en pensant que l'offre d'Internet était d'une qualité trop inégale pour le grand public. C'est ainsi que Microsoft Windows 95 fut lancé en incluant une offre commerciale de réseau censé concurrencer Internet : MSN (The Microsoft Network).

Pendant ce temps, à la suite notamment de la sortie du langage Java et à son intégration via plugin dans Netscape Navigator, le monde informatique commençait à sérieusement spéculer sur la possibilité de voir le web devenir une plate-forme de développement qui rende la plate-forme sous-jacente, soit le système d'exploitation, donc notamment Microsoft Windows, interchangeable. Ceci laissait penser que le monopole de fait détenu par Microsoft se transformerait en monopole de Netscape Communications Corporation. C'est pourquoi lorsqu'en août 1995 Netscape rentra en Bourse à 28 dollars, l'action fut immédiatement sujette à une très forte spéculation (à la hausse).

Microsoft, au vu du succès d'Internet et de Netscape, prit conscience du danger et du potentiel du Web et lui créa un concurrent : Internet Explorer 1.0, grâce à l'acquisition d'une licence du logiciel Spyglass Mosaic (à ne pas confondre avec NCSA Mosaic).

Internet Explorer 1.0 fut alors inclus dans le « Pack Plus » (une ébauche de service pack) de Windows 95 en août 1995. La sortie d'Internet Explorer 2.0 trois mois plus tard marqua le début de la guerre des navigateurs. The Microsoft Network fut également pleinement intégré au web.

Internet Explorer

La guerre des navigateurs prit fin lorsque IE cessa d'avoir des concurrents sérieux. Le quasi-monopole d'Internet Explorer entraîna également la fin des innovations dans ce logiciel : il n'y eut pas de nouvelle version d'Internet Explorer entre 2001 (version 6.0) et 2006 (version 7). À partir de cette période, une grande partie des nouveaux utilisateurs internautes ordinaires ignorent qu'il existe d'autres logiciels navigateurs web qu'Internet Explorer, et le confondent même parfois avec Internet lui-même.

b. Langages marquant le DevWeb

L’Institute of Electrical and Electronics Engineers (IEEE) a publié en juillet dernier son rapport annuel sur les meilleurs langages de programmation pour l’année 2016. Pour information, l’IEEE est connue comme la plus grande association mondiale de professionnels techniques.

Parler de meilleur langage de programmation sans définir un critère spécifique de comparaison peut être sujet à de longs débats. L’IEEE s’est donc intéressé à la popularité des langages selon divers domaines (web, mobile, entreprise/desktop, systèmes embarqués). L’organisation s’est également penchée sur les langages en forte croissance et ceux qui sont les plus demandés par les employeurs.

La sélection initiale comprenait près de 150 langages de programmation, mais le classement final n’en a retenu que 48, comme l’année dernière. Le tableau suivant donne le top 10 des langages en 2016 en comparaison au classement de 2015.

  1. C
  2. JAVA
  3. PYTHON
  4. C++
  5. R
  6. C#
  7. PHP
  8. JAVASCRIPT
  9. RUBY
  10. GO

c. Design

1989-1992

html a été inventé pour Internet et plus particulièrement pour le World Wide Web (www), afin de pouvoir écrire des documents hypertextes liant les différentes ressources d'Internet. En août 1991, lorsque Tim Berners-Lee annonce publiquement le Web sur Usenet, il ne cite que le langage SGML, mais donne l'url d'un document ayant l'extension de fichier html.

Les premiers éléments du langage html sont le titre du document, les hyperliens, la mise en forme du texte en titres, sous-titres, listes ou texte brut, et un mécanisme basique de recherche par index. La description de html est alors assez informelle, elle est principalement définie par le support des divers navigateurs Web contemporains.

1993

L'état de html correspond alors à ce que l'on pourrait appeler html 1.0. Il n'existe cependant aucune spécification portant ce nom, notamment parce que le langage était alors en pleine évolution. Un effort de normalisation était cependant en cours. À partir de fin 1993, le terme html+ sera utilisé pour désigner la version future de html.

Avec le navigateur NCSA Mosaic, html connaît deux inventions majeures : l'invention de l'élément IMG permet d'intégrer des images (GIF ou XBM) aux pages Web (Mosaic 0.10) ; les formulaires rendent le World Wide Web interactif (Mosaic 2.0pre5).

1994

Avec l'apparition de Netscape Navigator 0.9 le 13 octobre, le support de nombreux éléments de présentation est ajouté : styles de texte, clignotement, centrage... Le développement de html prend alors deux voies divergentes. D'une part, les développeurs de navigateurs s'attachent à maximiser l'impact visuel des pages Web. D'autre part, les concepteurs du Web proposent d'étendre les capacités de description sémantiques (logos, notes de bas de page...) et les domaines d'applications (formules mathématiques, tables) de html. En ceci, ils suivent les principes de SGML consistant à laisser la présentation à un langage de style. En l'occurrence, CSS est prévu pour html.

Seul le support des tables est rapidement intégré aux navigateurs, notamment parce qu'il permet une très nette élaboration de la présentation. Le manque de structure du html alors mis en œuvre par Netscape Navigator, puis Microsoft Internet Explorer, est parfois dénoncé comme étant de la « soupe de balises » (« tag soup » en anglais).

1995-1996

En mars 1995, le W3C nouvellement fondé propose le résultat de ses recherches sur html+ : le brouillon html 3.0. Il comprend notamment le support des tables, des figures et des expressions mathématiques. Ce brouillon expire le 28 septembre 1995 sans donner de suites directes. Fin 1995, le RFC 1866 décrivant html 2.0 est finalisé. Ce document décrit html tel qu'il existait avant juin 1994, donc sans les nombreuses additions de Netscape Navigator.

1997

Le 14 janvier, le W3C publie la spécification html 3.2. Elle décrit la pratique courante observée début 1996, donc avec une partie des additions de Netscape Navigator et Internet Explorer. Ses plus importantes nouveautés sont la standardisation des tables et de nombreux éléments de présentation.

Le 18 décembre, le W3C publie la spécification html 4.0 qui tandardise notamment le support les styles, les cadres (frames) et les objets (généralisation des images et des applets).

1998-1999

La dernière spécification de html est la 4.01 date du 24 décembre 1999. Elle n'apporte que des corrections mineures à la version 4.0.


2000-2006

Le développement de html en tant qu'application de SGML est abandonné au profit de Xhtml, application de XML. La première étape est la spécification Xhtml 1.0, publiée le 26 janvier 2000. Il s'agit d'une reformulation de html 4.01 basée sur XML au lieu de SGML. La seconde étape est la spécification Xhtml 1.1, publiée le 31 mai 2001. Il s'agit d'un classement des fonctionnalités de Xhtml 1.0 en modules. En outre les fonctionnalités de présentation et quelques redondances sont supprimées.

2007 à nos jours

Xhtml 2.0, html 5, CSS 3


d. Mobilité

Un site web adaptatif (anglais RWD pour responsive web design, conception de sites web adaptatifs selon l'OQLF) est un site web dont la conception vise, grâce à différents principes et techniques, à offrir une expérience de consultation confortable même pour des supports différents. L'utilisateur peut ainsi consulter le même site web à travers une large gamme d'appareils (moniteurs d'ordinateur, smartphones, tablettes, TV, etc.) avec le même confort visuel et sans avoir recours au défilement horizontal ou au zoom avant/arrière sur les appareils tactiles notamment, manipulations qui peuvent parfois dégrader l'expérience utilisateur, tant en lecture qu'en navigation.

La notion de web adaptatif repense la manière de concevoir les parcours de navigation sur Internet, puisqu'il ne s'agit plus de concevoir autant de parcours qu'il y a de familles de terminaux mais de concevoir une seule interface auto-adaptable. Ainsi, les sources d'information et les socles techniques ne sont pas dupliqués. Cela engendre des économies d'échelle dans la conception et la maintenance de sites internet bénéficiant de ce mode de conception.

3. Futur du Développement Web

6 technologies à surveiller

Les technologies classiques ne sont plus en vogue, JavaEE, Ruby on Rails où encore PHP, déclinent en terme de popularité. A l’inverse d’autres technologies progressent et montent doucement dans les différents classements.

AngularJS

AngularJS est un framework Javascript MVC créé pour rendre le développement front-end le plus simple possible. Développé par Google, il a su s’imposer dernièrement pour créer des applications web dynamiques type SPA.

ReactJs

Créé par Facebook et Instagram, ReactJs est une librairie Javascript pour créer de interfaces utilisateurs. Vu comme le V de MVC, son unique but est de manipuler le DOM d’une page web pour laquelle l’affichage serait amené à changer en fonction de l’évolution des données. Pour faire simple, lorsque des données changent, ReactJs appuie sur le bouton refresh de votre navigateur.

Go

Go est un langage de programmation compilé créé par Google dont la force est de réaliser des opérations concurrentes. Le langage Go a été créé pour la programmation système et a depuis été étendu aux applications web. Il est maintenant possible de générer du code pour Android avec Go et certaines librairies. Notez aussi que ce langage dispose d’une bibliothèque de serveur HTTP permettant de se passer de Apache ou Nginx.

Rust

Langage de programmation compilé orienté bas niveaux, Rust a été conçu Mozilla pour être « sécurisé, concurrent et pratique », supportant la programmation purement fonctionnelle, procédurale et orientée objet. Rust est décrit comme l’un des successeurs potentiels de C++.

R

Pas vraiment relatif au web, R est un logiciel libre de traitement de données et d’analyse statistique. A l’heure du big data, il est intéressant d’avoir un regard sur ce genre d’outil afin de manipuler des données.

Node.js

Très populaire, Node.js développé par Joyent n’est plus à présenter et c’est pourquoi il ne fait pas partie de ce top 5. Utilisant la machine virtuelle javascript V8, Node.js permet d’exécuter du javascript côté serveur. C’est un candidat idéal pour des applications où il vous faudra maintenir une connexion persistante comme pour faire du temps réel ou du push d’information.

Comme vous avez pu le constater, certains langages de programmation sont clairement orientés web alors que d’autres sont plus système (ne serait-ce que par la différence de design des sites webs). L’intérêt pour tout développeur sera de mixer entre ces langages pour créer de nouvelles applications.

Les tendances dans l’architecture d’application

En 2014 le responsive web design n’a jamais autant été à son apogée. Aujourd’hui une grande majorité de sociétés conçoit des applications capables de s’adapter sur tous les devices afin de toucher le plus grand nombre de consommateurs possible. Cela est en partie dû à l’effervescence de l’utilisation du mobile, rendant ainsi l’approche « mobile-first » au centre de tout projet. Ce profond changement dans la création d’applications web ou mobile a impacté la façon d’architecturer un projet, obligeant à créer des APIs pour permettre la consommation de données. Ces données qui sont les raisons d’être des applications peuvent maintenant être accessibles depuis n’importe quelle solution Front-end avec la consommation de web services REST. A l’ère du mobile, des objets connectés et du data-driven, les Web APIs sont devenues la colonne vertébrale des Web Apps et Mobile Apps.

Ainsi les solutions de type MBaaS ou SPA vont être de plus en plus courantes engendrant ainsi la création de plus en plus d’API.

L’avenir des développeurs

Aujourd’hui on mixe les langages et on interconnecte des briques afin de former une application.

i l’on veut suivre la tendance, il faudra donc maîtriser plusieurs langages de programmation néanmoins il faudra être capable de passer de l’un à l’autre sans problème. Au vu du nombre grandissant des langages de programmation et de l’effervescence des Frameworks et Micro-Frameworks, il n’est plus possible de faire l’impasse sur de la veille technique. Il est impératif de découvrir leurs forces et faiblesses afin de les utiliser aux bons moments. Pour qu’une application soit performante il faut être ouvert et regarder ce qu’il se passe ailleurs, non pas pour implémenter les tendances ou le dernier framework à la mode mais tout simplement pour s’adapter plus vite en utilisant ce qui marche.

Au delà du développement pur, il y a une tendance qui aujourd’hui est inévitable pour un développeur, c’est le fait d’avoir une culture DevOps. Le temps des équipes en silo n’est plus, il est important de savoir comment fonctionnent des protocoles d’échanges tel que HTTP.

Conclusion

Le développement web a beaucoup évolué depuis sa creation et son expansion n’en est qu’au debut car de nouveaux languages naissent et d’autres meurts regulierement. Il faut donc se tenir au courant de toutes les nouveautés si l’on ne veut pas perdre pied et se retrouver perdu dans le developpement.