Liste des derniers articles

  • ES3, Chap 4. — La chaîne des portées en JavaScript

    Ce billet fait partie de la collection ES3 dans le détail et en constitue le Chapitre 4.

    Connaître une donnée est à la portée du JavaScript, aussi loin qu'elle se trouve !
    Tout comme l'Animus, la résolution des identifiants trouve une valeur quel que soit sa portée dans la chaîne des ancêtres

    Ce chapitre est dédié, encore une fois, à un mécanisme lié aux contextes d'exécution : j'ai nommé la chaîne des portées.


  • ES3, Chap 3. — La valeur de this en JavaScript

    Ce billet fait partie de la collection ES3 dans le détail et en constitue le Chapitre 3.

    Jack Skellington cherche la valeur de `this`
    Jack Skellington cherche la valeur de this

    Dans cet article nous allons discuter d'une propriété supplémentaire liée aux contextes d'exécution : le mot-clé this.


  • ES3, Chap. 2 — L'objet des variables en JavaScript

    Ce billet fait partie de la collection ES3 dans le détail et en constitue le Chapitre 2.

    Les Précogs sont aussi capable de voir à l'avance les variables pour la phase d'exécution !
    Les Précogs sont aussi capable de voir à l'avance les variables pour la phase d'exécution !

    Nous déclarons des variables et des fonctions avec lesquels tournent nos programmes. Mais comment, et quand l'interpréteur trouve ces données ? Que se passe t-il quand une référence à un objet est demandée ?


  • ES3, Chap. 1 — Les contextes d'exécution en JavaScript

    Ce billet fait partie de la collection ES3 dans le détail et en constitue le Chapitre 1.

    Comme dans Inception les contextes s'empilent les uns après les autres
    Comme dans Inception les contextes s'empilent les uns après les autres

    Dans ce billet nous évoquerons les contextes d'exécution en JavaScript ainsi que leurs différentes déclinaisons.


  • Apprendre et comprendre JavaScript version ES6

    ES7 est déjà dans nos chaumières et, en plus d'être à peu près au point avec ES5, vous n'avez toujours pas digéré ES6 ! Il va être temps de nous y pencher de plus près sur ce blog pour aborder la suite de l'aventure JavaScript sereinement. Cet article à pour but, de vous en apprendre plus sur la version ES5 tout en la comparant à des équivalences ES6 : cela nous permettra de comprendre en quoi ses améliorations peuvent nous aider au quotidien. Nous allons éplucher les fonctionnalités dans un ordre logique d'apprentissage et explorer les mécaniques sous-jacentes. Ça risque d'être long alors, de la même manière que cet article va être publié en plusieurs mise à jour, n'hésitez pas à le lire en plusieurs fois.


  • Est-il si null cet undefined ?

    Si vous faites du JavaScript régulièrement —et il est de plus en plus difficile d'y couper si vous êtes développeur web—, vous vous êtes peut-être déjà posé cette question : « Quelle est la différence entre la valeur null et la valeur undefined ? ». Question qu'on ne se pose pas quand on vient d'un autre langage. Null vs Undefined

    Si nous résumons ensemble nous pouvons tomber d'accord sur le fait que :

    • Null et Undefined sont tous les deux des types ne possédant qu'une seule valeur ; les constantes respectives null et undefined.
    • Ils s'utilisent tous les deux pour indiquer « l'absence ».
    • Ils sont tous les deux évalués à false dans un contexte booléen (ex. : dans une condition if a, avec l'opérateur binaire d'égalité a == b, avec l'opérateur ternaire conditionnel a ? b : c).

    En gros, ils servent donc à la même chose non ? Cette réponse ne me convient pas car, même s'il est vrai qu'à chaque première vu les comportements JavaScript semblent « loufoque », l'expérience m'a toujours prouvé que « c'était moi » qui n'avait pas compris correctement le JavaScript. Si les deux types existes, il y a forcément une raison. Voici ce qui en est concrètement dit :

    La valeur undefined appartient au type primitif Undefined et est utilisée quand aucune valeur typée n'a été assignée à une variable.

    La valeur null appartient au type primitif Null et représente l'absence de valeur, la non-existence d'une référence dans une variable.

    La distinction est plus clair ainsi non ? Pas vraiment... On va retrousser nos manches et regarder un peu ce qu'on peut éclaircir. Si vous n'avez pas le temps de suivre l'explication exhaustive et intéressante qui va suivre je vous laisse filer à la conclusion qui répond à cette question. Si par contre vous êtes curieux et/ou avez le temps de comprendre les différences, c'est juste en dessous !


  • Vue + NodeAtlas : de l'art du SSR ou Rendu Côte Serveur avec JavaScript

    Nous allons voir dans cet article comment faire du rendu côté serveur ou SSR (Server-Side Render) avec le framework JavaScript client MVVM (Modèle Vue Vue-Modèle) Vue couplé au framework JavaScript serveur MVC(2) (Model View Controller) NodeAtlas !

    Alors ce titre parle peut-être aux habitués des architectures clientes MVVM qui ont des difficultés avec le référencement et semble peut-être barbare pour d'autres. Lançons nous dans une petite explication histoire de rendre cet article intéressant également pour les néophytes : comprenons le problème et trouvons la solution à travers cette page.

    Quel est le problème traité dans cet article ?

    Le problème avec les frameworks MVVM client est qu'ils construisent le site à partir de rien. Fouillez la source du code de la réponse HTTP de la page courante, celle lue par les indexeurs de contenus ou les navigateurs sans JavaScript ; il n'y a rien. Aussi, si je créé une liste d'actions futures pour la roadmap de ma super App, et que je souhaite pouvoir manipuler aisément (ajout et retrait) ses éléments grâce à un coupleur de données vue-modèle ; le revers de la médaille sera que les informations utilisées pour cette construction proviendront de fichier JavaScript ou morceau de HTML qui ne veulent rien dire pour les indexeurs où même les validateurs de page. Vos sites sont donc souvent « SEO merdique » et « W3C bancale ».

    Quel solution ?

    Le SSR ou Rendu Côté Serveur. Voyons ça au travers de cette page exemple avec Vue et NodeAtlas !


  • Vue.js vs React vs Angular vs les autres MVVM

    Vue.js est un framework JavaScript client progressif permettant de créer, maintenir et évoluer des interfaces utilisateurs en liant les données utilisées entre la Vue et le Model. C'est une alternative sérieuse à React, Angular et les autres frameworks MVVM (Modèle Vue VueModèle).

    Vue.js

    J'ai eut l'occasion d'essayer Vue.js dans sa version 1 et son extrême simplicité et flexibilité m'a séduite. À l’instar de NodeAtlas, sa puissance vient de ses fonctionnalités intégrables de manière évolutives et versatiles ; on peut tout aussi bien utiliser Vue simplement sur le formulaire d'une page ou à plus grande échelle avec des composants et du routage à travers l'architecture d'un site complet.

    Cependant, là où en version 1, Vue paraissait une alternative séduisante à AngularJS (aka Angular 1) ou Knockout, dans sa version 2 il devient de plus une alternative sérieuse à Angular (aka Angular 2), React et les autres frameworks MVVM tant sur le plan des fonctionnalités que des performances.

    Pour faire simple —si vous débarquez dans le monde des framework JavaScript client MVVM et que vous ne savez pas quoi choisir— vous devriez choisir Vue ! Quoi qu'il arrive, il sera un choix pertinent pour les cas d'utilisation que vous en ferrez.

    Nous allons dans cet article :

    1. rapidement exposé pourquoi vous devriez utiliser Vue en lieu et place de Angular ou React dès maintenant et
    2. traduire des explications approfondies à propos des différences entre Vue et les autres frameworks.

  • Éviter le détournement de clic par iFrame de votre site

    J'en vois déjà venir d'assez loin : « les iFrames c'est old school ». Ça me rappel l'époque ou les Frames « c'était old school ». Pour les gars du fond, une iFrame permet d'insérer dans la page courante d'un site le contenu complet d'une autre page. Et si vous ne vous y intéressez plus car vous n'en voyez pas l'intérêt, sachez que d'autres peuvent le voir.

    Effectivement, vous n'êtes pas à l'abri de retrouver une page de votre site dans l'iFrame d'un autre site. À partir de là, pas mal de scénarios sont envisageables ; du moins dérangeant comme la solicitiation de votre serveur à chaque fois que la page du site embarquant votre page est réclamée aux plus génants comme le détournement de clic (clickjacking).


  • Comprendre et utiliser Git avec vos projets

    Si vous découvrez le système de gestion de version Git et que vous l'utilisez seul, occasionnellement, etc. il existe peut être encore beaucoup de zone d'ombre dans son utilisation et dans la totalité des possibilités que le système offre.

    C'est également mon cas et tout le long de mon amélioration continue à l'utilisation de Git, je vais maintenir cet « aide-mémoire ». Il résumera le fonctionnement de Git au sein d'une branche dans un premier temps, et le fonctionnement de Git à travers diverses branches dans un second temps.

    Si vous ne connaissez vraiment pas grand chose à GIT n'ésitez pas à lire : Démarrage rapide de GIT et particulièrement :


Plus d'articles par date ou par catégorie