how the joomla framework works

135 views
Skip to first unread message

Saumava Das

unread,
Dec 27, 2014, 11:55:08 PM12/27/14
to jooml...@googlegroups.com
Hello guys,

Any one have the tutorial or documentation what is the software design pattern joomla follows currently. The 'fof' can be viewed on the library, there is another folder here named 'Symfony'.
So Joomla is use Symfony framework?  

- Regards,
Saumava
  

George Wilson

unread,
Dec 28, 2014, 10:44:24 AM12/28/14
to jooml...@googlegroups.com
Hi,
Joomla's library does not use Symfony. The main libraries it uses are located in:
libraries/cms
libraries/joomla
libraries/legacy
libraries/vendor/joomla

as of Joomla 3.4 alpha. The symfony library is only there to provide the YAML package, which although isn't used by the CMS itself is an option for importing YAML data into our Registry package (which you can find out more about here: https://github.com/joomla-framework/registry)

As to the structure of the CMS, the files between the 4 folders mentioned above go as follows. The stuff in libraries/joomla contains largely the defunct Joomla Platform project (https://github.com/joomla/joomla-platform). Whilst the platform project is deprecated the code within this folder is not

The code in libraries/vendor/joomla is part of the Platform replacement Joomla Framework (more info here: http://framework.joomla.org/). Many of the platform classes which share code with the framework class are slowly being extended from the framework class (since the coming release of Joomla! 3.4).

The code in libraries/legacy contains code that used to be in the platform but is now considered deprecated. Note there are a limited number of classes in there that were deprecated by the platform project but are NOT deprecated (for example JCategories and some of the JTable instances) but as a good rule of thumb it's deprecated code.

Finally the code in libraries/cms contains code specific to the CMS that is not intended to be used outside of the CMS environment (things like our own pagination class, the class for rendering components etc.).

FOF is a library to rapidly produce 3rd party extensions - and has some classes (like the things for 2 factor authentication) that are in the CMS. However we are moving most of the more useful FOF classes into core and by Joomla 4 this will likely no longer be included with Joomla. FOF is produced and maintained by Akeeba and there is a full set of developer documentation for it here: https://www.akeebabackup.com/documentation/fof.html.

Hope this helps!

Kind Regards,
George

Tom Hutchison

unread,
Dec 28, 2014, 10:55:21 AM12/28/14
to joomla-docs
Hi Saumava


FoF is another option for developing a component.


Thanks
Tom

--
You received this message because you are subscribed to the Google Groups "Joomla! Documentation" group.
To unsubscribe from this group and stop receiving emails from it, send an email to joomla-docs...@googlegroups.com.
To post to this group, send email to jooml...@googlegroups.com.
Visit this group at http://groups.google.com/group/joomla-docs.
For more options, visit https://groups.google.com/d/optout.



--
----
Tom Hutchison
Joomla! Production Leadership Team

Saumava Das

unread,
Jan 5, 2015, 11:28:11 PM1/5/15
to jooml...@googlegroups.com
Thanks George.So currently joomla is using ymal ? 

Tom Hutchison

unread,
Jan 7, 2015, 8:11:43 AM1/7/15
to jooml...@googlegroups.com
Saumava 

Please read again. 

as of Joomla 3.4 alpha. The symfony library is only there to provide the YAML package, which although isn't used by the CMS itself is an option for importing YAML data into our Registry package (which you can find out more about here: https://github.com/joomla-framework/registry)

The CMS is not itself using symfony. It is one of a few options for importing data into the Registry package. 

Tom

--
Reply all
Reply to author
Forward
0 new messages