Skip to content

Latest commit

 

History

History
141 lines (114 loc) · 5.06 KB

File metadata and controls

141 lines (114 loc) · 5.06 KB

MiniSheet - Livre Technique Complet

Ce livre constitue une documentation exhaustive de l'application MiniSheet, un tableur moderne développé en Rust. Il couvre tous les aspects techniques, de l'architecture aux détails d'implémentation.

Structure du livre

Organisation des fichiers

livre/
├── README.md                    # Ce fichier
├── TABLE_DES_MATIERES.md       # Table des matières complète
├── chapitre01/                 # Introduction à MiniSheet
│   ├── 1.1_presentation_generale.md
│   ├── 1.2_historique_motivations.md
│   ├── 1.3_technologies_utilisees.md
│   ├── 1.4_fonctionnalites_principales.md
│   └── 1.5_installation_premiers_pas.md
├── chapitre02/                 # Architecture et conception
│   ├── 2.1_vue_ensemble_architecture.md
│   ├── 2.2_structure_modules.md
│   ├── 2.3_gestion_donnees.md
│   ├── 2.4_systeme_selection.md
│   ├── 2.5_gestion_themes_interface.md
│   └── 2.6_patterns_conception.md
├── chapitre03/                 # Fonctionnalités de base
│   ├── 3.1_gestion_grille_cellules.md
│   ├── 3.2_navigation_feuille.md
│   ├── 3.3_edition_cellules.md
│   ├── 3.4_sauvegarde_chargement.md
│   ├── 3.5_raccourcis_clavier.md
│   └── 3.6_systeme_annulation.md
├── chapitre04/                 # Formules et fonctions
│   ├── 4.1_introduction_formules.md
│   ├── 4.2_parseur_syntaxique.md
│   ├── 4.3_references_cellules.md
│   ├── 4.4_evaluation_expressions.md
│   └── 4.5_dependances_recalcul.md
├── chapitre05/                 # Interface utilisateur
│   ├── 5.1_framework_egui.md
│   └── 5.2_conception_interface.md
├── chapitre06/                 # Algorithmes et optimisation
│   └── 6.1_algorithmes_calcul.md
├── chapitre07/                 # Fonctionnalités avancées
│   └── 7.1_manipulation_donnees.md
├── chapitre08/                 # Perspectives et développement
│   ├── 8.1_limites_actuelles.md
│   └── 8.2_ameliorations_possibles.md
└── annexes/                    # Annexes (à développer)

Contenu de chaque chapitre

Chapitre 1 : Introduction à MiniSheet

  • Présentation générale et fonctionnalités
  • Historique et motivations du projet
  • Technologies utilisées (Rust, egui/eframe)
  • Installation et premiers pas

Chapitre 2 : Architecture et conception

  • Vue d'ensemble de l'architecture
  • Structure des modules principaux
  • Gestion des données et types
  • Système de sélection
  • Gestion des thèmes
  • Patterns de conception utilisés

Chapitre 3 : Fonctionnalités de base

  • Gestion de la grille de cellules
  • Navigation dans la feuille
  • Édition des cellules
  • Système de sauvegarde/chargement
  • Raccourcis clavier
  • Système d'annulation/rétablissement

Chapitre 4 : Formules et fonctions

  • Introduction aux formules
  • Analyseur syntaxique (Parser)
  • Références de cellules (relatives, absolues, mixtes)
  • Évaluation des expressions
  • Gestion des dépendances et recalcul automatique

Chapitre 5 : Interface utilisateur

  • Framework egui/eframe
  • Conception de l'interface principale

Chapitre 6 : Algorithmes et optimisation

  • Algorithmes de calcul des formules
  • Optimisations de performance

Chapitre 7 : Fonctionnalités avancées

  • Manipulation de données
  • Remplissage automatique
  • Tri et recherche

Chapitre 8 : Perspectives et développement

  • Limites actuelles
  • Améliorations possibles
  • Vision d'avenir

Comment utiliser ce livre

Pour les développeurs

  1. Comprendre l'architecture : Commencer par le chapitre 2
  2. Explorer le code : Se référer aux sections spécifiques selon les besoins
  3. Contribuer : Utiliser comme guide pour les modifications

Pour les utilisateurs avancés

  1. Découvrir les fonctionnalités : Chapitres 1, 3 et 7
  2. Maîtriser les formules : Chapitre 4 complet
  3. Optimiser l'usage : Chapitre 6

Pour les éducateurs

  1. Enseigner Rust : Utiliser comme exemple concret
  2. Algorithmique : Chapitres 4 et 6 pour les concepts
  3. Interface utilisateur : Chapitre 5

Code source et exemples

Ce livre contient de nombreux exemples de code Rust directement extraits ou inspirés du code source de MiniSheet. Tous les exemples sont :

  • Fonctionnels : Testés et compilables
  • Commentés : Expliqués en détail
  • Idiomatiques : Suivent les conventions Rust

Contributions et feedback

Ce livre est un document vivant qui évolue avec MiniSheet. Les contributions sont les bienvenues :

  • Corrections : Signaler les erreurs ou imprécisions
  • Améliorations : Suggestions d'explications plus claires
  • Extensions : Nouveaux chapitres ou sections
  • Traductions : Versions dans d'autres langues

Licence

Ce livre est fourni sous la même licence que MiniSheet : utilisation libre pour l'éducation et la recherche personnelle.


MiniSheet - Un tableur moderne écrit en Rust, conçu pour la performance et la pédagogie 🦀📊