====== Méthode de développement ======
NOALYSS est développé en MVC et utilise beaucoup l'objet.
Nous avons détaillé la méthode de développement, elle se trouve aussi dans le manuel, à télécharger sur http://download.noalyss.eu
[[developpement:noalyss|Vous pouvez aussi la lire en ligne]]
====== Obtenir le code ======
Tout le code est hébergé sur savannah.org
https://savannah.nongnu.org/projects/noalyss-plugins
et
https://savannah.nongnu.org/projects/noalyss
===== NOALYSS =====
Afin d'obtenir le trunk, pour suivre le développement, prenez-le depuis le repository git sur [[htts://savannah.nongnu.org]]
git clone git://git.savannah.nongnu.org/noalyss.git
===== Plugin =====
git clone git://git.savannah.nongnu.org/noalyss-plugins.git
======Environnement de développement ======
Configurez maintenant votre environnement :
* [[faq:mise_en_mode_debug|Mettez vous en mode debug ]]
* [[developpement:scenario|Enregistrez votre activité afin de rejouer des scénarios et de tester]]
====== Régles et conseils ======
====== Agenda de développement ======
Vérifier si une tâche ou l'autre correspond à ce que vous voulez faire. Dans tous les cas, pensez à venir sur la Mailing list pour en discuter
[[agenda_developpement:|L'agenda se trouve ici]].
En général, on utilise des [[http://bug.noalyss.eu|tâches ou bugs]] pour le suivi.
====== Editeur conseillé ======
PhpStorm , eclipse ou netbeans sont fortement conseillés.
Netbeans vient avec tout ce dont vous avez besoin pour le PHP, pour Eclipse, il faudra ajouter les plugins git, PDT
[[https://netbeans.apache.org/download/index.html|Téléchargement de Netbeans]]
[[http://www.journaldunet.com/developpeur/php/tutoriel-eclipse-pdt/|Tutoriel pour Eclipse avec PHP]]
[[https://www.jetbrains.com/?from=NOALYSS}|PhpStorm]] {{:jetbrains-variant-3.png?direct&100|}}
[[https://codelite.org/|CodeLite]]
[[https://atom.io/|Atom]]
===== Avantages =====
* Possibilité de débugguer le code http://netbeans.org/kb/docs/php/debugging.html
* développement facilité (html, html5, auto-completion, recherche, parcourir facilement le code,...) http://netbeans.org/kb/trails/php.html
====== Outils ======
* git
* pgadmin3 https://www.pgadmin.org/
* xdebug
* firebug
* easy xdebug
* doxygen http://www.stack.nl/~dimitri/doxygen/
* dbeaver https://dbeaver.io/
====== Code ======
1. Nommage
Les fonctions sont en minuscule, verbe + action séparé par un souligné
Les classes commencent toujours une lettre capitale
2. Documentation
Dans la mesure du possible, documentez votre code en respectant les tags Doxygen.
La documentation du code source est accessible en ligne ou dans le fichier de noalyss télécharger dans le répertoire doc
* [[http://wiki.noalyss.eu/doc/|Documentation du code source]]
* [[http://wiki.noalyss.eu/doc/mod1.html|Base de données : dossier]]
* [[http://wiki.noalyss.eu/doc/account_repository.html|Base de données : repository]]
* [[http://git.savannah.gnu.org/cgit/noalyss.git|Parcourir le dépôt git]]
Plus d'information : [[http://www.phpcompta.eu/doc/Francais.html|Code avec Doxygen]]
3. Traduction
Tous les textes (en français) doivent être entourés de _():
exemple
$msg="Valide";
echo "Bonjour";
deviennent
$msg=_("Valide");
echo _('Bonjour');
Cela permet aux scripts dans dev/ de retrouver les chaînes à traduire [[traduction|GETTEXT]]
====== Si vous souhaitez soumettre un patch ======
Afin de soumettre un patch , vous devez d'abord "cloner" la base de données (voir plus haut) ,
Ensuite vous créer votre propre branch soit à partir de UNSTABLE ou STABLE : UNSTABLE si c'est un développement pour la prochaine version, soit STABLE si c'est une correction de bug à mettre de la version STABLE.
Example :
git switch stable # ou unstable
git checkout -b mon_dev1
Puis après avoir modifié et testé , vous devez faire
git format-patch unstable..mon_dev1
Automatiquement des fichiers contenant les patch vont être générés, vous devez les envoyer et ils seront intégrés : compressez et envoyez le fichier obtenu sur la ML contrib.
Si vous souhaitez plus d'information sur les patches https://ariejan.net/2009/10/26/how-to-create-and-apply-a-patch-with-git/
Si vous souhaitez seulement être au courant de l'évolution, vous pouvez soit
* vous abonnez à la [[Mailing_list|Mailing List dev]]
* Suivre les emails automatiques des commits sur [[http://lists.nongnu.org/archive/html/noalyss-commit]]
* Suivre sur depuis les dépôts [[http://git.savannah.gnu.org/cgit/noalyss.git]] et [[http://git.savannah.gnu.org/cgit/noalyss-plugins.git]] ou sur [[https://gitlab.com/noalyss/]]
====== Documentation du code source ======
[[http://wiki.noalyss.eu/doc/|Documentation du code]]
[[http://wiki.noalyss.eu/doc/mod1.html|Base de données : dossier]]
[[http://wiki.noalyss.eu/doc//account_repository.html|Base de données : repository]]
[[http://git.savannah.gnu.org/cgit/noalyss.git|Parcourir le dépôt git de NOALYSS]]
[[http://git.savannah.gnu.org/cgit/noalyss-plugins.git|Parcourir le dépôt git des plugins]]
[[analyse:|Analyse]]
====== Traduction ======
[[http://wiki.phpcompta.eu/doku.php?id=traduction&s[]=traduction|Traduction]] basée sur gettext.