Monday, January 28, 2008

My First Joomla Sense

Open Source CMS of Joomla



For some people think, why use CMS? or like my bos said "Joomla, ohh.. is good, but why PHP, I hate PHP". We cannot insist that Joomla now become a best CMS (for my personal review).

At year 2005 the first time I make introduction with this CMS, if feel so comfortable to use it. This CMS make me easy to manage my site, makes some changes without rebuild my whole site. Even it use PHP for me that not a reason for us to judge a technology that give use good benefit.

Now, there's so many open source and free CMS engine at this planet. Same as Linux, each CMS give use different usage, like Joomla it good for commercial site, etc.

So, why Joomla? Joomla has fix their engine at their latest release, the version 1.5; now Joomla has fully support the OOP for their engine, make use to manage and create better site management system. Like what I did now with Joomla helping me to build my personal site that will launch soon and Pharmacy Stockist system.

Latest of their engine has follow latest technology called MVC (Model View Controller). This make us easier to build site and with controlled process flow.

I will describe what I just know about this MVC. MVC give use benefit to divide our site process into three section:
  1. First called Model, the model give us access to controll data from between user request with our database. With model we can control each data that requested by user and keep the data that we won't show to them.
  2. Second is View, the view give us control to manage site visual which will display any request that have been made by user. This will include viewing data from database or others.
  3. The last is called Controller, this is the most significant for MVC site engine. The controller will organize user navigation so the user can know where they're going.


This schema will show how to understand about MVC:





From schema above I will explain about the flows:
  1. User will navigate into our website and handled by controller. The controller will filter the request from user (including task, section, categories, etc). After controller decide where the flow then it will needs view or model.
  2. The view and model will be optional depend in which way we give visual display for user. For example we just want to show "Hello World" at the page, we just need only view. But if we need to display data list from data base then we need a model to load the data and displayed with view.
  3. The relationship between controller and view is absolute. But relationship between controller and model or model and view will be optional depend on our component need access into database or not.


At the next chapter I will give some sample code about designing MVC at Joomla. I hope this articles give another perspective about Open Source CMS. It's free and also secured.



Writer notes: Sorry for bad english, this is my first time writing blog in English version.

No comments: