CodingForOOo4Kids/fr

From OOo4Kids

Jump to: navigation, search

OOo4Kids

Programmer pour OOo4Kids



Introduction

OOo4Kids est basé sur le code source d'OpenOffice.org, from DEV300 Master Workspace.

Ceci signifie que lorsque vous écrivez du code pour OOo4Kids, vous apprenez à écrire du code pour OpenOffice.org. En d'autres termes, vous apprenez progressivement à contribuer aussi à OpenOffice.org : OOo4Kids a été pensé pour attirer les développeurs d'OpenOffice.org, sans perturber le développement d'OpenOffice.org.

Build simplification

OpenOffice.org est un "framework", et son architecture normale repose autour de 170 modules. Puisque nous n'avons besoin ni de construire, ni de "packager" tout, nous n'allons pas tous les intégrer.

Tout d'abord, il a été décidé de n'inclure ni Base ni Starmath, ni Java dans OOo4Kids.

L'idée majeure est de fournir une plus petite archive (environ 100MB, sachant qu'actuellement elle oscille entre 101 sous Linux Intel et 114 sous Mac OS X), avec moins de fonctionnalités, car les enfants entre 7 et 12 ans n'en ont pas réellement l'utilité (comme pas mal d'adultes aussi ;-) ).

Pour la version actuelle (la 0.3 pour l'instant), nous avons modifié environ 50 modules (parmi les 170 qui constituent OOo) pour créer OOo4Kids. Et ces changements suffisent à comprendre très précisément la façon dont est construit OpenOffice.org,

Autres intérêts pédagogiques :

  • modifier/ajouter/enlever une boîte de dialogue fait appel à une bonne compréhension du local, mais pas seulement du code,
  • il faut avoir un niveau de compréhension élevé du code source de OpenOffice.org lorsque l'on supprime des lignes de code,
  • ajouter une fonctionnalité sans perturber tout le reste, demande une bonne connaissance du local code,
  • etc.

Tout cela rend ce projet particulièrement intéressant.

Principes

How to add a new environment variable

Packaging

Principes

Enlever des bibliothèques

Enlever des binaries

Enlever des resources

Problèmes connus et approches différentes

Améliorations (code relative to)

  • Vitesse (meilleures performances)
  • Taille réduite de l'archive (packaging)
  • Barres d'outils simplifiées (UX, utilisabilité)
  • Des palettes de couleurs plus adaptées aux enfants (UX, utilisabilité)

Portabilité

Mac OS X

Linux

Windows

Debug

Méthodologie

Problèmes résolus

Rapport d'erreurs ouverts

Liens

Autres