Chunk

Difference between revisions of "Framework (CMS 1.5 and 1.6)"

From Joomla! Documentation

m
Line 1: Line 1:
{{RightTOC}}
+
__NOTOC__
<blockquote>
 
''A '''software framework''' is a reusable design for a software system (or subsystem). This is expressed as a set of [[:Wikipedia:abstract class|abstract class]]es and the way their instances collaborate for a specific type of software. Software frameworks can be [[:Wikipedia:Object-oriented programming|object-oriented designs]]. Although designs don't have to be implemented in an object-oriented language, they usually are. A software framework may include support programs, code [[:Wikipedia:Libraries|libraries]]<ref>[[PHP libraries]] bundled with Joomla!</ref>, a [[:Wikipedia:JavaScript|scripting language]]<ref>[[JavaScript libraries]] bundled with Joomla!</ref>, or other software to help develop and ''glue together'' the different components of a software project. Various parts of the framework may be exposed through an application programming interface ([[:Wikipedia:Application programming interface|API]]).''
 
:''From [[:Wikipedia:Framework|Wikipedia]]''
 
</blockquote>
 
 
 
 
[[Image:Joomla_Architecture.jpg|thumb|The Joomla Architecture]]
 
[[Image:Joomla_Architecture.jpg|thumb|The Joomla Architecture]]
  
[[:Category:Joomla! 1.5|Joomla! 1.5]] is a three tiered system:-
+
The Joomla Framework is an important part of the Joomla architecture. It's based on modern object-oriented design patterns that make the Joomla core highly maintainable and easily extendable ([[About the Joomla Framework|Learn more about the Joomla Framework]]).  
* The top, Extensions layer, consists of [[Extension|Extensions]] to the Joomla [[Framework]] and its applications:
 
** [[Module|Modules]]
 
** [[Component|Components]]
 
** [[Template|Templates]]
 
* The middle, Application layer, consists of applications that extend the Framework [[JApplication]] class.  Currently there are four applications included in the Joomla distribution:-
 
** [[JInstallation]] is responsible for installing Joomla on a web server and is deleted after the installation procedure has been completed.
 
** [[JAdministrator]] is responsible for the back-end Administrator.
 
** [[JSite]] is responsible for the front-end of the website.
 
** [[XML-RPC]] supports remote administration of the Joomla website.
 
* The bottom, Framework layer, consists of:-
 
** the Joomla [[Framework]] itself, whose classes are listed below.
 
** [[Library|Libraries]] that are required by the [[Framework]] or are installed for use by third-party developers.
 
** [[Plugin|Plugins]] extend the functionality available in the [[Framework]].
 
  
== Packages and Classes ==
+
Third party developers benefit from the rich, and easily accessible functionality that the Joomla Framework provides. On this page we'd like to provide you a reference of all classes and its respective methods. The links will take you to further information about each class including, where possible, examples of use.
The classes in the {{jf}} are loosely grouped into several different packages, listed below. The links will take you to further information about each class including, where possible, examples of use.  You can also browse the Joomla Framework and included libraries on [http://api.joomla.org api.joomla.org] which is automatically generated by the phpDocumentor package from an analysis of the Joomla! source code, making use of specially formatted comments embedded in the source code itself.  These two resources, one manually maintained, the other automatic, are intended to complement one another.
 
  
 
If you would like to help us improve this resource, please read [[API Reference Project]].
 
If you would like to help us improve this resource, please read [[API Reference Project]].
 
For an alphabetical list of class names click on the "Class" column heading.
 

Revision as of 04:35, 23 March 2010

File:Joomla Architecture.jpg
The Joomla Architecture

The Joomla Framework is an important part of the Joomla architecture. It's based on modern object-oriented design patterns that make the Joomla core highly maintainable and easily extendable (Learn more about the Joomla Framework).

Third party developers benefit from the rich, and easily accessible functionality that the Joomla Framework provides. On this page we'd like to provide you a reference of all classes and its respective methods. The links will take you to further information about each class including, where possible, examples of use.

If you would like to help us improve this resource, please read API Reference Project.