Quick links: Content - sections - sub sections
EN

Trace:

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
en:about [2006/12/15 21:01] laurenten:about [2011/05/08 06:40] (current) laurent
Line 1: Line 1:
-====== About ====== +====== About Jelix ======
-===== General =====    +
-Jelix is a framework for PHP5, whose objective is to contribute to the realization of applications or Web sites of any kind. +
  
-Here is what is proposed to the developer:+Jelix is a modern PHP5 framework
  
-  * API dealing with numbers of technical aspectsdata access, MVC model, templates, exit format generator (HTML, XUL,…), Web services (xml-RPC, json-RPC), authentication, rights management, localization etc. +  * [[en:features|Discover all features]] 
-  * a modular structure and an organization of the files of the project, imposing a framework and some developing standards. +  * [[en:tutorials:minitutorial|A minitutorial]] to see quickly how to make an application with Jelix 
-  * a "layer" organization of the projectpresentation, coordination, service, business, persistence.+  * [[en:faq|Frequently Asked Questions]] 
 +  * [[en:credits|Who is developing Jelix ?]] 
 +  * [[en:hall-of-fame|Hall of Fame]]those who use Jelix
  
-These characteristics allow for a better re-use of the code, a capitalization of know-how, a better organization in the development, all this moving to a better productivity.  
- 
-Jelix uses to the maximum of specificities of PHP5, in order to be the lightest and most powerful possible. This is why a project based on Jelix is 100% object. 
- 
- 
- 
- 
- 
-===== Features ===== 
- 
-==== Original functions and characteristics ====      
-  * **Modular architecture** : an application can be cut out in several reusable modules.       
-  * **Minimal guarantee on the data exchange** : Jelix controls the generation of exit format according to the type of request. For example, if we have a request for a XML-RPC web service, we cannot generate HTML, the answer will be obligatorily in XML-RPC. That thus offers a certain robustness of the application in client/server communication. (Unless the developer does not use objects from Jelix, because nothing indeed prevents from making an echo of anything anywhere).      
-  * **Generation of technical errors in specified format** : thanks to the Jelix system described before, all the technical errors are returned in the format awaited by the client. For example: no HTML formatted error when client is awaiting XML-RPC or RDF response. 
-  * **Light and evolutionary template engine (jTpl)**, with a syntax halfway between Smarty and PHP. A plugin system like in Smarty is also available.      
-  * **jDAO, object-relational mapping**, based on the DAO design pattern (Data Access Object). Declared in XML files,  automatic generation of its SQL requests , handling of security problems (SQL injection etc…). 
-  * **Designation of files and resources by selectors**, and not by physical ways, then bringing a certain independence to a module from the installation.       
-  * **Event system** allowing module-to-module communication.     
-  * **Overload file** : it is possible to redefine some files of a module without changing the originals (DAO, templates, properties). Useful when a module is used by several applications at the same time, or to make easy the update of a third module. 
- 
-==== Modern functions and characteristics  ==== 
-Functions that we don’t find so often in frameworks:       
-  * **Web Services** : Jelix deals with analysis of the content of requests, and the generation of the response.  XML-RPC and JSON-RPC are handled. Other types of services Web are completely possible (SOAP,…).   
-  * **Handling of RESTfull** : by simple implementation of an interface: one can easily define what is done after HTTP GET/POST/PUT/DELETE requests.  
-  * Template system: it is possible to define several templates, each one redefining the template of modules.       
-  * **Automatic system for URL generation and mapping** : no complete URL in Jelix. The framework has the responsibility to generate urls in the templates or elsewhere, according to the configuration of URL mapping defined nn actions (mod_rewrite &co).      
-  * **PHP scripts for code generation** to execute in command liner, allowing fast creation of various files of a project (module, DAO, template, actiongroup etc)    
-  * **Technical cache system** : almost all non PHP files of a Jelix project "are compiled" in PHP in order to improve the performances (templates, DAO, events etc.). 
- 
- 
- 
-==== Traditional functions and characteristics    ==== 
-Functions which one finds in many frameworks: 
-  * **The architecture of the core is MVC type** (Model-View-Controller). A coordinator handles the execution of an action according to the parameters in the URL. The possible actions are implemented in classes of jController type (controllers).       
-  * **Database access abstraction layer**: jDb relies on PDO or its own classes (when PDO is not available) to reach the databases.       
-  *  **Localization**: storage of messages located in properties files.       
-  *  **System of authentication and rights management**.       
-  *  Use of XML: declaration of the events, DAOs etc… That makes it possible to facilitate writing, generation and modifying these parts of a project by third-party tools, and thus to increase productivity. 
- 
- 
- 
- 
-===== Your first application ===== 
-Read the [[en:minitutorial|mini tutorial]] 

en/about.txt · Last modified: 2011/05/08 06:40 by laurent

Recent changes RSS feed Creative Commons License