Aller jusqu’au bout dans l’organisation du code et surtout séparer le deux parties Lecture et Ecriture dans une application ou même un micro service. Dans l’architecture micro-service on rencontre et on utilise plusieurs concepts et patrons de conceptions,...
Design & Code
Les collaborateurs d’Invivoo voyagent à travers différents domaines d’expertises à la conquête de nouvelles connaissances et expériences à partager.
Les nouveautés de Java 19
Java 19 est disponible depuis le 20 septembre 2022. C’est une version non LTS (Long-term support). Cette release contient une prévisualisation du projet LOOM tant attendu, qui introduit un nouveau modèle de concurrence légère à java. Vous pouvez télécharger OpenJDK...
Le langage C++ : mort ?
Samuel Clemens, dit « Mark Twain », écrivit en 1897 à un journaliste qui l’avait contacté pour s’enquérir de son éventuel décès : « La nouvelle de ma mort était exagérée ». Il en va de même du langage C++. Mais si ce langage de programmation est toujours bien présent,...
L’art du « clean code » en environnement Java
I. Introduction L’ouvrage “Clean Code“ écrit par Robert C. Martin, aussi connu comme « Uncle Bob » (Oncle Bob) est une référence incontournable sur les bonnes pratiques du « clean code ». Nous allons dans cet article résumer certaines de ces bonnes pratiques...
PYTHON – Le module “Threading”
Après la présentation des concepts, nous allons nous attaquer au module « threading » de Python… Le module permet d’utiliser le multithreading préemptif de manière assez simple. Nous nous concentrerons sur l’API disponible depuis la version 3.10 de Python. GIL On ne...
Moteur – Design Patterns
Afin de réaliser différentes stratégies pour la spéculation ou la couverture de risque, les gestionnaires de fonds cherchent de divers instruments financiers basiques pour construire les produits dérivés composés possédant les caractéristiques favorables pour un...
Programmation Réactive
De nos jours, les applications modernes ont de hautes exigences en matière de disponibilité et de demandes utilisateurs. Sauf qu'avec les paradigmes “classiques” comme la programmation impérative, le code prend très rapidement de l’ampleur. De ce fait, les...
Concepts en mémoire partagée
La programmation en mémoire partagée est un des deux grands types de programmation parallèle. Tous les fils d’exécution partagent la même mémoire : c’est à la fois un atout et un problème. Un atout car cela évite de dupliquer des données car elles peuvent être...
Fabrique – Abstraite
Parmi les titres financiers on a de nombreux produits dérivés qui sont très difficiles à construire tout d’un coup. Car un contrat dérivé pourrait comprendre plusieurs composants fondamentaux dont chacun est crée d’une manière indépendante et complexe. Par exemple, il...
Choisir son langage de programmation
Un langage de programmation est un outil permettant de transformer un concept en un programme qui s’exécutera sur un ordinateur. Il existe beaucoup de langages de programmation et de nouveaux sont créés régulièrement. Comment choisir celui qui correspond à son besoin...
Devoxx Spring Security
Du 20 au 22 avril a eu lieu la conférence Devoxx pour développeurs, organisée par Quantixx au Palais des Congrès, à Paris. Ce fut l’occasion d’assister à des présentations pour en apprendre plus sur des domaines différents.Avec un large choix de présentations et de...
Fabrique – Design Patterns
De nombreuses applications financières doivent persister des données après leurs traitements algorithmiques. Par exemple, la gestion des portefeuilles demande d’enregistrer localement les résultats des ordres venant de différentes sources externes après le nettoyage...
Testcontainers : Bibliothèque Java
Lors de la Devoxx 2022 se déroulant au Palais des Congrès de Paris, Julien Durillon développeur, OPS et co-fondateur de Clever Cloud, nous a exposé son retour d’expérience de Testcontainers, bibliothèque Java permettant de disposer d’un conteneur Docker pour les...
Projet LOOM : Thread Virtuel
Lors de la 10ème édition du Devoxx Paris, organisée au Palais des Congrès le 20 avril 2022, José Paumard et Remi Forax ont présenté une conférence sur le projet LOOM. Voici quelques liens pour pouvoir les suivre : José Paumard : membre du Java Platform Group chez...
Représentation graphique d’un algorithme parallèle : logigramme, algorigramme
Avant de lire cet article sur la représentation graphique d'un algorithme, autrement appelé, logigramme ou algorigramme, nous vous conseillons de consulter "Programmation parallèle", actuellement disponible sur notre blog pour en savoir plus sur l'exécution en...
Programmation Dynamique
Python est un langage fortement dynamique... Mais, dans les faits, qu’est-ce que cela signifie ? Qu’est-ce que cela peut nous apporter ? Grâce à ce dynamisme, Python permet de résoudre des problèmes de manière élégante et compacte là où les langages...
Multithreading en Java : introduction
Vous souhaitez améliorer la performance et la responsivité de vos applications et tirer profit au maximum des processeurs de vos machines ? Ces objectifs pourraient être atteints grâce au multithreading qui permet d’exécuter plusieurs tâches en parallèle. Cet article...
Programmation Parallèle
Soit pour des problèmes de puissance pour du calcul intensif soit pour permettre des interactions utilisateurs, clavier et souris, en même temps que l’exécution de programmes, l’exécution en parallèle est un besoin nécessaire dans le monde d’aujourd’hui… Cela est...
Gestion des logs Python
Introduction : logs Python La journalisation des évènements appelée Logging en anglais est une pratique très utilisée en développement informatique quelque soit le langage de programmation. Elle permet d’avoir un historique des évènements normaux et anormaux survenus...
Jeux Python – Calculatrice & Algorithme
Les premiers programmes que j’ai écrit lorsque j’avais 13 ans étaient des programmes de jeux. Et tous les élèves veulent avoir des jeux (téléphone, tablette ou console portable). Aujourd'hui apprenez à créer des jeux Python sur vos calculatrices programmables ! Si...
Méthode Newton – Zéros de fonction (Python)
Les calculatrices programmables en Python sont désormais bien représentées en France. Nous avons déjà étudié plusieurs volets de la programmation en calculatrice Python sur notre blog. Le Python est devenu le langage principal pour l’enseignement de l’algorithmie au...
K3S “Kubernetes enfin ultra simple et léger avec k3s”
Introduction Kubernetes (k8s), plateforme d’orchestration de conteneurs, s’est ancrée aujourd’hui dans le paysage du cloud. En effet, fort de sa communauté, k8s est devenu l’option majeure pour la mise en place d’un cluster. Toutefois, l’installation et le paramétrage...
Mikado Method – Découpez pour mieux « Refactorer »
Introduction : pourquoi refactorer ? Vous connaissez tous cette partie du code que personne ne souhaite maintenir dans votre équipe ? Le code fonctionne et personne ne souhaite y toucher, toute l'équipe le sait, il n'existe pas de façon simple de modifier ce code, on...
Reactor – N’ayez plus peur de la programmation non bloquante avec Reactor !
Introduction à Reactor Parlons de Reactor : avec l'amélioration continue des techniques et des besoins, la programmation réactive est devenue la référence pour les programmes demandant disponibilité, résilience, souplesse et répondant à des événements asynchrones....
Algorithme Polynome – Python
Les calculatrices programmables en Python sont désormais bien représentées en France. Le Python est devenu le langage principal pour l’enseignement de l’algorithmie au lycée. Vous pouvez d'ailleurs découvrir d'autres articles de programmation Python sur calculatrice...