Étiquette

code

Illustration représentant un fil d’Ariane composé de trois icônes : données à la loupe (feature-search), un réseau de neurones (neural network) et un graphique (chart), reliées par un dégradé bleu-violet sur un fond gris, avec une coche indiquant l’étape 1 et 2 comme validée.

Catégorisation IA des exercices de musculation : Feature extraction & Clustering K-Means (2/3)

Cet article explique, pas à pas, comment effectuer la feature extraction des exercices de musculation et appliquer un clustering K-Means pour les catégoriser. Vous trouverez une méthodologie reproductible pour transformer vos données en vecteurs numériques, les normaliser et choisir le nombre optimal de clusters à l’aide de méthodes de scoring. L’objectif est d’obtenir une catégorisation […]

Image illustrant la transformation d’un code legacy non testable en code refactoré et testable : à gauche, des emojis négatifs (colère, explosion, loterie) symbolisent les difficultés du code legacy ; à droite, des emojis positifs (fête, réussite, détente) représentent la réussite après refactoring, sur fond d’IDE flouté.

Tester du code avec appels statiques non mockables

Écrire du code de qualité est essentiel pour garantir la stabilité, la testabilité et la maintenabilité d’une application. Mais dans un projet legacy, il n’est pas rare de tomber sur du code sans tests unitaires, souvent couplé à des appels statiques impossibles à mocker. Ce type de dépendance rend l’écriture de nouveaux tests automatisés difficile […]

Photo d'un développeur en train de coder face à trois écrans affichant un IDE, des commandes dans un terminal et un émulateur de téléphone.

Le codage d’applications est-il fait pour moi ?

Vous vous demandez si le codage est fait pour vous ? À l’ère du numérique, apprendre à programmer ouvre de nombreuses portes, que ce soit dans le développement Web, mobile ou encore les jeux vidéo. L’objectif de cet article est de vous aider à découvrir si la programmation vous correspond en détaillant les qualités essentielles, les […]

Erreur SEGFAULT en C illustrée par un écran d'ordinateur brisé, symbolisant les risques de dépassement de tampon et de mauvaise gestion mémoire

Bonnes pratiques en C : manipuler les strings sans risque

En février 2024, la Maison Blanche a publié un rapport sur la sécurité des langages C et C++. Ce rapport, rédigé par l’Office of the National Cyber Director (ONCD), souligne que la gestion de la mémoire dans les logiciels écrits en C et C++ représente un risque majeur pour la sécurité du cyberespace. Ayant travaillé […]

Capture d'écran d'un IDE présentant un extrait de code utilisant ng-template avec la mise en avant du logo Angular avec une tinte verte représentant les tests unitaires

Angular : Tester ngTemplateOutlet et createEmbeddedView

Dans mon dernier article, j’ai expliqué comment utiliser ngTemplateOutlet et createEmbeddedView pour créer des vues dynamiques avec ng-template dans une application Angular. Bien que rarement utilisées, ces fonctionnalités sont extrêmement utiles pour développer des composants réutilisables et flexibles. Cependant, tester ces vues dynamiques est un réel défi car elles dépendent d’un composant parent. Dans cet […]

Capture d'écran d'un IDE présentant un extrait de code utilisant ng-template avec la mise en avant du logo Angular

Créer des vues dynamiquement dans Angular avec ng-template

Angular est un framework puissant pour créer des applications Web dynamiques. Il simplifie le développement des interfaces utilisateur grâce à ses composants, ses directives et ses templates. Lorsque la structure des vues est connue à l’avance, elles peuvent être définies dans des fichiers HTML statiques et incluses dans les composants. Cependant, il arrive parfois que […]

Illustration stylisée représentant le logo Angular à gauche, le logo Jasmine à droite, et un composant "Mock" au centre, reliés entre eux sur un fond clair.

Guide Angular testing : le mocking de service avec Jasmine

Dans le cadre des tests unitaires, le mocking est une technique essentielle pour simuler le comportement des unités de code et tester efficacement notre projet. Dans le contexte d’Angular, le mocking de services est particulièrement utile pour tester efficacement nos composants Angular en isolant les dépendances et en simulant leur comportement.Bien que de nombreux développeurs […]

Illustration représentant une directive Angular agissant sur un textarea pour le redimensionner automatiquement

Directives Angular : simplifiez votre code

Dans le développement d’applications Web modernes, Angular s’est imposé comme l’un des frameworks incontournables grâce à sa robustesse et sa flexibilité. Bien que les développeurs utilisent souvent l’ensemble des fonctionnalités d’Angular, les directives restent souvent méconnues et sous-estimées. Pourtant, elles permettent de simplifier le code et de rendre les applications plus modulaires et plus faciles […]

Illustration montrant un fichier texte mal encodé avec des caractères étranges et des � à gauche (emoji horrifié) et un fichier correctement encodé avec du texte lisible à droite (emoji lunettes de soleil), symbolisant la correction des problèmes d'encodage.

Guide complet sur l’encodage : comment corriger les caractères bizarres dans les fichiers texte ?

Un de nos clients a signalé un problème avec un fichier CSV exporté par notre application. Depuis que l’application accepte les caractères spéciaux, lorsqu’il ouvre ce fichier texte dans Excel, il voit des caractères bizarres à la place des accents. Ce type de problème est courant et est généralement dû à un mauvais encodage des […]

Affiche du Winter challenge 2024 par CodinGame

Développement itératif : Winter Challenge 2024 par CodinGame

En cette fin d’année 2024, CodinGame organise un nouveau challenge pour les développeurs du monde entier. Cet événement nous met en compétition pour coder le meilleur comportement d’expansion d’un organisme vivant. En tentant de résoudre ce problème, j’ai remarqué que la stratégie d’onboarding des participants s’inspire fortement des principes du développement itératif. Dans cet article, […]