cmClasses - eine PHP Klassenbibliothek
Übersicht
Fakten:
Paketname: cmClassesVersion: 0.6.8:626
Datum: 2010-03-26
Klassen: über 540
Testabdeckung: 35% steigend
Download: via Google Code
Dokumentation: API Referenz
Lizenz: GPL 3
Diese Klassen sind wiederverwendbar und beschleunigen die Entwicklung eines Projekts deutlich.
Somit kann man einfach und schnell beispielsweise:
- Web Applikationen erzeugen
- Dateien vieler Formate lesen und schreiben
- Informationen erzeugen und verwalten
- mit anderen Diensten kommunizieren
Der offizielle Name der Klassensammlung ist cmClasses.
Die gesamte Klassensammlung steht kostenlos als Open Source Software zum Download bereit.
Paketstruktur
Innerhalb der Klassensammlung sind die Klassen thematisch sortiert.
Jeder Bereich besitzt spezialisierte Unterbereiche.
Die wichtigsten Hauptbereich sind:
- ADT (Abstract Data Types)
- Abstrakte Datentypen wie Graphen, Bäume, erweiterte Listen, JSON oder auch Zeit und Datum.
- Alg (Algorithm)
- Algorithmen zum z.B. Suchen, Sortieren und Validieren.
- Console
- Direkte Programmausführung ohne Browser und WebServer. Server-Anwendungen.
- DB (Database)
- Datenbankansteuerung und Anfragesprachen.
- File (File Access)
- Klassen zum Auflisten, Auslesen und Schreiben unterschiedlicher Dateiformate.
- Net (Network)
- Implementierung verschiedener Protokolle und Kommunikationskanäle für Netzwerke.
- XML
- Klassen zum Lesen, Erzeugen und Verändern von XML-Daten in diversen Formaten (WDDX, RSS, Atom, OPML, etc.) unter Verwendung von DOM, XSLT und SimpleXML.
- UI (User Interface)
- Klassen zur Erzeugung von (X)HTML und Grafiken für grafische Benutzerschnittstellen.
Beispielklassen
Für Applikationen oder Services für das Internet werden einige Funktionalitäten sehr häufig benötigt.
Die Nutzung vorhandener Klassen spart nicht nur Implementierungszeit sondern steigert auch die Qualität des Produkts.
Häufig benutzt Klassen sind etwa:
- ADT_List_Dictionary
- Grundlage für viele Klassen, die Daten in Form einer assoziativen Liste halten.
- Database_TableReader
- Lesen einer Datenbank-Tabelle ohne manuell SQL-Anfragen zu stellen.
- File_RegexFilter
- Finden und Auflisten der Dateien und Ordner in einem Verzeichnis mit Filterfunktion nach Namen.
- UI_HTML_Elements
- Erzeugen des XHTML-Codes für Formularelemente und typische XHTML-Komponenten.
- UI_Image_ThumbnailCreator
- Erzeugen von Kleinbildern von grösseren Bildern, meist in Verbindung mit Upload-Formularen.
- UI_Image_Captcha
- Erzeugen von CAPTCHA-Bildern für Formulare, die nur durch Menschen ausgefüllt werden sollen.
- Net_HTTP_PartitionSession
- Sicherer Umgang mit Session-Informationen (unterbindet Session-Hijacking und Kollisionen).
- XML_RSS_Builder
- Erzeugen von RSS Feeds, häufig benutzt für Blogs, Webseiten, auch als Web Services integrierbar.
Voraussetzungen und Installation
Voraussetzung für die Nutzung der Klassensammlung ist ein Web Server mit installiertem PHP 5.Einige Klassen nutzen Module von PHP, die ggfs. installiert oder aktiviert werden müssen.
Die Klassensammlung ist ein einzelner Ordner mit Unterordner.
Damit die Klassen von jeder beliebigen Position aus geladen werden können, muss dem PHP der Installationspfad der Klassensammlung bekannt gemacht werden.
Für Web Server ohne Zugriff auf die Konfiguration steht ein Script zur Integration bereit.
Die genauen Installationsanweisungen finden Sie in der Wiki Dokumentation.
Die Klassensammlung wird neben dem Download auch über ein SVN Repository bereit gestellt und kann somit sehr einfach und schnell aktualisiert werden.





