JavaScript

Javascript asynchrone, les Promises à la rescousse

Tout est dans le titre. L’ES6 a apporté beaucoup de nouveautés, entre hype et réelle utilité, beaucoup d’encre a coulée. Les Promises ont été à l’honneur car elles sont un ajout notable au langage et pemettraient, apparemment, de nous affranchir du callback hell. Voyons dans cet article comment les utiliser pour une meilleure gestion du flux.

(suite…)

Télécharger des fichiers depuis le web en Node.js

Quelle que soit l’application sur laquelle on travaille, il arrive forcement un moment ou cette dernière doit automatiquement télécharger des ressources web. Des images de profil téléchargées depuis Gravatar ou Twitter par exemple. Voyons comment créer rapidement une fonction de téléchargement.

(suite…)

Programmation orientée objet en JavaScript

Le JavaScript est un des langages les plus utilisés et aussi un des plus populaires du moment. Côté client, côté serveur, il est omniprésent sur le web. Malgré cela, le JS demeure mal compris par un grand nombre de développeurs. Pourtant, à mesure que son usage s’intensifie et qu’il est le cœur d’applications de plus en plus complexes, il convient de bien appréhender son modèle objet. En route pour le royaume des objets !

(suite…)

Commandes essentielles de MongoDB

Lorsque, comme beaucoup, on vient du monde des bases de données relationnelles et de la syntaxe SQL, l’apprentissage et l’usage du noSQL est au début un peu déroutant. Voici donc un condensé des commandes les plus couramment utilisées (et utiles) dans MongoDB.

(suite…)

XHR cross domain avec Node.js

Les requêtes ajax entre domaines, ou XHR cross domain pour les intimes, permettent d’envoyer des requêtes JavaScript depuis une url A vers une url B. C’est par exemple ce que fait le script de Google Analytics. Il envoie des requêtes d’une url A (votre site) vers une url B (les serveurs de Google). De manière générale, cela sert par exemple pour faire des requêtes d’api. Pour d’évidentes raisons de sécurité, le CORS n’est pas activé par défaut. Voyons comment le paramétrer pour NodeJs.

(suite…)

Réaliser un panier 100% JavaScript

Une boutique de e-commerce nécessite la plupart du temps un panier. De nombreuses solutions peuvent répondre à ce besoin. Il est possible de mettre en place un panier côté serveur, d’adjoindre un plugin au framwork ou CMS utilisé pour le site etc. Cependant, nous allons voir comment programmer un panier 100% en JavaScript sans utiliser aucun plugin ni code côté serveur.

(suite…)

Backbone.js : recherche fulltext dans les collections

La plupart du temps, lorsque l’on effectue une recherche sur un site web, on envoie une requête au serveur – laquelle est directement adressée à la base de données – puis le serveur nous renvoie la réponse de cette recherche.

Cependant, avec les applications web, on possède souvent notre jeux de données sur le client (le navigateur), et une bonne partie de la navigation et des actions que l’on peut effectuer sont gérées directement au sein du navigateur en JavaScript. Backbone nous donne justement une structure et des outils pour construire de telles applications. Ainsi, puisque l’on dispose déjà des données dans le navigateur, il est logique d’effectuer notre recherche dans celui-ci plutôt que de le sous-traiter au serveur, avec comme inconvénient les temps de latence que l’on connait. Voyons comment effectuer une recherche directement dans nos collections Backbone.js

(suite…)

Hériter une fonction native jQuery

Pour ceux qui font de la programmation orientée objet A.K.A POO, le terme d’héritage est familier. Il s’agit simplement de prendre une fonction et de l’enrichir de nouvelles possibilités. On dit que la fonction fille hérite de la fonction mère (bien qu’en POO on hérite des classes et non des fonctions). Nous allons donc voir comment ajouter des fonctionnalités aux méthodes ou fonctions du cœur de jQuery.

(suite…)

3 outils HTML5 qui vous feront oublier powerpoint

On a toujours besoin, à un moment ou à un autre, de faire une présentation : un exposé, un brief, une conférence, bref à tous les niveaux et a tous les âges. Pour cela, on pense immédiatement à PowerPoint, les adeptes de la firme à la pomme utiliserons parfois Keynote et certains d’entre vous connaissent peut être Prezi.

Il existe cependant bien d’autres solutions, disponibles gratuitement, en open source et full html5. Alors pourquoi se priver et continuer à payer des licences pour des logiciels qui, au final, brident quelque peu notre créativité ?

(suite…)

Créer et afficher des graphiques à la volée

On dit d’une illustration qu’elle vaut 1000 mots. L’extension GD de php permet de manipuler des images, et avec un peu de pratique, vous pouvez très bien créer de superbes graphiques. Voici un article en anglais, qui vous expliquera en détail comment parvenir à créer des graphiques, en barre, en fromage…

Gardez cependant à l’esprit que GD consomme des ressources côté serveur, et que pour cette raison, il est bloqué sur les offres mutualisées de nombreux hébergeurs. Par ailleurs, javascript et le html5 offrent aujourd’hui la possibilité de créer des graph directement dans la navigateur du client. Ils auront même l’avantage d’être interactifs ! De très bonnes bibliothèques ont d’ailleurs été écrite à cet effet :

  • highcharts, très complet mais payant pour les projets à visée commerciale,
  • morris.js (licence BSD),
  • chartist.js qui se veut hautement configurable, 100% responsive et customizable via css. Smashing magazine a consacré un article à chartist,
  • chart.js est une bibliothèque sous licence MIT qui permet de créer des graphs directement en HTML5 canvas.

À vous de faire votre choix !