MCMS DevDoc

Entwicklerhandbuch :: Grundlagen :: Entwicklungstools

Entwicklungstools

Übersicht Dateien und Verzeichnisse

Allgemeines

Prinzipiell kann das MCMS mit jedem beliebigen Editor bearbeitet und erweitert werden. Zur Optimierung des Entwicklungsprozesses gibt es jedoch einige "Best Practices", welche den Aufwand für Nebensächlichkeiten reduzieren können und mehr Zeit für die eigentliche Aufgabe lassen.

Software

Bei der Umsetzung einer Webanwendung steht man üblicherweise vor mehreren verschieden Aufgabenbereichen in der Entwicklung.

Empfohlen wird:

Frontend
Dreamweaver (>=CS5.5)
Backend
Eclipse 4.5 (mit: Subversion/PDT/WPML)
Versionierung
Subversion (Windows: TortoiseSVN)
GIT ist möglicherweise auch verwendbar, jedoch fehlten diesem (zumindest in früheren Versionen) einige Möglichkeiten, welche das Leben bei größeren Projekten leicher machten (Rechteverwaltung auf Zweige, Alternative zu svn:externals,...)
Sonstiges Tools
npm, composer, php-cli

Projektsetup

Gute Erfahrungen wurden mit folgender Vorgehensweise gemacht:

  1. Erstellen eines neuen PHP-Projektes in Eclipse:
    • Ein Verzeichnis "src" für die Webdaten, hierin die benötigten Verzeichnisse für die geplanten Anpassungen und die Konfiguration (üblicherweise mindestens cfg, layoutx, modulex)
    • Ein Verzeichnis "model" für die WPML-Modelle
    In src weden nun noch die Index-Dateien (diese müssen exterm selten aktuallisiert werden) index.php, admin.php, service.php, adminservice.php und cron.php kopiert. Das restliche CMS wird über svn:externals in src verlinkt, der Wert für diese Einstellung lautet üblicherweise ($VERSION mit der gewünschten Release-Version ersetzten):
  2. https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/api api
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/cli cli
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/component component
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/data data
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/include include
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/install install
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/jscript jscript
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/layout layout
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/lib lib
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/module module
    https://svn.qdevzone.net/svn/qdevzone/php.mammut-cms/branches/$VERSION/src/plugin plugin
    
    Bei der Verwendung von Dreamweaver empfiehlt sich noch folgender svn:ignore-Eintrag für die Verzeichnisse ab src:
    *.LCK
    *.mno
    _notes
    _dev_