Framework 7

Bei der Suche nach brauchbaren und kleineren Frameworks für die Entwicklung von Web-Anwendungen bin ich unter anderem über OpenUI gestolpert. Allerdings war das Framework für meine Zwecke etwas zu groß, weshalb ich mich schlussendlich für Framework 7 entschieden habe. Mithilfe des Frameworks ist es möglich Web-Anwendungen zu schreiben, welche unter iOS, Android und auf dem Desktop laufen. Neben der Ausführung im Browser ist es daneben möglich Apps für die mobilen Systeme zu bauen. Framework 7 liefert Themes für iOS und Android mit, so das sich die Elemente an das Betriebssystem anpassen.

Eine Beispiel-App, welche mit Framework 7 erstellt wurde

Die offizielle Seite des Projektes ist unter framework7.io zu finden. Der Quelltext des Framework 7 ist auf GitHub zu finden. Der Quelltext des Frameworks ist unter der MIT-Lizenz lizenziert und damit freie Software.

Slim Framework

Für wahrscheinlich jede Programmiersprache existieren mehr oder weniger viele Frameworks, welche dem Entwickler bestimmte Aufgaben abnehmen und somit die Entwicklung beschleunigen. Neben den größeren Framework existieren auch eine Reihe von Frameworks mit einem minimalistischeren Ansatz. Eines dieses sogenannten Microframeworks ist Slim. Entwickelt wird und wurde Slim für PHP.

slimframework.com

Slim eignet sich sehr gut für die Umsetzung für REST-APIs bzw. RESTful Webservices. Um ein Projekt zu erstellen, kann der Paket- bzw. Dependency-Manager Composer genutzt werden:

composer create-project slim/slim-skeleton exampleapp

Damit wird ein Grundprojekt angelegt mit welchem gearbeitet werden kann. Auch von seitens des Swagger-Toolings wird Slim unterstützt. So kann eine API über den Swagger-Editor definiert werden und anschließend für das Slim-Framework exportiert werden. Der Quelltext des Frameworks ist auf GitHub zu finden. Es ist unter MIT-Lizenz lizenziert und damit freie Software. Die offizielle Seite des Projektes ist unter slimframework.com zu finden.

Alben von Imgur herunterladen

Imgur ist ein kostenloser Hosting-Dienst für Bilder. Die Bilder können bei Imgur zu Alben zusammengefasst werden. Leider gibt es keine einfache Möglichkeit direkt bei Imgur die Bilder eines Albums herunterzuladen. Abhilfe bei diesem Problem schafft der Imgur Album Downloader von Daniel Schep.

Die Oberfläche des Imgur Album Downloader

Über den Imgur Album Downloader wird das gewünschte Album geladen. Anschließend können die Bilder selektiert werden, welche heruntergeladen werden sollen. Danach kann der Download gestartet werden und nach einer kurzen Vorbereitungszeit liegen die Bilder auf des Festplatte. Der Quelltext des Imgur Album Downloader ist auf GitHub zu finden. Er ist unter der MIT-Lizenz lizenziert und damit freie Software.

Composer für PHP nutzen

Composer ist ein Paket- bzw. Dependency-Manager für PHP. Damit ist es möglich die Abhängigkeiten von PHP-Projekten komfortabel zu verwalten und aktuell zu halten. Dazu wird in dem Projekt eine Datei mit dem Namen composer.json angelegt. In dieser Datei finden sich die Abhängigkeiten für das Projekt:

{
  "minimum-stability": "RC",
  "require": {
    "slim/slim": "3.*"
  }
}

Um diese Abhängigkeiten initial dem Projekt hinzuzufügen, muss der Befehl:

composer install

eingegeben werden. Anschließend werden die Abhängigkeiten aufgelöst und heruntergeladen:

Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 6 installs, 0 updates, 0 removals
  - Installing psr/container (1.0.0): Loading from cache
  - Installing container-interop/container-interop (1.2.0): Loading from cache
  - Installing nikic/fast-route (v1.3.0): Loading from cache
  - Installing psr/http-message (1.0.1): Loading from cache
  - Installing pimple/pimple (v3.2.3): Loading from cache
  - Installing slim/slim (3.12.1): Loading from cache
Writing lock file
Generating autoload files

Nach der initialen Installation, finden die sich die Abhängigkeiten im Ordner vendor. Daneben wird eine composer.lock-Datei angelegt. In dieser sind die genauen Versionsnummern, der installierten Abhängigkeiten hinterlegt. Würde das Projekt nun nochmal mit der install-Option aufgerufen werden, so würden exakt diese Versionen installiert. Sollen diese Abhängigkeiten später aktualisiert werden, kann dafür der Befehl:

composer update

genutzt werden. Dabei werden die Versionen, welche sich in der composer-lock-Datei befinden ebenfalls aktualisiert.

getcomposer.org

Bezogen werden kann Composer unter anderem auf der offiziellen Seite unter getcomposer.org. Der Quelltext von Composer ist auf GitHub zu finden. Die Software ist unter der MIT-Lizenz lizenziert und damit freie Software.

The Twelve-Factor App

Softwareentwicklung ist ein komplexes Pflaster. Da ist es praktisch, wenn der geneigte Entwickler eine Methodologie an die Hand bekommt, welche das Ergebnis der Entwicklung verbessert. Eine solche Methodologie ist die The Twelve-Factor App. Diese ursprünglich 2011 vorgestellte Methodologie kommt mit besagten zwölf Punkten aus. Diese führen von der Codebasis über die Abhängigkeiten bis hin zum Deployment. Zielgruppe der Methodologie sind Applikationen, welche als Service laufen.

12factor.net

Neben dem englischen Original existieren eine Reihe von Übersetzungen; unter anderem in die deutsche Sprache. Gelesen werden kann die Dokumentation der Methodologie unter 12factor.net. Lizenziert ist die Webseite unter der MIT-Lizenz und damit freie Software. Der Quelltext ist auf GitHub zu finden.