You can edit almost every page by Creating an account. Otherwise, see the FAQ.

OpenWF Framework

De EverybodyWiki Bios & Wiki
Aller à :navigation, rechercher


OpenWebFramework
Logo.
[[Fichier:Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).|280px|alt=Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).|Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).]]
Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).

Date de première version 2007
Développeur Michael Vergoz / BinarySEC
Dernière version Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Version en développement Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Influencé par Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Écrit en Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value)./Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Système d'exploitation Linux, Mac OS X, et d'autre
Licence Licence publique générale GNU version 3 ou licence propriétaire
Site web http://wiki.owf.re/
Extension de fichier Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).

Open Web Framework (formellement appelé OpenWF) est un framework développé au moyen du langage PHP 5 et est sous licence GPL v3.

OpenWF permet de développer des applications Web stables et performantes[non neutre][réf. nécessaire]. Il est l'un des rares framework à intégrer nativement différents niveaux de caches qui améliorent singulièrement l'application Web.

Il est aussi intégralement modulaire, ce qui permet

  • de segmenter proprement les développements (et les équipes de développement) ;
  • de faciliter la mise à jours des modules ;
  • de segmenter l’exécution de l'application.

Une intégration native d'un chargeur CLI permet d’exécuter très facilement le Framework en mode console.

Genèse[modifier]

OpenWF est une émanation des travaux de recherches et développements de la société BinarySEC SAS.

Il a été programmé intégralement "ex nihilo"("From Scratch" en anglais) afin de répondre aux attentes des équipes de développement.

OpenWF exploite toutes les capacités que offre PHP en matière de développement.

Driver de base de données[modifier]

OpenWF intègre une couche d’abstraction de gestion de base de données, ainsi le développeur n'a plus à se soucier de la portabilité de ses requêtes SQL.

Une requête SQL se réalise aux moyens d'objets très simples à manipuler :

  • core_db_insert : objet d'insertion de données
  • core_db_multiple_insert_or_update : permet d’exécuter plusieurs core_db_insert
  • core_db_update : mettre à jours des données
  • core_db_adv_select : objet avancé de sélection de données
  • core_db_select : objet simple de sélection de données
  • core_db_delete : objet de suppression de données
  • core_db_adv_delete : comme pour core_db_delete mais avec des fonctions avancées
  • core_db_select_distinct : effectue une sélection distincte
  • core_db_index : objet de création d'indexation de recherche

Trois drivers sont actuellement proposés à l'usage :

Couche de programmation[modifier]

OpenWF possède une couche supplémentaire de programmation permettant d'abstraire encore un peu plus l'accès aux données tel un objet d'accès aux données (DAO).

Il est ainsi possible de créer toutes les méthodes liées à la manipulation de données en base (select/update/insert) en créant simplement le schéma de base de données au travers d'une DAO OpenWF core_dao_form_db.

Une fois ce schéma crée il est possible de générer automatiquement l'insertion, la vue et la modification de la base de données au travers de l'interface Web comme pourrait fonctionner un Modèle-Vue-Contrôleur (MVC)

Priorité modulaires[modifier]

L'une des forces du framework OpenWF est la priorité modulaire.

Cette fonction permet :

  • segmenter et rendre étanche des compartiments de développeurs et projets de développement ;
  • d'agir sur un autre module sans en modifier les sources.

Par exemple, il est possible de modifier l'intégralité graphique du module Admin sans modifier ce dernier mais juste en surchargeant les fonctions du modules.

Cette fonctionnalité permet aussi de mieux prendre en compte les mises à jour des modules dépendants sans en affecter son fonctionnement.

Internationalisation[modifier]

L'autre très grand atout de OpenWF est certainement la gestion des langues.

OpenWF vous permet de créer des applications intégralement traduites. C'est l'agrégateur core_lang du module Core qui est responsable de sa gestion. À tout moment le développeur peut créer un contexte de langue qui lui permettra par la suite de traduire l'ensemble de l'applicatif web via le module God.

Le module God propose au développeur de maîtriser la gestion des langues et permet de traduire en ligne l'applicatif.

OpenWF charge un certain nombre de contextes de langues par défaut. Par exemple le fichier module.php des définitions du module possède son propre contexte de langue. Il en va de même pour tous les templates chargés. Un agrégateur peut, si nécessaire, charger un contexte.

Nomenclature des modules[modifier]

  • Branche de développement Native (NAT)
  • Branche de développement des projets portés (PP)
    • Module ppjQuery : portage de jQuery
    • Module ppjQueryUI : portage de jQueryUI
    • Module TinyMCE : portage du projet TinyMCE
    • Module RaphaelJS : portable du projet RaphaelJS

Références[modifier]



Erreur Lua dans Module:Catégorisation_badges à la ligne 170 : attempt to index field 'wikibase' (a nil value).Erreur Lua dans Module:Suivi_des_biographies à la ligne 189 : attempt to index field 'wikibase' (a nil value).

Cet Article wiki "OpenWF Framework" est issu de Wikipedia. La liste de ses auteurs peut être visible dans ses historiques.