Reflection is often viewed as a Smell in Java, C#, etc. Even if Golang have interface{} in too many places, you are using a static typed language, how did you come not to know which type do you use? Some usages are perfectly legal, but it’s quite regularly a smell, especially when if multiply or […]
Catégorie : Programmation
Tout ce qui touche à la programmation.
Si vous êtes un adepte des slices en Go voici une petite subtilité sur laquelle il faut faire attention. Code exemple Analyser dans votre tête le code suivant. On crée un slice puis un slice de slice et on modifie et ajoute des valeurs.Concentrez-vous sur la dernière instruction. Qu’affiche s1 et s2 ? Voici la […]
Les enums en Go, de zéro à héros
Présent dans beaucoup de langages, les énumérations, ou enums en anglais, ne sont pourtant pas un type de base du langage Go. Les concepteurs avares en mot clés (grand bien leur fasse) ont pourtant laisser une piste et les bonnes pratiques ont émergés. Faisons ensemble le tour du propriétaire avec un exemple d’enum des jours […]
Si vous utilisez autre chose que de l’azerty, il est possible que Visual Studio Code ne prenne pas en compte les layouts supplémentaires. Par exemple, en bépo, le Ctrl+C devient un Ctrl+H… Pratique… Pour remédier à cela il va falloir changer la clé de configuration keyboard.dispatch et la passer de code à keyCode.Par le menu […]
Une application PWA c’est génial mais on ne maitrise pas toujours bien quand elle se met à jour, si elle a détecté une mise à jour, etc. Aujourd’hui je vais vous montrer comment créer un service d’update qui vous donnera le squelette de base pour des gestion plus fine. Angular a tout ce qu’il faut […]
Je reviens parfois à la documentation de base Savoir quand utiliser les mots clés override et new quand j’ai un doute car cette subtilité du langage peut être source d’erreur très compliquée à débusquer. Pour résumé avec deux phrases (prenez votre souffle) : override est obligatoirement utilisé sur une méthode abstract et doit être utilisé […]
Par exemple, sur une Linux Mint 19.3 Tricia basée sur Ubuntu 18.04.3 l’environnement de base est lié à Python 2. Cela pose problème quand on veut installer et utiliser virtualenv avec Python 3. Pour commencer, installez les setuptools spécifiques à Python 3 : Vous pourrez alors utiliser pip pour installer virtualenvwrapper pour Python 3 : […]
Si vous recevez des avertissements de variable out qui peuvent être inline, vous êtes en C# 7 ou plus. Depuis cette version, il n’est plus nécessaire de déclarer les variables out avant les appels de méthodes. Vous pouvez les déclarer inline, c’est à dire à la volée proche de la déclaration out. Elle peut être […]
Si vous faites de la programmation avec des threads, il vous est déjà arrivé de vouloir attacher un débogueur à un process déjà lancé. C’est parfois trop long à faire à la main, le traitement est déjà fini, etc. Heureusement la CLR sait interpréter certaines fonctions bien pratique ! Vous pouvez appeler la méthode magique […]