© sfriessner/Shutterstock.com
Entwickler Magazin
Auf dem Büffel durch die Weiten des Webs

Go Buffalo

Die Weiten des Webs lieben Go. Aber auf der Suche nach dem passenden Web-Framework kann man sich leicht verirren. Die Suche hat jetzt ein Ende, denn mit Buffalo lernt ihr das vollständigste Ökosystem für Webanwendungen mit Go kennen. Mit diesem Büffel seid ihr auf jedem Ritt durch die Weiten des Webs richtig unterwegs.

Jan Stamer


Buffalo [1] ist ein ganzes Ökosystem zur Entwicklung von Webanwendungen in Go. Routing, Templating und Testing werden von Buffalo zu einer Webanwendung nach dem Model-View-Controller-Ansatz [2] kombiniert. Die Peitsche schwingt dabei ein mächtiges Tooling mit Hot-Code-Reload, einem Codegenerator für Views und Controller und zur Automatisierung wiederkehrender Aufgaben, wie JavaScript komprimieren oder Datenbankskripte einspielen. Dazu kombiniert Buffalo bestehende Bibliotheken, wie das Webtoolkit Gorilla [3], mit Best Practices der Go-Webentwicklung, wie einer einheitlichen Struktur für Packages und Verzeichnisse oder dem Handling der Datenbank-Session. Buffalo erfindet also nichts neu, sondern kombiniert Bestehendes zu einem Ökosystem für Webanwendungen mit Go. So kann jeder Cowboy das auswählen, was er für seine Reise durch die Weiten des Webs braucht.

Cowboy George baut ein REST API für die Best Western Bank mit Postgres im Backend und nutzt das Routing und die Datenbankanbindung. Cowgirl Abby braucht Templating und die Asset-Pipeline für ihre Webanwendung zur Tischreservierung im Klondike Saloon. Jetzt aber genug der Worte, satteln wir die Pferde damit ihr Greenhorns endlich was über Buffalo lernt.

Als erste Buffalo-Anwendung bauen wir ein REST API mit Cowboy George. Als zweite Buffalo-Anwendung helfen wir Cowgirl Abby bei ihrer Webanwendung mit Frontend für den Klondike Saloon.

Let’s go, Buffalo

Bevor es losgeht, müssen wir Buffalo erst noch installieren. Das geht am einfachsten über go get -u -v github.com/gobuffalo/buffalo/buffalo oder wie in der Buffalo-Dokumentation [4] beschrieben. Jetzt sollte der Befehl buffalo auf der Kommandozeile die Buffalo-Hilfe ausgeben. Buffalo unterstützt Go Modules [5] zur Verwaltung der Package Dependencies, also aktivieren wir Go Modules mit der Umgebungsvariable GO111MODULE=on.

Cowboy Georges REST API

Als Erstes folgen wir den Spuren von Cowboy George und seines REST API für die Best Western Bank. George erstellt das Grundgerüst für seine neue Buffalo-Webanwendung mit dem Kommandozeilentool buffalo. Der Befehl buffalo new bwb --api erzeugt eine neue Buffalo-Webanwendung ohne Frontend (daher der Zusatz --api). George hat jetzt eine vollständige und lauffähige Webanwendung für seinen Kunden Best Western Bank im Verzeichnis bwb. Schauen wir uns an, was Buffalo generiert hat.

Wegweiser durch die erste Buffalo-App

Der Startpunkt einer Buffalo-Anwendung ist die Datei main.go im Wurzelverzeichnis der Anwendung. Die main.go lieg...

Entwickler Magazin
Auf dem Büffel durch die Weiten des Webs

Go Buffalo

Die Weiten des Webs lieben Go. Aber auf der Suche nach dem passenden Web-Framework kann man sich leicht verirren. Die Suche hat jetzt ein Ende, denn mit Buffalo lernt ihr das vollständigste Ökosystem für Webanwendungen mit Go kennen. Mit diesem Büffel seid ihr auf jedem Ritt durch die Weiten des Webs richtig unterwegs.

Jan Stamer


Buffalo [1] ist ein ganzes Ökosystem zur Entwicklung von Webanwendungen in Go. Routing, Templating und Testing werden von Buffalo zu einer Webanwendung nach dem Model-View-Controller-Ansatz [2] kombiniert. Die Peitsche schwingt dabei ein mächtiges Tooling mit Hot-Code-Reload, einem Codegenerator für Views und Controller und zur Automatisierung wiederkehrender Aufgaben, wie JavaScript komprimieren oder Datenbankskripte einspielen. Dazu kombiniert Buffalo bestehende Bibliotheken, wie das Webtoolkit Gorilla [3], mit Best Practices der Go-Webentwicklung, wie einer einheitlichen Struktur für Packages und Verzeichnisse oder dem Handling der Datenbank-Session. Buffalo erfindet also nichts neu, sondern kombiniert Bestehendes zu einem Ökosystem für Webanwendungen mit Go. So kann jeder Cowboy das auswählen, was er für seine Reise durch die Weiten des Webs braucht.

Cowboy George baut ein REST API für die Best Western Bank mit Postgres im Backend und nutzt das Routing und die Datenbankanbindung. Cowgirl Abby braucht Templating und die Asset-Pipeline für ihre Webanwendung zur Tischreservierung im Klondike Saloon. Jetzt aber genug der Worte, satteln wir die Pferde damit ihr Greenhorns endlich was über Buffalo lernt.

Als erste Buffalo-Anwendung bauen wir ein REST API mit Cowboy George. Als zweite Buffalo-Anwendung helfen wir Cowgirl Abby bei ihrer Webanwendung mit Frontend für den Klondike Saloon.

Let’s go, Buffalo

Bevor es losgeht, müssen wir Buffalo erst noch installieren. Das geht am einfachsten über go get -u -v github.com/gobuffalo/buffalo/buffalo oder wie in der Buffalo-Dokumentation [4] beschrieben. Jetzt sollte der Befehl buffalo auf der Kommandozeile die Buffalo-Hilfe ausgeben. Buffalo unterstützt Go Modules [5] zur Verwaltung der Package Dependencies, also aktivieren wir Go Modules mit der Umgebungsvariable GO111MODULE=on.

Cowboy Georges REST API

Als Erstes folgen wir den Spuren von Cowboy George und seines REST API für die Best Western Bank. George erstellt das Grundgerüst für seine neue Buffalo-Webanwendung mit dem Kommandozeilentool buffalo. Der Befehl buffalo new bwb --api erzeugt eine neue Buffalo-Webanwendung ohne Frontend (daher der Zusatz --api). George hat jetzt eine vollständige und lauffähige Webanwendung für seinen Kunden Best Western Bank im Verzeichnis bwb. Schauen wir uns an, was Buffalo generiert hat.

Wegweiser durch die erste Buffalo-App

Der Startpunkt einer Buffalo-Anwendung ist die Datei main.go im Wurzelverzeichnis der Anwendung. Die main.go lieg...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang