24
Nooku Server, Molajo & Co. Joomla! Forks. Oder Distributionen. David Jardin - SistaSystems - JoomlaDay Deutschland 2011

Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Embed Size (px)

DESCRIPTION

My presentation about Joomla Distributions which i gave at the German JoomlaDay 2011 in Hamburg.

Citation preview

Page 1: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Server, Molajo & Co.

Joomla! Forks. Oder Distributionen.

David Jardin - SistaSystems - JoomlaDay Deutschland 2011

Page 2: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Ich

• David Jardin, 21

• gelernter Abiturient

• Webentwickler

• Joomla!-Freak

• Stellv. Vorsitzender Mambo e.V.

Page 3: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Ein Fork.Konfuzius sagt:

„Eine Abspaltung (auch Fork) ist in der Softwareentwicklung ein Entwicklungszweig nach der Aufspaltung eines Projektes in zwei, wobei Teile des Quelltextes und seiner Historie kopiert werden und dann unabhängig von dem ursprünglichen Projekt weiterentwickelt werden“

Quelle: Wikipedia

Page 4: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Bestes Beispiel:

Page 5: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

„Eine Distribution ist eine Zusammenstellung von Software, die als Komplettpaket weitergegeben wird.

Eine Distribution.

Konfuzius sagt:

Quelle: Wikipedia

Page 6: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks
Page 7: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

• Entstanden aus der „All together as a whole“-Initiative (ataaw.org)

• kleines aber feines Team

• als Distribution geplant, jetzt Applikation basierend auf der Joomla! Plattform

• Ziel: Joomla 1.7 mit mehr Nutzerfreundlichkeit

Page 8: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Bestandteile

• Vereinfachung des ACL Systems

• Verbesserung des MVC Frameworks

• Construct Template Framework

• Verbesserungen des Routers

• Minima Admin Template

• Integration der Admin Tools

Page 9: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Construct Template Framework

• schlankes Template Framework

• 40 Modulpositionen

• Mobiloptimierung

• erweiterte Template Overrides: z.B. ein Override für eine bestimmte Kategorie

Page 10: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Minima Template

Selber gucken.

Page 11: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Server

Fork/Distribution von Joomla 1.5

Nooku Framework

MVC RAD Framework

Nooku Desktop

Desktop Client zur

Administration

Nooku PlattformBasis für den Betrieb von Webanwendungen

Page 12: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Johan Janssens

Page 13: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

„Es war einmal...“• Relaunch für die belgische Polizei

• Bedarf einer Multisite Version von Joomla -> Nooku Server

• Bedarf eines MVC Frameworks zur Erweiterungsentwicklung -> Nooku Framework

• Veraltete Behördenrechner-> Nooku Desktop

Page 14: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Framework

„a new brain for Joomla!“

Page 15: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Framework

• objektorientiertes MVC Framework

• nutzt keine Joomla! Bibliotheken

• RESTful Architektur

• basierend auf aktuellen Designpatterns

• schlank und flexibel

• DRY-Konzept

Page 16: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

easybook.php vorher<?phpdefined( '_JEXEC' ) or die( 'Restricted access

// Require the base controllerrequire_once( JPATH_COMPONENT.DS.'controller.php' );

// Require specific controller if requestedif($controller = JRequest::getWord('controller')) { $path = JPATH_COMPONENT.DS.'controllers'.DS.$controller.'.php'; if (file_exists($path)) { require_once $path; } else { $controller = ''; }}

// Create the controller$classname = 'EasybookController'.$controller;$controller = new $classname( );

// Perform the Request task$controller->execute( JRequest::getVar( 'task' ) );

// Redirect if set by the controller$controller->redirect();

?>

Page 17: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

easybook.php nachher

// Create the controller dispatcherecho KFactory::get('site::com.easybook.dispatcher')->dispatch();

Page 18: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

controller.php vorherclass EasybookControllerEntry extends EasybookController{ /** * Edit a entry and show the edit form * * @acces public * @since 1.5 */ function edit() { $user = & JFactory::getUser();

// Make sure you are logged in if ($user->get('aid', 0) < 1) { JError::raiseError( 403, JText::_('ALERTNOTAUTH') ); return; }

JRequest::setVar('view', 'entry'); JRequest::setVar('layout', 'form');

$model =& $this->getModel('entry'); $model->checkout();

parent::display(); }

...

137 Zeilen

Page 19: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

controller.php nachher

class ComEasybookControllerEntry extends KControllerService { }

3 Zeilen

Page 20: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Eigene Erfahrungswerte

• 70-80% weniger Code

• 50% kürzere Entwicklungszeit

• mehr Flexibilität

• mehr Spaß

Page 21: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Server

• ursprünglich Multi-Site Version von Joomla 1.5

• hat sich zum Joomla 1.5 Fork entwickelt

• „Joomla 1.5“ auf Diät

• kein Legacy Layer, Pat Template, XML-RPC

• 45% weniger Code!

• Reduzierung auf Kern-Funktionalitäten

Page 22: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Desktop

Page 23: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Nooku Desktop

• Desktop Applikation zur Administration von Nooku Server Seiten

• bringt eigene Rendering Engine mit

• sehr rudimentäres Tool

• „klickibunti“-Feeling für den Endkunden

Page 24: Nooku, Molajo & Co - Joomla! Distributionen. Oder Forks

Links

Nooku.org Molajo Minima

David Jardin

@snipersisterwww.sistasystems.de