Accueil

it.rocks PHP Framework

it.rocks est un Framework PHP dédié au développement d’applications de gestion, qui apporte de la structure à des projets d’envergure, en cherchant à garder l’esprit de simplicité d’écriture d’origine du langage PHP, en fuyant les couches d’abstraction au profit d’une écriture orientée métier et fonctions utilisateur.

Sa finalité est de rassembler en son sein un maximum problématiques communes aux applications de gestion, pour que le développeur puisse se concentrer sur le développement de fonctionnalités métier.

L’application métier finale ne doit donc contenir qu’un minimum de problématiques techniques, ce qui permet d’en d’accélérer le développement, d’en faciliter la maintenance, d’en maximiser l’évolutivité.

En cela, it.rocks est également une méthode de programmation tournée vers l’utilisateur, et au service de la fonctionnalité.

Documentation

  • Créer une application : suis le tutoriel d’installation et d’initialisation de ta première application avec it.rocks, et apprends les bases du développement sous it.rocks par l’exemple.
  • Manuel de référence : la référence complète des classes et fonctionnalités du framework it.rocks, et des documentations disponibles dans ce wiki.

La philosophie de it.rocks en quelques points

Framework sous licence MIT : Fork me on github !

Avec it.rocks, tu obtiendras ceci en n’écrivant que tes classes de données métier :

Ton code

  1. it.rocks propose d’utiliser des annotations, des getter et setter non-systématiques, l’AOP, pour toujours en faire plus en en écrivant moins.
  2. Le code commun aux logiciels de gestion doit être mutualisé dans it.rocks.
  3. Proposer dans it.rocks des comportements standard pour un maximum de processus métier.
  4. N’écris que ce dont tu as besoin, ton logiciel doit être maintenable : pas de code généré ou écrit autre que le strict nécessaire pour décrire ta logique métier.
  5. Regrouper templates, contrôleurs, classes métiers et vues par module fonctionnel, pour avoir sous la main tous les fichiers nécessaires au développement de la fonctionnalité, au lieu qu’ils soient dispersés dans une arborescence technique.
  6. Modularité : utiliser les traits, certaines formes d’héritage multiple, l’AOP, pour séparer jusqu’à tes objets métier par fonctionnalité, et éviter les classes fourre-tout.
  7. Tes modules, y compris des parties d’objets métier, doivent pouvoir être utilisés par d’autres, dans d’autres logiciels, et donc dans d’autres contextes.

Interface utilisateur HTML, CSS, JS

  1. HTML structure les données, mais ne propose pas la présentation : séparer HTML et CSS.
  2. La création d’une nouvelle skin doit permettre de modifier notablement la présentation sans toucher aux templates HTML.
  3. Les templates doivent pouvoir être visualisés proprement dans votre navigateur, sans que les balises de structure ne les rendent illisibles.
  4. Les templates doivent pouvoir passer la validation W3C.
  5. Les pages HTML générées doivent pouvoir passer la validation W3C.
  6. Javascript séparé par modules : large utilisation de jQuery.
Montrer l'historique