+ All Categories
Transcript
Page 1: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Tipps und Tricks für Erweiterungs-

entwickler

JoomlaDay Germany – Köln - 2014

Page 2: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

Gliederung• Vorstellung

• Joomla! API / vorhandene Funktionen nutzen

• Entwicklungsumgebung (IDE / Lokale Serverumgebung)

• Workflow bei der Entwicklung (Prozess zur finalen Version)

• Optimierungspotentiale (Allgemein, Phing, Code Sniffer)

• Feedback / Diskussion / Kritik

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Page 3: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Arbeite seit 2005 mit Joomla!o Aktive Teilnahme in der Community

o Bug Squash Team

o Core Contributions

• Privates Joomla! Projekto Kubik-Rubik Joomla! Extensions

o Über 30 kostenlose Erweiterungen

• Joomla! Spezialist bei 1&1

• Freiberuflicher Webentwickler

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Vorstellung

Page 4: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Komponenteno Vollständige Anwendungen innerhalb der Installation

o Eigene Administrationsoberfläche

o Ausgabe der Erweiterung über Views im Hauptbereich

• Pluginso Werden getriggert und arbeiten vorwiegend im Hintergrund

o Sind unterteilt in verschiedene Typen (Content, System...)

o Manipulieren Daten, geben diese nicht aus

• Moduleo Einblendung auf vorgegebenen Templatepositionen

o Ausgabe von Inhalten auf diesen Positionen (Widget)

o Arbeiten meist eng mit Komponenten zusammen (Login-Modul)

• Templateso Definieren die Ausgabe der Website – bieten Platzhalter für Inhalte

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Erweiterungstypen

Page 5: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Joomla! Frameworko Modulares PHP-Framework

o Sammlung von Klassen und Funktionen

o MVC Muster

• Model - Datenmodell

• View - Präsentation

• Controller – Programmsteuerung

• Joomla! CMS APIo Übersicht http://api.joomla.org/

o Ordner libraries

• cms

• joomla

• legacy

• fof

• ....

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Framework – API

Page 6: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• JFactoryo Factory-Muster – je eine Instanz für Objekte

• JFactory::getUser(); // JUser

• JFactory::getDocument(); // JDocument

• JFactory:: getDBO(); // Jdatabase

• ... (siehe libraries/joomla/factory.php)

• JDatabaseo Kommunikation mit der Datenbank

• JInputo Verarbeitung von Abfragen / Requests

• JDocumento Dokumentverarbeitung (HTML, JSON, XML etc.)

• JHtml, JHttp, JMail, JUri, JRoute, JText

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Wichtige Klassen

Page 7: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Rapid Application Development / Framework On Framework

• Häufig benötigte Funktionalitäten mit wenigen Zeilen Code verwendeno Code-Reduzierung von bis zu 80% möglich

o Listenansicht generieren

o Datenbankeinträge anzeigen und manipulieren

• DRY – Don't repeat yourself

• F0F (F Null F) vs. FOFo https://www.akeebabackup.com/home/news/1558-info-about-fof-and-

f0f.html

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

RAD / FOF

Page 8: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Lokaler Webservero PHP + Xdebug und MySQL

o Windows: XAMPP, WampServer, EasyPHP

o Mac: MAMP

o Linux: LAMP

• Texteditoro Notepad++, Sublime

o Integrierte Entwicklungsumgebung: PhpStorm, Netbeans

• Webbrowsero Firefox + Firebug

• Zusätzliche Softwareo FTP-Programm: FileZilla

• http://docs.joomla.org/Setting_up_your_workstation_for_Joomla_development

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Entwicklungsumgebung

Page 9: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Entwicklung stets lokal durchführeno Schneller, aufgrund fehlender Dateiübertragung

o Server-Einstellungen individuell setzbar

• Versionsverwaltung nutzeno Git auf eigenem Server

o Dienste wie GitHub, GitLab

