Yana (framework)
Yana Framework | |
---|---|
Basic data
|
|
Current version | 3.0.2 (November 11, 2016) |
operating system | cross-platform |
programming language | PHP |
category | Web framework |
License | GPL |
German speaking | Yes |
yanaframework.net |
Yana is a free web framework with PHP , Ajax and SQL . It is available under version 3 of the GNU General Public License (GPL).
The target group are small and medium-sized enterprises (SMEs) and freelancers.
philosophy
The main goal is to formalize technical concepts from Product Family Engineering , which currently exist mainly as isolated solutions, and to make them available to the public as FOSS . The area of application primarily includes back office applications on the intranet and data-centric PHP applications on the Internet. The framework also allows use on write-protected data carriers such as CD / DVD.
The Yana framework sees itself more as a development platform in the tradition of solutions like Eclipse and follows the platform concept that was developed in the field of product family engineering. Consequently, this means that not applications, but systems and subsystems (“plugins” in the terminology of the framework) are implemented by developers who implement isolated features of the application. These can be activated or deactivated during runtime using a configurator. In addition, there is a strict separation of business logic and presentation layer in the sense of a model-view-controller architecture.
Rapid application development and prototyping
For rapid prototyping and rapid application development, the Yana Framework offers a description language for modeling semantic database structures. These models are transferred to a generator which can generate static skeletons and PHP code as well as dynamic input interfaces at runtime. These interfaces are automatically adapted to changes in the table structure, as described in the XML file. A file-based developer database ensures during the design phase that if the XML is changed, the database is also adapted. An SQL generator will later automatically generate the necessary SQL statements for the deployment.
Transparent support for AJAX is also provided for rich client applications. The developer initially implements the functionality without JavaScript. The designer only decides when designing the surface whether he wants to use AJAX or not. The framework automatically decides at runtime via a URL parameter whether the response is to be delivered as a complete standard HTML or, for requests via AJAX, only the changed content is to be delivered as a fragment.
features
- Rapid prototypes for evolutionary prototypes
- suitable for CD / DVD operation
- Support for DB schema in an XML dialect (import of DBDesigner 4 projects possible)
- SQL Generators and Query Builder API
- File-based developer database for the design phase
- internationalization
- Template management and themes with connection to Smarty
- Plugin management
- Configuration management
- transparent AJAX support
- extensive documentation in German and English
literature
- Thomas Meyer: Web applications and databases / code generators . In: PC magazine . Number 12, 2007, WEKA-Verlag, ISSN 1438-0919 , pp. 160-163.
- Thomas Meyer: Product Family Engineering . In: PHP Solutions . Number 3, 2008, Software Verlag, pages 66-69.