Framework/1.5

From Joomla! Documentation
< Framework(Difference between revisions)
Jump to: navigation, search
m (added references section and references tag to fix cite error)
m (References: changed heading)
Line 553: Line 553:
 
|}
 
|}
  
==References==
+
== See Also ==
 
<references/>
 
<references/>
 
<noinclude>[[Category:Framework 1.5]][[Category:Subpackages 1.5]]</noinclude>
 
<noinclude>[[Category:Framework 1.5]][[Category:Subpackages 1.5]]</noinclude>

Revision as of 00:28, 18 August 2012

A software framework is a reusable design for a software system (or subsystem). This is expressed as a set of abstract classes and the way their instances collaborate for a specific type of software. Software frameworks can be 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 libraries[1], a scripting language[2], 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 (API).
From Wikipedia
The Joomla! Framework is a Three Tiered System
JoomlaArchitecture0.png
  • The top, Extensions layer, consists of Extensions to the Joomla Framework and its applications:
  • The middle, Application layer, consists of applications that extend the Framework JApplication class. There are three applications included in the Joomla distribution (four in Joomla 1.5):-
    • 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 Joomla 1.5 supports remote administration of the Joomla website. For Joomla 1.6 onwards see Xml-rpc
  • The bottom, Framework layer, consists of:-
    • the Joomla Framework itself, whose classes are listed below.
    • Libraries that are required by the Framework or are installed for use by third-party developers.
    • Plugins extend the functionality available in the Framework.

Packages and Classes

The classes in the Joomla! Framework 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 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.


The Joomla! Framework[3] was an important part of the Joomla! CMS architecture in the versions 1.5 and 1.6. It was based on modern object-oriented design patterns that make the Joomla core highly maintainable and easily extendable. Between April and July 2011, the Framework was rebranded as the Joomla! Platform and is now being developed separately from the Joomla! CMS. The first version of the CMS to ship with the Platform was version 1.7.

Third party developers benefit from the rich, and easily accessible functionality that the Joomla Framework provides.

The Joomla Architecture


The following Framework classes are present in version 1.5. For other versions see Framework

Class name Subpackage
JApplication Application
JApplicationHelper Application
JArchive Filesystem
JArchiveBzip2 Filesystem
JArchiveGzip Filesystem
JArchiveTar Filesystem
JArchiveZip Filesystem
JArrayHelper Utilities
JAuthentication User
JAuthenticationResponse User
JAuthorization User
JBrowser Environment
JBuffer Utilities
JButton Html
JButtonConfirm Html
JButtonCustom Html
JButtonHelp Html
JButtonLink Html
JButtonPopup Html
JButtonSeparator Html
JButtonStandard Html
JCache Cache
JCacheCallback Cache
JCacheOutput Cache
JCachePage Cache
JCacheStorage Cache
JCacheStorageApc Cache
JCacheStorageEaccelerator Cache
JCacheStorageFile Cache
JCacheStorageMemcache Cache
JCacheStorageXCache Cache
JCacheView Cache
JClientHelper Client
JComponentHelper Application
JController Application
JDatabase Database
JDatabaseMySQL Database
JDatabaseMySQLi Database
JDate Utilities
JDispatcher Event
JDocument Document
JDocumentError Document
JDocumentFeed Document
JDocumentHTML Document
JDocumentPDF Document
JDocumentRAW Document
JDocumentRenderer Document
JDocumentRendererAtom Document
JDocumentRendererComponent Document
JDocumentRendererHead Document
JDocumentRendererMessage Document
JDocumentRendererModule Document
JDocumentRendererModules Document
JDocumentRendererRSS Document
JEditor Html
JElement Html
JElementCalendar Html
JElementCategory Html
JElementEditors Html
JElementFilelist Html
JElementFolderlist Html
JElementHelpsites Html
JElementHidden Html
JElementImageList Html
JElementLanguages Html
JElementList Html
JElementMenu Html
JElementMenuItem Html
JElementPassword Html
JElementRadio Html
JElementSection Html
JElementSpacer Html
JElementSQL Html
JElementText Html
JElementTextarea Html
JElementTimezones Html
JElementUserGroup Html
JError Error
JEvent Event
JException Error
JFactory
JFeedEnclosure Document
JFeedImage Document
JFeedItem Document
JFile Filesystem
JFilterInput Filter
JFilterOutput Filter
JFolder Filesystem
JFrameworkConfig
JFTP Client
JHelp Language
JHTML Html
JHTMLBehavior Html
JHTMLContent Html
JHTMLEmail Html
JHTMLForm Html
JHTMLGrid Html
JHTMLImage Html
JHTMLList Html
JHTMLMenu Html
JHTMLSelect Html
JInstaller Installer
JInstallerComponent Installer
JInstallerHelper Installer
JInstallerLanguage Installer
JInstallerModule Installer
JInstallerPlugin Installer
JInstallerTemplate Installer
JLanguage Language
JLanguageHelper Language
JLDAP Client
JLog Error
JMail Mail
JMailHelper Mail
JMenu Application
JModel Application
JModuleHelper Application
JNode Base
JObject Base
JObservable Base
JObserver Base
JPagination Html
JPaginationObject Html
JPane Html
JPaneSliders Html
JPaneTabs Html
JParameter Html
JPath Filesystem
JPathway Application
JPlugin Plugin
JPluginHelper Plugin
JProfiler Error
JRecordSet Database
JRegistry Registry
JRegistryFormat Registry
JRegistryFormatINI Registry
JRegistryFormatPHP Registry
JRegistryFormatXML Registry
JRequest Environment
JResponse Environment
JRoute
JRouter Application
JSession Session
JSessionStorage Session
JSessionStorageApc Session
JSessionStorageDatabase Session
JSessionStorageEaccelerator Session
JSessionStorageMemcache Session
JSessionStorageNone Session
JSessionStorageXcache Session
JSimpleCrypt Utilities
JSimpleXML Utilities
JSimpleXMLElement Utilities
JString Utilities
JTable Database
JTableARO Database
JTableAROGroup Database
JTableCategory Database
JTableComponent Database
JTableContent Database
JTableMenu Database
JTableMenuTypes Database
JTableModule Database
JTablePlugin Database
JTableSection Database
JTableSession Database
JTableUser Database
JTemplate Template
JText
JToolBar Html
JTree Base
JURI Environment
JUser User
JUserHelper User
JUtility Utilities
JVersion
JView Application
patTemplate_Function_Sef
patTemplate_Function_Translate
patTemplate_Modifier_SEF
patTemplate_Modifier_Translate

See Also

  1. See also PHP libraries bundled with Joomla!
  2. See also JavaScript libraries bundled with Joomla!
  3. See also Subpackages
Personal tools
Namespaces

Variants
Actions
Navigation
Joomla! Sites
Toolbox