[vz-dev] VZ Codebasis, Unit-Tests, und so

Andreas Goetz cpuidle at gmail.com
Sat Nov 16 10:23:09 CET 2013


Hier nochmal ein  Beispiel zu "lessons learned" bzgl. Composer aus der
Reimplementierung meiner VideoDB Applikation (videodb.net):

1. Ich möchte meinen Code in eine Library verwandeln. Dafür kann ich
entweder alles in Komponenten verpacken oder ich nutze bestehende.
2. Also switche ich von meinem httpClient auf guzzle:

    "require": {
        "guzzle/guzzle": "~3.7",
    },

3. Ich möchte http Requests auch cachen und switche dafür von meinem Cache
auf Doctrine (weil der nämlich von Guzzle unterstützt wird):

    "require": {
        "guzzle/guzzle": "~3.7",
        "doctrine/cache": "~1"
    },

4. Ich suche noch Hilfe bei der Fehlersuche während der Entwicklung:

    "require-dev": {
        "filp/whoops": "~1",
        "phpunit/phpunit": "~3.7"
    },

5. Ich brauche einen Autoloader für meinen neuen, besseren Code:

    "autoload": {
        "psr-0": {
            "VideoDB": "."
        }
    }

6. Jetzt noch `composer update` und alles was ich brauche ist an Ort und
Stelle. Einfacher geht's nicht.

Insgesamt weniger als 30min Arbeit und der Code lief ohne dass ein einziger
require Statement notwendig gewesen wäre.

--

Hat alles mit Volkszähler nichts zu tun? Gestern fragte jemand nach
"Grafiken" aus dem VZ. Braucht leider JpGraph- auch da muss sich der Newbie
erstmal durchwühlen. Bei Installation über Composer wär's dabei...

vg
Andreas



2013/11/14 Andreas Goetz <cpuidle at gmail.com>

> 2013/11/12 Robert Ewald <robert+vz at jtro.de>
>
> Genau erklärt wird alles hier: http://getcomposer.org/doc/00-intro.md
>>
>> Vorteile:
>> * vereinfachte Installation von Abhängigkeiten, inklusive von deren
>> Abhängigkeiten
>> * ein sehr gut getesteter Autoloader, der auch für den eigenen Code
>> verwendet werden kann
>> * 3rd-Party-Software wandert in einen eigenen Ordner im Projekt
>>
>>
> Abgesehen davon, dass sich Composer zum defacto Standard für PHP
> Paketmangement zu entwickeln scheint (+/- PEAR) scheint es z.B. von
> Doctrine (http://www.doctrine-project.org/downloads/) auch keine Pakete
> der aktuellen 2.4er Version mehr zu geben.
> Der einzige offzielle Installationsweg scheint mittlerweile Composer zu
> sein.
>
> vg
> Andreas
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-dev/attachments/20131116/c4a8f63d/attachment.html>


More information about the volkszaehler-dev mailing list