Retour aux projets
CCSVGitGithub/GitlabCodeBlock

SAÉ 1.01 - Application de gestion de client

Réalisée en binôme dans le cadre de la SAÉ 1.01, cette application en langage C se concentre sur la gestion d'une base de données clients. Le cœur du programme repose sur le traitement, l'analyse et la manipulation directe d'informations stockées dans des fichiers CSV. Ce projet a permis de mettre en pratique des concepts algorithmiques fondamentaux, notamment pour le tri et la recherche de données, tout en adoptant une architecture modulaire pour garantir un code clair et maintenable.

Début28 novembre 2024
Fin12 janvier 2025
RôleDéveloppeur
Thumbnail

Fonctionnalités Principales

Ajout de client/personnel : Création de nouvelles entrées dans la base de données.
Modification : Mise à jour des informations d'un profil existant.
Suppression : Retrait définitif d'un dossier du système.
Affichage global : Consultation de la liste complète des données enregistrées.
Filtre et recherche : Système de tri et de localisation précise d'un client selon des critères spécifiques.
Tri des données : Organisation de l'affichage pour une meilleure lisibilité (par nom, ID, etc.).
Identification des dossiers incomplets : Algorithme détectant les fiches où des données sont manquantes dans le fichier source.
Sauvegarde automatique : Enregistrement immédiat des modifications apportées durant la session.
Gestion CSV : Lecture et écriture structurées pour garantir que les données ne soient pas perdues à la fermeture du programme.

Stack Technique

Back-end
C
Base de données
CSV
Autres
GitGithub/Gitlab
Environnement
CodeBlock
Défis

L'absence d'outils natifs en langage C pour trier et filtrer dynamiquement des structures de données complexes selon plusieurs critères hétérogènes.

Solutions

Développement d'un algorithme de tri par fusion (Merge Sort) récursif sur mesure, centralisant toutes les règles de comparaison au sein d'une unique fonction performante en O(N * log(N))

Compétences Universitaires Appliquées

CE1.01

Réaliser en respectant les besoins décrits par le client.

CE1.03

Réaliser en appliquant les principes algorithmiques.

CE1.04

Réaliser en veillant à la qualité du code et à sa documentation.