Artikelaktionen
Was ist Grok?
Grok ist ein Webapplikationsframework für Python-Entwickler. Es ist sowohl für Anfänger, als auch für sehr erfahrene Programmierer geeignet. Mit Grok kann man agil programmieren. Es ist einfach und leistungsfähig zugleich.
Es gibt viele Web-Frameworks, sowohl für Python als auch für andere Sprachen. Warum ist Grok besser?
- Grok enthält viele fertige Bausteine für anspruchsvolle Webanwendung.
- Grok profitiert von einem hart erarbeiteten Know-how.
Grok ist besser, weil es auf Zope, einem hochentwickelten, objektorientierten Web-Framework aufbaut. Das Beste aber ist: man kann Grok und die überragenden Vorteile von Zope produktiv nutzen, ohne Zope überhaupt zu kennen.
Grok ist agil
Grok zwingt niemanden, kryptische Konfigurationsdateien zu bearbeiten. Stattdessen können Sie einfach in Python programmieren und HTML-Templates erstellen. Darüber hinaus bietet Ihnen Grok auf Knopfdruck zahlreiche eingebaute Funktionen, von der automatischen Formularerzeugung bis hin zur integrierten Objektdatenbank. Mit Grok macht die Entwicklung von Webanwendungen einfach Spaß!
Ein ausführliches Tutorial hilft Ihnen beim Start. Und mit grokproject können Sie Ihre erste Webanwendung im Handumdrehen erstellen.
Funktionsfähige Bausteine
Grok nutzt eine breite Palette funktionsfähiger Bausteine von Zope. Diese Zope-Komponenten sind aufgrund ausgiebiger Unit-Tests durch und durch solide und besitzen eine ausführliche API-Dokumentation.
Die Summe jahrzehntelanger Erfahrung
Grok schöpft aus dem hart erarbeiteten Wissen von Zope. Zope ist ein leistungsfähiges, sicheres und hoch flexibles Web-Framework für Python, dessen Wurzeln bis in das Jahr 1997 zurückreichen. Die Zope-Community, in der Grok entstanden ist, gibt es nicht erst seit gestern. Sie hat viel entwickelt und viel gelernt. Die Summe aller Erfahrung steckt nun in Grok.
Die Zukunft von Grok
Erfolgreiche Webanwendungen sind keine Eintagsfliegen, sie müssen über viele Jahre gewartet, vergrößert und weiterentwickelt werden. Zope-Entwickler wissen das. Grok bietet mit Zope eine Architektur, die es Ihnen ermöglicht, Ihre Anwendung mit der Zeit organisch weiter zu entwickeln.
Die Größe und Vitalität der Zope-Community, die unter dem Dach der unabhängigen Zope-Foundation organisiert ist, gibt Ihnen die Gewissheit, eine Technologie einzusetzen, die auch morgen und übermorgen noch state-of-the-art ist.
Grok: Zope für Neanderthaler
Grok steht auf den mächtigen Schultern eines Riesen: Zope ist ein hoch entwickeltes, objektorientiertes Web-Framework. Zope enthält eine umfangreiche API-Dokumentation und steht für Zuverlässigkeit und Flexibilität. Die Testabdeckung ist mit vielen tausend Tests umfassend. Es hat eine breite Palette von Kernfunktionen und kann mit einer enormen Zahl von Plug-in-Komponenten erweitert werden.
Grok-Entwickler finden Zope großartig. Leider hat es für den Einsteiger hohe Hürden. Und sogar erfahrene Entwickler werden durch die Notwendigkeit, Schnittstellen zu spezifizieren und Konfigurationsdateien zu schreiben, bei der Arbeit ausgebremst.
Grok beseitigt diese Probleme. Grok will das Erlernen von Zope einfacher und das Arbeiten agiler machen, ohne die Kraft von Zope zu schmälern.
Grok wendet sich an den Neanderthaler in uns allen. Neanderthaler wollen – wie Entwickler – mächtige und flexible Werkzeuge. Neanderthaler sind überhaupt sehr von Werkzeugen begeistert, schließlich haben sie sehr viele erfunden. Aber Neanderthaler und wir Entwickler wollen einfache und effektive Werkzeuge. Werkzeuge wie eine Keule: einfach, mächtig und flexibel. Man kann alles Mögliche damit zertrümmern oder auch einfach nur Kartoffelbrei herstellen. Zope ist mächtig und flexibel. Grok macht es einfach: für Anfänger ebenso wie für erfahrene Entwickler. Grok ist Zope für Neanderthaler.
Grok aus der Sicht von Zope
Zope erlaubt es, verschiedene Komponenten in einer flexiblen und expliziten Weise miteinander zu kombinieren. Man ein Model mit einem View, einen Event Handler mit einem Event oder eine neue API mit einem existierenden Objekt verbinden. Der Prozess, durch den man dies erreicht, wird Konfiguration genannt. Im technischen Sinne kann man Grok als einen alternativen Konfigurationsmechanismus für Zope verstehen.
Zope ohne Grok benutzt ZCML, um Komponenten miteinander zu verknüpfen. ZCML ist eine XML-Konfigurationssprache. ZCML-Anweisungen werden in einer gesonderten Datei neben dem eigentlichen Programmcode gespeichert. Der Vorteil von ZCML ist, dass man explizit und flexibel arbeitet, aber es macht die Dinge auch unübersichtlich, weil man in mehreren Dateien nachschauen muss, um zu verstehen, wie die Anwendung funktioniert.
Grok lässt ZCML verschwinden. Stattdessen sucht Grok im Python-Code nach speziellen Basisklassen und Anweisungen und kapiert1, was der Entwickler will. Grok kapiert und erstellt automatisch die gleiche Konfiguration, die man mit ZCML und vielen Zeilen XML erzielt hätte.
Die Konfiguration im Programmcode zu erledigen, macht es leichter, die Funktionsweise der Anwendung zu verstehen. Und es macht mehr Spaß, sie zu entwickeln.
Grok ist so konzipiert, dass man unter bestimmten Voraussetzungen einen Großteil expliziter Anweisungen im Code völlig weglassen kann. Code, der für Grok geschrieben wurde, sieht daher sehr sauber und einheitlich aus. Und man hat stets die Möglichkeit, die Dinge mit ZCML explizit zu konfigurieren, wenn man es will.