+ Antworten
Ergebnis 1 bis 4 von 4

Thema: Erweiterungen für Lernzwecke analysieren

  1. #1
    War schon öfter hier
    Registriert seit
    10.06.2009
    Beiträge
    126
    Bedankte sich
    24
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard Erweiterungen für Lernzwecke analysieren

    Hallo,

    ich habe vor mich mit der Entwicklung/Anpassung von Erweiterungen für 1.6 zu beschäftigen. Nachdem ich 2 Bücher (für 1.5) zu diesem Thema gelesen habe, möchte ich mir verschiedene Module genauer ansehen um so etwas tiefer in die Materie einzusteigen.

    Dabei will ich den Code Zeile für Zeile durchgehen und "übersetzen". Dadurch möchte ich verschiedene Methoden verstehen und lernen.

    Beispiel:

    require_once (dirname(__FILE__).DS.'helper.php');
    // bindet die externe Datei helper.php direkt in das Script ein. Die Konstante __FILE__ von PHP enthält den vollständigen Pfadangabe

    Dazu suche ich noch Leute die Lust haben mitzumachen. Wie genau das Projekt dann praktiziert wird könnte man noch ausdiskutieren.
    Würde mich freuen wenn sich ein paar Mitstreiter finden lassen.

  2. #2
    Wohnt hier Avatar von aruttkamp
    Registriert seit
    01.09.2004
    Ort
    Bergisches Land
    Alter
    49
    Beiträge
    2.934
    Bedankte sich
    112
    Erhielt 453 Danksagungen
    in 429 Beiträgen

    Standard

    Hallo kurtmos,

    es gibt doch schon eine Menge Tutorials zur Entwicklung von Komponenten / Modulen und Plugins.
    Was möchtest du anders machen ?
    Ein zeilenweises kommentieren von Source halte ich persönlich nicht für sonderlich sinnvoll.

    Wie soll das ganze dann "der Öffentlichkeit" präsentiert werden ?
    Als Wiki ? Als Buch ? Als Download ?

    Vielleicht kannst du da noch ein wenig mehr "ausplaudern"

  3. #3
    War schon öfter hier
    Registriert seit
    10.06.2009
    Beiträge
    126
    Bedankte sich
    24
    Erhielt 5 Danksagungen
    in 5 Beiträgen

    Standard

    Hallo aruttkamp,

    die APIs sind für einen Einsteiger kaum zu überschauen. Viele Turorials setzen viel Vorkenntnisse vorraus und sind nicht immer leicht verständlich.
    Ich möchte nichts anders machen sondern mich mit der Materie beschäftigen und verstehen wie man was erreicht. Wenn ich ein Modul habe, dann kenne ich die Funktionen bzw. was das Modul macht. Am Code will ich lernen wie dies erreicht wurde.

    Ein zeilenweises Kommentieren macht den Einstieg einfacher.
    Der folgende Block ist für den Einsteiger doch nicht zu verstehen. Erst wenn man die API durcharbeitet, das Fabrik-Muster JFactory und in die Klassen eintaucht, kommt Licht ins Dunkle.

    $document = &JFactory::getDocument();
    $document->addStyleSheet('modules/mod_count_down_big/count_down_big.css');
    $css = '.cdub_color{color:'.$color.';}'."\n";
    $document->addStyleDeclaration($css);

    Es soll aber nicht jede if-Schleife kommentiert werden.

    An die Öffentlichkeit habe ich noch nicht gedacht. Es geht primär um das Erlernen an konkreten Beispielen.
    Interessant wäre auch zu diskutieren, warum der Coder seinen Weg und keinen anderen genommen hat.

    warum so:
    require_once(JModuleHelper::getLayoutPath('mod_tes t'));

    und nicht so:
    require_once (dirname(__FILE__).DS.'default.php'

    Ich bin kein Informatiker sondern mache dies aus Spaß.

  4. #4
    Neu an Board
    Registriert seit
    11.02.2006
    Beiträge
    24
    Bedankte sich
    0
    Erhielt 3 Danksagungen
    in 3 Beiträgen

    Standard

    Hi kurtmos,

    ja es mag schon sein das viele Tuts gewisse Vorkenntnisse vorraus setzen, was ja aber nicht unbedingt so falsch ist.
    Allerdings sind in einer ganzen Menge an Tuts auch Fehler drin, oder es wird nicht erläutert wieso und weshalb etwas so ist und nicht so.

    warum so:
    require_once(JModuleHelper::getLayoutPath('mod_tes t'));
    require, require_once, include und include_once sind Statements, KEINE Funktionen, auch ist es gut für JModuleHelper::getLayoutPath gleich noch ein default Layout zu setzen, somit wäre es besser so:
    require JModuleHelper::getLayoutPath('mod_test' , $params->get('layout', 'default'));

    Was die Factory angeht
    $document = &JFactory::getDocument();
    nun wer wirklich noch PHP4 aufem Server hat, der hat eh nicht mehr alle Tassen im Schrank^^ und schreibt es so, nutzt du PHP5 kannst Du das liebe & Zeichen weg lassen.

    Auch fein ist der Directory Separator und die schönen Pfade ala
    $path = 'ordner'.DS.'ordner'.DS.'ordner'.DS.'file.ext';
    da PHP aber im Grunde selbst so schlau ist und erkennt das es auf Windoof läuft, kann man sich son path auch sparen und einfach / nutzen.

    Und ganz ehrlich, ich würde mich an Deiner Stelle nicht so auf die Joomla Beispiele verlassen, nur weils nen häufig genutztes CMS ist heist das nicht das der Code an jeder Stelle qualitativ gut ist :P
    schau Dir zum Spass mal die Module Helper von Joomla 1.6 an... Da kann man eigentlich nur zu der Aussage kommen: Zu viele Köche verderben den Brei!
    Einen einheitlichen Standard sucht man dort vergeblich xD und das manche Core Klassen die schon seit 1.5 existieren nicht ordentlich in PHP5 umgeschrieben wurden ist fast schon peinlich, bei kA warens 2 oder 3 Jahre Entwicklung für 1.6
    Geändert von RedEye (22.02.2011 um 06:46 Uhr)

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein