Journal Non, l'inférence de types n'est pas du typage faible. Oui, elle rend les programmes plus lisibles

Posté par .
Tags : aucun
21
21
nov.
2018

En lisant le journal sur la sortie de JDK 10 qui mentionnait notamment l'ajout d'une inférence de type sommaire, j'ai vu qu'il y avait une mauvaise compréhension et un fort rejet de ce concept.

Ça m'a bien surpris car je trouve au contraire l'inférence de types géniale : non seulement elle permet de bénéficier d'un langage fortement typé sans taper des types à rallonge partout, mais aussi elle rend la lecture des programmes bien plus facile (et je ne parle (...)

Journal Vérifiez vos types avec TypeScript et io-ts

Posté par .
Tags : aucun
16
11
sept.
2018

TL,DR : avec TypeScript et io-ts, on peut passer d'un programme JavaScript court et correct, mais fragile et difficile à maintenir, à un programme facile à refactorer et robuste contre les modifications externes inattendues, rien qu'en ajoutant une définition de type et un if.

TL,DR bis : vous pouvez regarder le premier et le dernier exemple de code du journal pour vous faire une idée.

JavaScript c'est quoi ?

JavaScript est un langage au typage dynamique et faible.

Pour décrire (...)

Journal UPSERT dans PostgreSQL ça déchire

Posté par .
Tags : aucun
29
7
sept.
2018

UPSERT, c'est quoi ?

Comme son nom l'indique, UPSERT est un mélange de la mise à jour (UPDATE) et de l'insertion (INSERT). Ça consiste à insérer un enregistrement, et, s'il existe, à le mettre à jour, en une seule commande.

L'intérêt "de base" de cette commande est lié au parallélisme, mais on verra juste après qu'elle est aussi très pratique.

Le parallélisme
Avant UPSERT, il fallait utiliser plusieurs commandes, par exemple :

  1. vérifier si les enregistrements existent
  2. insérer les enregistrements (...)