• Debuggen ist einfachero Xdebug

• Projekt in IDE anlegeno Zugriff auf API / Klassen

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Lokaler Webserver

Page 10: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Guten Editor für schnelle Bearbeitungo Encoding beachten

o Keine Auszeichnungssprache (z.B.: Word)

o Notepad++

• IDE – Integrierte Entwicklungsumgebungo Ein MUST HAVE für die Entwicklung

o Auto-Vervollständigung

o Fehlerkorrektur

o Projektverwaltung

o Anbindung an Versionsverwaltungssysteme

o Debugging

o PhpStorm (Java VM – Proprietär – kostenlose Lizenz für OpenSourceEntwickler), NetBeans (Java - GPL)

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Editoren

Page 11: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Der Entwicklungsprozess einer Erweiterungo Idee

o Anforderungen

o Recherche

o Entwicklung

o Tests

o Veröffentlichung

o Aktualisierung

o …

• Die eigentliche Entwicklung ist nur ein Teilprozess

• Andere Phasen benötigen in der Regel mehr Zeit

• Optimierung dieser Teilprozesse empfohlen

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Workflow

Page 12: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Einstellungen in Joomla!o Aktuelle Version verwenden

o Keine Beispieldateien

o Joomla Debugger - Konsolenausgabe

• Session

• Profil-Informationen (Trigger)

• Speicherverbrauch

• Datenbankanfragen

o SEF URL deaktivieren

• Einstellungen in Entwicklungsumgebungo PHP Error Level auf Maximum

o Limits hochsetzen

o PHP Debugger aktivieren

o Pro Projekt eine Joomla! Instanz

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Optimierungspotentiale

Page 13: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Core-Features nutzeno Category

o ACL

o etc.

• Update-Server betreibeno Akeeba Release System

• Flexibilität mit Trigger-Events

• Dokumentation schreiben

• UnitTests / Selenium

• Entwicklungen von anderen Entwicklerno Anschauen, verstehen und lernen

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Optimierungspotentiale

Page 14: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Phing verwendeno Build-System auf Apache Ant-Basis

o PHPUnit und SimpleTest-Unterstützung

o FTP, GIT & SVN-Support

o Plattform unabhängig

o Native Unterstützung in PhpStorm

• CodeSniffer verwendeno Code-Style Überprüfung

o Einhaltung von Coding Standards

o Sauberer, konsistenter Code

o Wartbarkeit und Veständlichkeit

o http://docs.joomla.org/Joomla_CodeSniffer

o PhpStorm kann Code nach dem Standard formatieren

• https://github.com/betweenbrain/phpstorm-joomla-code-style

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Optimierungspotentiale

Page 15: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Kostenlose Erweiterungeno Spenden

o Popularität steigern

• Aufträge

o Subscription-Model

• Support

• Spenden

• Kommerzielle Erweiterungeno Verkauf von Erweiterungen

o Anspruch der Benutzer hoch

• Supportaufwand

• Regelmäßige Updates

o Lizenz GPL erlauben

• Keine Verschlüsselung

• Weitergabe erlaubt

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Geld verdienen

Page 16: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

• Feedback von Benutzern und Entwicklerno Wichtig für eigene Weiterentwicklung

o Ideen sammeln, umsetzen

o Kontakt zu Entwicklern suchen und sich austauschen

• Diskussioneno Meinungsaustausch

• Google Dev Group

• Joomla! Forum

• Lernen, mit Kritik umzugeheno Konstruktive Kritik akzeptieren

o Kritik spornt zur Verbesserung an

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Feedback, Diskussion & Kritik

Page 17: Tipps & Tricks für Erweiterungsentwickler - JoomlaDay Deutschland 2014 - Köln

Danke für eure Aufmerksamkeit!

JoomlaDay Germany 2014 - Tipps und Tricks für Erweiterungsentwickler – Viktor Vogel - @viktorvogel

Happy Coding! :-)


Top Related