git revert
pour annuler proprement le dernier commit 4
On ne peut pas à proprement parler supprimer une commit de Git. Mais on peut l’inverser proprement.
git revert
pour annuler proprement le dernier commit 4On ne peut pas à proprement parler supprimer une commit de Git. Mais on peut l’inverser proprement.
Dans une chasse au trésor sérieuse, si on a 5 épreuves, on prend l’indice suivant, on le divise en 5, et on s’assure que réussi 3 épreuves suffisent à donner assez d’informations pour reconstituer l’indice suivant. En informatique il existe un moyen de faire cela avec le partage de clé secrète de Shamir
Il y a plusieurs manière de passer une variable en informatique: par valeur ou par référence. Et dans les langages bas niveau comme le C, on se pose la question: “passe-t-on la valeur ? un pointer ? un pointer vers un pointer ?”
En Python ce n’est pas la question puisque tout se passe référence. Tous les objets. Dans tous les cas.
La question est donc plutôt: “ça veut dire quoi passer par référence ?”
Mon maître-ninja python, entre deux riffs sur sa contrebasse électrique, m’avait un jour dit : “il ne faut pas écrire if a == None:, mais if a is None:”. Il m’avait ensuite donné une justification pertinente, que je n’ai pas retenue, car j’étais en train de penser à des nichons. Puis il avait conclu par “on n’est pas égal au vide. On EST le vide.”
Rien que pour vous, ainsi que pour m’auto-déculpabiliser de penser souvent à des nichons, j’ai parcouru l’internet entier à dos de souris et j’ai retrouvé la justification. Mais avant de vous la livrer, quelques explications préliminaires.
Et si on pouvait rendre les tests plus simples à écrire et à lire, aussi simple qu’un assert
, mais un résultat plus clair que unittest
en sortie ?
Par défaut Angular évalue les expressions qui sont marquées par {{}}
, exactement comme le langage de template Django. Cela amène à un conflit.
Comme nous l’avons vu avec les vues ou les collections, Python 2.7 vient avec pas mal de bonus issus directement de la branche 3. En voici quelques autres. Tout ceci n’est bien sûr ni nouveau ni exhaustif, mais je m’aperçois que peu de personnes le savent.
Dans certains des articles, on utilise ce terme. Et il est très répandu également sur le Web, sous cette forme ou dans sa version angloclassos: data structure.
Python 3 introduit de nombreux changements qui ont été backportés dans Python 2.7. Parmis eux, les vues, qui sont un concept assez mal expliqué dans la documentation standard.
En Django les sessions utilisent des cookies, et il n’y a pas de fallback possible sur un SESSION_ID passé dans l’URL comme le fait par exemple PHP (il y a des apps pour ça, mais la pratique est considérée peu sécurisée de toute façon).
Or, comme HTTP est stateless, les cookies sont échangés en permanence, on les reçoit par la requête, et on les envoit avec les réponses. Ajoutez à cela qu’un client peut choisir de désactiver le support de cookie, et vous avez là un merveilleux casse-tête.