Guide du développeur : Différence entre versions
(3 révisions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
− | + | [[Image:phpgedview.png|centre|]] | |
+ | Il s'agit d'une liste d'articles qui peut intéresser tous ceux qui veulent contribuer au développement de PhpgedView ou qui désirent comprendre comment fonctionne ce programme. | ||
− | * [[en:Developers Guide]] | + | La plupart des articles originaux dont accessibles sur le [http://www.phpgedview.net/devdocs/ site web de documentation de développement de PhpGedView]. |
+ | |||
+ | =Mettre en place un environnement de développement= | ||
+ | |||
+ | Si vous voulez contribuer au développement de PhpGedView vous devrez en premier lieu mettre en place un environment de développement. Voici un certain nombre de guides qui vous aideront à mettre en place cet environnement: | ||
+ | |||
+ | * [[Installer PHP sous Windows]] | ||
+ | * [[Installer MySQL sous Windows]] | ||
+ | * [[Installer Eclipse sous Windows]] | ||
+ | * [[Installer PhpGedView pour le développement]] | ||
+ | |||
+ | =Tutoriaux pour le développeur et APIs= | ||
+ | ;[[Developers Guide:Getting Started Tutorial|Getting Started Tutorial]] :A tutorial which will walk you through how to get started developing for PhpGedView. | ||
+ | ;[http://www.phpgedview.net/devdocs/api/ Full Project API (PHPDoc)] :Details the full API in PHPDoc format for the entire project. | ||
+ | ;[[Developers Guide:Editing API|Editing API]] :Describes the function calls for editing data in PhpGedView. | ||
+ | ;[[Créer un module|Créer un module]] :comment créer un module basique incluant un menu pour PGV | ||
+ | ;[[Developers Guide:PGV Variables|PGV Variables]] :Variables available to modules | ||
+ | ;[[Developers Guide:Translation and Internationalization|Translation and Internationalization]] :Describes how to use the language translation and internationalization features of PhpGedView. | ||
+ | ;[[Developers Guide:Model-View-Controller Architecture|Model-View-Controller Architecture]] :Describes how PhpGedView uses the MVC pattern. | ||
+ | ;[[Developers Guide:Commenting and Code Style|Commenting and Code Style]] :Describes the commenting practices for PhpGedView and the code formatting and style. | ||
+ | ;[[Developers Guide:Language and text styles for Help screens|Language and text styles for Help screens]] :Provides some basic rules and guidelines for the presentation of Help text. | ||
+ | |||
+ | =Structures des données internes= | ||
+ | ;[[Developers Guide:Data Model|Data Model]] :The classes and objects which make up the PhpGedView data model. | ||
+ | ;[[Developers Guide:Global Arrays|Global Arrays]] :A list describing all arrays used in the core data model. | ||
+ | |||
+ | =Formats des rapports= | ||
+ | ;PhpGedView [[Developers Guide:XML Report Templates|XML Report Templates]] :This page describes the PhpGedView XML report templates and provides information on how you can create your own reports | ||
+ | |||
+ | =Test= | ||
+ | Testing, and frequent testing is important to the development and uptake of PhpGedView. Testing helps to minimise the occurrence of bugs as well as help stopping them from resurfacing at a later date. | ||
+ | |||
+ | [[SimpleTest]] can be used to write unit tests of classes. | ||
+ | |||
+ | ==GEDCOM== | ||
+ | The [http://www.geditcom.com/gedcom.html| GEDCOM 5.5 Torture Test Files] are valid but odd and confusing GEDCOMs that are useful in debugging problems with PhpGedView. It would be great if developers who made changes to PhpGedView to accommodate uncommon and weird GEDCOMs that are valid, update this file so that it can help other applications improve their GEDCOM support. | ||
+ | |||
+ | TODO: have a publicly available PhpGedView install that uses the Torture Test GEDCOM for testing. The PhpGedView modified GEDCOM should be submitted back to the author of the test. See [https://sourceforge.net/tracker/?func=detail&atid=634867&aid=1404488&group_id=55456] | ||
+ | |||
+ | ==CSS== | ||
+ | There is a lot of optimization needed in the CSS code being used in PhpGedView. Many classes are redundant and a lot of streamlining is needed. | ||
+ | |||
+ | The [http://www.cssoptimiser.com|Online CSS Optimizer] can be used to reduce the size of the CSS files prior to a release. We should keep the original as is, and run them through this free online tool before release to greatly reduce the size of the files. Keeping the newlines option in the tool, will allow developers to still read the CSS and get ideas for better optimization (though it might not be in a format that we want to keep). | ||
+ | |||
+ | Another available tool is [http://cdburnerxp.se/cssparse/css_optimiser.php|CSS Formatter and Optimiser]. | ||
+ | |||
+ | =Travailler avec SVN= | ||
+ | ; [[SVN]] | ||
+ | : An article detailing working with SVN. | ||
+ | ; [[Developers Guide:Merging Branches|Merging Branches]] | ||
+ | : Describes the process for merging SVN branches in the PhpGedView project. | ||
+ | |||
+ | <!-- Category links...DO NOT DELETE --> | ||
+ | [[Category:Guide du développeur]] | ||
+ | [[Category:phpGedView]] | ||
+ | |||
+ | [[en:Developers Guide]] |
Version actuelle datée du 25 mars 2008 à 17:56
Il s'agit d'une liste d'articles qui peut intéresser tous ceux qui veulent contribuer au développement de PhpgedView ou qui désirent comprendre comment fonctionne ce programme.
La plupart des articles originaux dont accessibles sur le site web de documentation de développement de PhpGedView.
Sommaire
Mettre en place un environnement de développement
Si vous voulez contribuer au développement de PhpGedView vous devrez en premier lieu mettre en place un environment de développement. Voici un certain nombre de guides qui vous aideront à mettre en place cet environnement:
- Installer PHP sous Windows
- Installer MySQL sous Windows
- Installer Eclipse sous Windows
- Installer PhpGedView pour le développement
Tutoriaux pour le développeur et APIs
- Getting Started Tutorial
- A tutorial which will walk you through how to get started developing for PhpGedView.
- Full Project API (PHPDoc)
- Details the full API in PHPDoc format for the entire project.
- Editing API
- Describes the function calls for editing data in PhpGedView.
- Créer un module
- comment créer un module basique incluant un menu pour PGV
- PGV Variables
- Variables available to modules
- Translation and Internationalization
- Describes how to use the language translation and internationalization features of PhpGedView.
- Model-View-Controller Architecture
- Describes how PhpGedView uses the MVC pattern.
- Commenting and Code Style
- Describes the commenting practices for PhpGedView and the code formatting and style.
- Language and text styles for Help screens
- Provides some basic rules and guidelines for the presentation of Help text.
Structures des données internes
- Data Model
- The classes and objects which make up the PhpGedView data model.
- Global Arrays
- A list describing all arrays used in the core data model.
Formats des rapports
- PhpGedView XML Report Templates
- This page describes the PhpGedView XML report templates and provides information on how you can create your own reports
Test
Testing, and frequent testing is important to the development and uptake of PhpGedView. Testing helps to minimise the occurrence of bugs as well as help stopping them from resurfacing at a later date.
SimpleTest can be used to write unit tests of classes.
GEDCOM
The GEDCOM 5.5 Torture Test Files are valid but odd and confusing GEDCOMs that are useful in debugging problems with PhpGedView. It would be great if developers who made changes to PhpGedView to accommodate uncommon and weird GEDCOMs that are valid, update this file so that it can help other applications improve their GEDCOM support.
TODO: have a publicly available PhpGedView install that uses the Torture Test GEDCOM for testing. The PhpGedView modified GEDCOM should be submitted back to the author of the test. See [1]
CSS
There is a lot of optimization needed in the CSS code being used in PhpGedView. Many classes are redundant and a lot of streamlining is needed.
The CSS Optimizer can be used to reduce the size of the CSS files prior to a release. We should keep the original as is, and run them through this free online tool before release to greatly reduce the size of the files. Keeping the newlines option in the tool, will allow developers to still read the CSS and get ideas for better optimization (though it might not be in a format that we want to keep).
Another available tool is Formatter and Optimiser.
Travailler avec SVN
- SVN
- An article detailing working with SVN.
- Merging Branches
- Describes the process for merging SVN branches in the PhpGedView project.