Programmation PHP/Exemples/MiniCMS
Les CMS ou Content Management Systems () sont répandus sur les toiles intra/extra(nets). Leur objectif étant d'assister la publication de contenu.
L'article décrit comment en concevoir un, ajaxifié côté client et modulaire côté serveur ("backend"). 
Définissons quelques fonctionnalités et appelons le package "myTinyCMS".
Aller au livre

Programmation PHP/Exemples/MiniForum
Faire un mini forum de discussion.
Bon nombre de forums sur internet ont repris des opensources et les ont customisé. Dans cet article, nous verrons comment simplement opposer de meilleures solutions, plus souples et personnelles.
Ce chapitre traitera du programme à fournir pour cette solution sans proposer de sécurisation.
Introduction.
Voici un forum modulaire, universel, illimité, fonctionnel et très réactif mais à sécuriser avec MySQL en "backend" et HTML en "frontend".
Architecture.
À bâtir en MVC, le forum est segmenté comme :
// STATICAL MODULES
// FUNCTIONNAL MODULES
Déploiement.
La méthodologie processus unifié fonctionne par itérations successives et augmentation, amélioration du code. On obtient donc pour chaque module différentes itérations représentatives de l'état d'avancement de l'application. L'état 0 ou incrément 0 étant l'ébauche et incrément 1, la première itération de l'applicatif.
increment 0 : index.php 
increment 1 : index.php 
increment 2 : index.php 
Objects.
increment 3 : frameset.inc.php
increment 0 : mainPage.inc.php
increment 1 : listener.inc.php
increment 1 : controler.inc.php
increment 1 : mainPage.inc.php
increment 2 : mainPage.inc.php
increment 3 : jsScript.inc.php
increment 3 : pages.inc.php
increment 4 : pages.inc.php
increment 4 : controler.inc.php
Constatations.
Après le login, on a :
[2] & [3] sont similaires, quelques indicateurs à basculer dans la base.
Il reste donc deux cas.
L'admin aura sa propre IHM avec fonctions élevées sur le forum.
RUP - Rational Unified Process (ou comment coder ?).
La granularité de la solution s'effectuera par l'affinage des modules. 
Il n'est pas intelligent de coder en procédurale ou suivant un développement linéaire dans ce cas. 
Chaque module ou "addon" s'interfacera par adjonction de classes et "snippets". 
Ceux-ci étant bien définis quand aux (in/out)put, avec le type précis. 
De cette manière l'applicatif sera modulaire et évolutif.
Module administratif.
Le forum doit être dédié aux légumes. L'admin doit avoir le choix de créer ces différents sujets principaux.
Par exemple les sections : 
Bibliothèques.
Nous aurons d'emblée besoin des deux utilitaires :
[classes]
[functions]
[classes]
[functions]
increment 2 : utils.fnc.php
increment 4 : utils.fnc.php
Modélisation.
La modélisation est fonction du métier et des affinités.
En voici une fonctionnelle pour notre exemple :
un script d'installation pourrait être :
Conclusion.
Cette façon de coder n'est pas la plus élégante et ne vise pas l'excellence.
Bien que l'approche modulaire accroisse la quantité de code, elle a cependant l'avantage d'être lisible pour les longs développements.
L'approche itérative et incrémentale de la méthodologie RUP tire fortement parti du développement modulaire.

Programmation PHP/Concevoir du code de haute qualité