Les bases de Java : les tableaux

Présentation des tableaux Un tableau (array) est une structure de données stockant plusieurs éléments du même type. En mémoire, il occupe un espace contigu, formant une séquence linéaire ordonnée. Définition d'un tableau Deux syntaxes sont disponibles pour déclarer un tableau en Java : // Syntaxe recommandée type[] nomVariable; // Alternative ...

Publié le 23 juin à 19h27

La gestion mémoire dans la programmation C et C++

Introduction à la manipulation mémoire en C et C++ Dans le développement logiciel avec C et C++, la compréhension des pointeurs et de la mémoire est fondamentale. Ces langages de bas niveau permettent une manipulation directe de la mémoire, offrant une grande flexibilité mais aussi un risque accru de bugs. Une maîtrise claire des concepts mémoi ...

Publié le 21 juin à 03h09

Fondamentaux de Java : Les Méthodes

Définition et Invocation des Méthodes Lors de la création d'une méthode, deux aspects clés doivent être définis : si la méthode renvoie une valeur (influencant l'uitlisation du mot-clé void) et les types des paramètres. // Exemples de définition et d'appel de méthodes 1. Méthode avec paramètres et valeur de retour // Définition : public sta ...

Publié le 20 juin à 16h15

Implémentation et Analyse de la Liste Doublement Chaînée Circulaire en C

La liste doublement chaînée (doubly linked list) est une structure de données linéaire où chaque élément, appelé nœud, contient des références vers son successeur et son prédécesseur. Contrairement à une liste simple, la variante la plus robuste et la plus utilisée en pratique est la liste doublement chaînée circulaire avec nœud sentinelle. 1. ...

Publié le 20 juin à 00h14

Variables, portée et mémoire en JavaScript

En JavaScript, les variables peuvent contenir des valeurs primitives ou des valeurs par référence. Les valeurs primitives incluent Undefined, Null, Number, String, Boolean et Symbol, et sont accédées par valeur, signifiant que l'opération porte directement sur la valeur stockée. Les valeurs par référence sont des objets stockés en mémoire, et l ...

Publié le 18 juin à 02h26

Analyse compilationnelle du modèle objet C++

Pour observer concrètement la disposition mémoire, nous utilisons l'option de compilation GCC -fdump-lang-class. Considérons le code suivant : class ClasseBase { public: ClasseBase() {} virtual ~ClasseBase() {} private: int mem; }; En compilant avec la commande : g++ -O0 -std=c++11 -fdump-lang-class test.cpp Un fichier décrivant l ...

Publié le 13 juin à 21h40

Analyse de l'écriture massive sur disque et gestion mémoire sous Linux

Contexte Dans un environnement Linux, lors d'une opération d'écriture massive de fichiers sur disque avec une configuraton RAID5, une augmentation progressive de l'utilisation mémoire a été observée. Les indicateurs buffer/cache croissaient de manière continue, ce qui a déclenché une investigation technique détaillée pour identifier la cause so ...

Publié le 12 juin à 19h43

Gestion des variables en langage C

Les variables constituent l'unité fondamentale de stockage de données en C. Elles possèdent un identifiant et un type qui déterminent comment l'information est en mémoire et quelles opérations peuvent lui être appliquées. Maîtriser leur déclaration, leur initialisation et leur portée est essentiel pour programmer efficacement en C. Définition e ...

Publié le 4 juin à 19h25

Exploration des segments mémoire dans le langage C

L'organisation de la mémoire est un concept fondamental pour comprendre l'exécution des programmes C et C++. Cet article détaille les différents segments qui composent l'espace mémoire d'un processus. Architecture mémoire d'un programme Adresses hautes ┌─────────────────┐ │ Espace Noyau │ ← Utilisé par le système d'exploitation ├──────────── ...

Publié le 30 mai à 20h25