Geekflare wird von unserem Publikum unterstützt. Es kann sein, dass wir durch den Kauf von Links auf dieser Seite Affiliate-Provisionen verdienen.
Unter Entwicklung Zuletzt aktualisiert: September 24, 2023
Weitergeben:
Invicti Web Application Security Scanner - die einzige Lösung, die eine automatische Überprüfung von Schwachstellen mit Proof-Based Scanning™ ermöglicht.

Python ist sowohl ein lustiges Spielzeug als auch ein beängstigender Flammenwerfer. Das Gleiche gilt für das, was Sie mit Python tun können.

Python ist bei Hobbyisten, Wissenschaftlern und Architekten gleichermaßen beliebt.

Es ist verdammt einfach, damit anzufangen, hat Abstraktionen höherer Ordnung und Metaprogrammierfähigkeiten, um große und komplexe Systeme zu bauen, und verfügt über eine Unmenge von Bibliotheken, mit denen Sie so ziemlich alles machen können. Natürlich gibt es Einschränkungen, wenn es um Gleichzeitigkeit und starke Typisierung geht, aber die können Sie umgehen.

In diesem Artikel werfen wir einen Blick auf einige der besten Python-Frameworks, wenn es um die Erstellung großer und kleiner Webanwendungen geht.

Django

Das Django-Framework hat sich in der Python-Gemeinde als das Web-Framework schlechthin bewährt. Wenn Sie einen Python-Entwickler im Schlaf überfallen und ihn mit vorgehaltener Waffe zwingen würden, eine Webanwendung zu erstellen, würde er automatisch zu Django greifen, so wie ein Rubyist zu Rails greift.

Und dafür gibt es einen guten Grund. Django ist, wie es in der Tagline heißt, “ein Web-Framework für Perfektionisten mit Terminen” Es ist ein sogenanntes “batteries-included”-Framework (ähnlich wie Python eine “batteries-included”-Sprache ist), das alle gängigen Funktionen von Haus aus bietet.

Mit diesen eingebauten Funktionen verkürzt Django die Entwicklungszeit erheblich:

  • Ein praktisches und angenehmes ORM, mit Migrationen, die vom Framework automatisch erstellt und angewendet werden.
  • Scaffolding für die automatische Generierung von Admin-Panels auf der Grundlage Ihrer Modelle.
  • Unterstützung für Cookies, Sitzungen, Middleware, Vorlagen usw.
  • Sicherheitsfunktionen wie XSS-Schutz, CRSF-Schutz usw. werden automatisch angewendet.
  • Funktioniert mit praktisch allen Datenbanken, die es gibt (es ist einfach, Adapter zu finden, für die es keine offizielle Unterstützung gibt)
  • Erstklassige Unterstützung für geografische Daten und räumliche Abfragen durch GeoDjango

Und vieles, vieles mehr. Es genügt zu sagen, dass Django ein vollwertiges, freundliches Web-Framework ist.

Ist Django etwas für Sie?

Auf jeden Fall ja.

Django eignet sich hervorragend für alle Anwendungsfälle, sei es für das Rapid Prototyping oder die Planung einer Unternehmensanwendung. Der einzige Stolperstein, auf den Sie stoßen werden, ist die Struktur des Frameworks.

Da Django alles daran setzt, die Entwicklung für Sie schnell und einfach zu machen, zwingt es dem Entwickler seine Struktur auf (ein Konzept, das “Konvention vor Konfiguration” genannt wird), mit dem Sie vielleicht nicht einverstanden sind.

Wenn Sie z.B. den Django ORM durch etwas anderes ersetzen möchten (z.B. SQL Alchemy), müssen Sie mit Überraschungen rechnen.

Sind Sie daran interessiert, Full-Stack-Entwickler mit Django und Python zu werden? – Schauen Sie sich diesen fantastischen Online-Kurs an.

Flask

Während Django fast die gesamte Aufmerksamkeit in der Python-Webentwicklung auf sich zieht, ist Flask ein starker Konkurrent.

Im Gegensatz zu Django ist Flask ein “Mikro-Framework”, was bedeutet, dass es sich auf einige wenige Mindestanforderungen konzentriert und den Rest Ihnen überlässt. Dieses “der Rest ist Ihnen überlassen” kann eine Quelle der Frustration oder der Freude sein, je nachdem, was Ihre Ziele sind.

Für diejenigen, die wissen, was sie tun, und die ihre Webanwendungen liebevoll aus Komponenten ihrer Wahl zusammenstellen möchten, ist Flask ein Geschenk des Himmels.

Flask bietet die folgenden Funktionen:

  • Routing, Templating, Sitzungsverwaltung und andere nützliche Funktionen.
  • Volle Unterstützung für Unit-Tests
  • Eine minimale, anpassbare Architektur
  • Erstklassige REST-Unterstützung
  • Unterstützung für Blueprints, die einzigartige Architektur von Flask für kleine Webanwendungen
  • Wählen Sie Ihre Pakete für ORM, Migrationen, usw.
  • Flexible Anwendungsstruktur – legen Sie Ihre Dateien dort ab, wo es für Sie am sinnvollsten ist
  • Statische Dateiauslieferung
  • WGSI-konform

Ist Flask etwas für Sie?

Wie bereits gesagt, ist Flask ein minimales Web-Framework, bei dem alles in einzelne Komponenten aufgeteilt ist, die Sie austauschen können. Wenn Sie es eilig haben, einen Prototyp zu erstellen, werden Sie viel Zeit damit verbringen, triviale Entscheidungen über die Datenbank, die Ordnerstruktur, das Routing usw. zu treffen, die sich als kontraproduktiv erweisen können. Flask eignet sich am besten, wenn Sie ein stabiles, ernsthaftes Projekt von mittlerem bis großem Umfang, insbesondere REST-APIs, planen.

Flask

Wenn Sie der Meinung sind, dass der Ansatz von Flask nicht minimal genug ist und Sie trotzdem mehr Kontrolle wünschen, dann begrüßen Sie Bottle.

Bottle geht noch weiter zurück, bis zu dem Punkt, an dem die einzige Abhängigkeit die Python-Standardbibliothek ist. Das bedeutet, dass Sie weder dieses noch jenes mit pip installieren müssen, auch wenn Sie das wahrscheinlich schon bald tun werden. Hier ist der Grund, warum Bottle für einige Leute besonders interessant ist:

  • Die Bereitstellung in einer einzigen Datei. Ja, Ihre gesamte Anwendung befindet sich in einer einzigen “.py”-Datei.
  • Keine externen Abhängigkeiten. Wenn Sie die richtige Python-Version installiert haben, sind Sie startklar.
  • Liefert seine eigene Template-Engine, die durch Jinja2, Mako oder Cheetah ersetzt werden kann.
  • Unterstützung für Formulare, Kopfzeilen, Cookies und Datei-Uploads.
  • Eingebauter Webserver, der leicht ausgetauscht werden kann.

Ist Bottle etwas für Sie?

Wenn Sie eine wirklich kleine Anwendung (sagen wir, weniger als 500 Zeilen Code) ohne besondere Anforderungen erstellen, könnte Bottle für Sie sehr sinnvoll sein. Es ist ein völlig unkomplizierter Ansatz zur Erstellung von Webanwendungen, aber in der Praxis werden Sie feststellen, dass Bottle Sie eher behindert als Ihnen hilft.

Der Grund dafür ist, dass sich die reale Welt ständig verändert und bevor Sie es merken. Werden Ihnen neue Anforderungen auf den Kopf fallen. Dann wird es mühsam, alles in eine einzige Datei zu packen.

Außerdem haben Sie Recht, wenn Sie denken, dass Bottle und Flask fast gleich sind. Vorschläge, die beiden zu verschmelzen, reichen bis ins Jahr 2012 zurück, und sogar Armin, der Schöpfer von Flask, stimmt dem zu. Marcel, der Schöpfer von Bottle, hält jedoch aufgrund des Single-File-Ansatzes an einer strikten ideologischen Trennung fest und besteht darauf, dass die beiden getrennt bleiben.

Zope

Zope ist kompliziert zu erklären, aber ich werde es versuchen. Ja, es ist ein Web-Framework, mit dem Sie große oder kleine Anwendungen erstellen können, aber das ist noch nicht alles. Zope ist eher eine Plattform, die aus Tools (einschließlich Web-Frameworks) besteht, die unter der Zope-Philosophie entwickelt und von der Zope Corporation gepflegt werden.

Zope verfügt über mehrere interessante Komponenten und Funktionen, die sich für die Entwicklung von Unternehmensanwendungen eignen:

  • Eine Architektur zur Registrierung und Erkennung von Komponenten, um eine große Anwendung zu konfigurieren.
  • ZODB — (die einzige) Objektdatenbank für Python zur nativen Speicherung von Objekten.
  • Ein vollwertiges Framework und Standards für Content Management Systeme
  • Eine Reihe von Webanwendungs-Frameworks — das kanonische Framework heißt immer noch Zope, obwohl mehrere neue Frameworks (wie Grok) darauf aufgebaut wurden.
  • Starke Standards für die Entwicklung, Veröffentlichung und Wartung von Software.

Ist Zope etwas für Sie?

Wenn Sie eine stark strukturierte Umgebung für die Entwicklung wirklich großer Anwendungen suchen, ist Zope eine gute Wahl. Allerdings werden Sie auch auf eine ganze Reihe von Problemen stoßen. Zope wird zwar ständig weiterentwickelt, aber die Community ist so klein, dass viele Python-Entwickler noch nicht einmal davon gehört haben.

Es ist schwierig, Tutorials und eine ausführliche Dokumentation zu finden. Stellen Sie sich also darauf ein, dass Sie viel suchen müssen (obwohl die Community sehr hilfreich ist!). Außerdem möchten die Python-Entwickler, die Sie treffen, Zope vielleicht nicht lernen und ihre Fähigkeiten “verwässern”.

TurboGears

TurboGears ist ein äußerst flexibles Framework mit einer wirklich komponierbaren Architektur. Es ist ein Framework, das sich nach Ihren Bedürfnissen skalieren lässt, und Sie können damit eine Single-File-Anwendung oder ein Multi-Tenancy-Ungetüm erstellen.

TurboGears verfügt über einige elegante Funktionen, von denen einige entweder in gängigen Frameworks (wie Django) nicht vorhanden oder nur schwer zu erstellen sind:

  • Erstklassige Unterstützung für mehrere Datenbanken
  • Multi-Datenbank-Transaktionen
  • Hochgradig modular – beginnen Sie mit einer einzigen Datei und skalieren Sie so viel, wie Sie brauchen
  • Ein leistungsstarkes ORM (SQLAlchemy, das ausgereifter und leistungsfähiger ist als das ORM von Django)
  • Steckbare Architektur basierend auf der WSGI-Spezifikation
  • Integrierte Unterstützung für das Sharding von Datenbanken
  • Eine funktionsgesteuerte Schnittstelle im Gegensatz zu tiefen, starren objektorientierten Hierarchien.

Ist TurboGears etwas für Sie?

Wenn Sie gerne entwickeln und ein getestetes, ausgereiftes und robustes Framework abseits des Medienrummels von “awesome, next-gen” und so weiter suchen, ist TurboGears genau das Richtige für Sie. Es ist in der Community hoch angesehen und verfügt über eine vollständige, umfangreiche Dokumentation.

Sicher, TurboGears ist nicht eigenwillig, was bedeutet, dass die anfängliche Einrichtungs- und Konfigurationszeit länger sein kann, aber es ist das ideale Framework für die Entwicklung von Unternehmensanwendungen.

Web2py

Web2py begann als Hobbyprojekt und wurde im Jahr 2007 veröffentlicht. Sein Ziel ist es, die Webentwicklung einfach und für jeden zugänglich zu machen.

Daher verfolgt Web2py den Ansatz der Null-Abhängigkeit bis zum Äußersten – es gibt keine Anforderungen, es muss nichts installiert werden, und es enthält einen vollwertigen webbasierten Editor für die Entwicklung, die Datenbankverwaltung und die Bereitstellung.

Sie können es sich fast wie Android Studio vorstellen, das eher eine komplette Umgebung als nur ein Framework ist. Einige schöne Eigenschaften von Web2py sind:

  • Praktisch keine Lernkurve.
  • Minimaler Kern (nur 12 Objekte), der sogar auswendig gelernt werden kann!
  • Reines Python-Templating
  • Schutz gegen XSS, CSRF und andere Angriffe
  • Eine angenehme und konsistente API

Ist Web2py etwas für Sie?

Web2py ist ein stabiles und unterhaltsames Framework, aber es ist schwer, es gegen andere Optionen wie Django, Flask usw. zu empfehlen. Es gibt kaum Jobs, und die Geschichte der Unit-Tests ist nicht großartig. Abgesehen davon könnte Ihnen die Code-API und das Gesamterlebnis, das das Framework bietet, gefallen, insbesondere wenn Sie REST-APIs erstellen.

CherryPy

CherryPy ist ein weiteres Mikroframework, das darauf abzielt, grundlegende Framework-Funktionen bereitzustellen und schnell wieder aus dem Weg zu gehen.

Obwohl es mit anderen Mikroframeworks wie Flask vergleichbar ist, zeichnet sich CherryPy durch einige Besonderheiten aus:

  • Es enthält einen eingebauten Multithreading-Server (etwas, das auf der Wunschliste von Flask steht)
  • Der (einzige) Webserver kann mehrere Anwendungen hosten!
  • Stellen Sie Ihre Anwendung als WSGI-Applikation (für Schnittstellen zu anderen WSGI-Applikationen) oder als reinen HTTP-Server (der eine bessere Leistung bietet) bereit
  • Erstklassige Unterstützung für Profiling und Unit-Tests
  • Läuft auf PyPy (für die wahren Performance-Junkies), Jython und sogar Android

CherryPy bietet all dies und darüber hinaus das Übliche, was Sie von einem Web-Framework erwarten.

Ist CherryPy etwas für Sie?

Wenn Sie hauptsächlich RESTful-Dienste erstellen, ist CherryPy ein viel ernsthafterer Konkurrent als Flask. Es ist ein jahrzehntealtes Framework, das gut gereift ist und sich für kleine und große Anwendungen gleichermaßen eignet.

Sanic

Der Aufstieg von Node und seinem asynchronen Programmiermodell hat viele Gemeinschaften ins Hintertreffen gebracht, auch die von Python. Als Reaktion darauf sind zahlreiche asynchrone Web-Frameworks auf dem Radar aufgetaucht, darunter auch Sanic.

Sanic ist stark von Flask inspiriert, und zwar in dem Maße, dass es die Routendekoratoren, Blueprints und andere Grundlagen mit Haut und Haaren übernommen hat. Und sie schämen sich nicht, das zuzugeben. Was Sanic für Sie als Flask-Fan mitbringt, ist echte Non-Blocking-I/O, um die Leistungsanforderungen einer Node-Anwendung zu erfüllen. Mit anderen Worten: Sanic ist Flask mit async/await Unterstützung!

Im Vergleich zu CherryPy hat Sanic einen unglaublichen Leistungsvorteil (stellen Sie sich nur vor, wie es gegen Flask abschneiden würde!). Sehen Sie sich die folgenden von DataWeave getesteten Ergebnisse an:

Wie Sie sehen können, wird CherryPy bei einer Gleichzeitigkeit von mehr als 50 pro Sekunde praktisch abgewürgt und weist eine hohe Fehlerquote auf.

Ist Sanic etwas für Sie?

Obwohl die Leistungsmerkmale von Sanic alles andere in den Schatten stellen, ist es vielleicht nicht die beste Wahl für Ihr nächstes Projekt. Der Hauptgrund dafür ist der Mangel an asynchronen Bibliotheken.

Der Großteil der vorhandenen Python-Tools und -Bibliotheken wurde für die Single-Thread-Version von CPython geschrieben, ohne dass an hohe Gleichzeitigkeit oder asynchrone Operationen gedacht wurde. Wenn Ihr bevorzugter ORM beispielsweise keine asynchronen Operationen unterstützt, wird der ganze Sinn der Verwendung von Sanic zunichte gemacht.

Aus diesen Gründen der Reife und Verfügbarkeit werden wir keine weiteren asynchronen Frameworks in Python untersuchen.

Masonite

Ich bin vor einiger Zeit auf dieses Framework gestoßen und hielt es für einen Schritt in die richtige Richtung. Inzwischen ist die Version 2.0 erschienen und ich habe das Gefühl, dass es endlich an der Zeit ist, Masonite etwas Liebe zu schenken.

Einfach ausgedrückt ist Masonite die Python-Version von Laravel (einem berühmten PHP-Framework, falls Sie das noch nicht wussten). Warum ist das wichtig? Weil Laravel auf den Grundsätzen von Ruby on Rails aufgebaut wurde und diese beiden Frameworks es auch Nicht-Ruby-Entwicklern ermöglichen, den “Rails Way” zu erleben.

Laravel-Entwickler (und in gewissem Maße auch Rails-Entwickler) werden sich wie zu Hause fühlen und können in kürzester Zeit loslegen. Als ich Masonite ausprobiert habe (und ich habe ein oder zwei Probleme eingereicht, darunter auch einen Bug!), konnte ich REST-APIs mit genau null Denkaufwand erstellen, weil mein Laravel-Muskelgedächtnis alles erledigte.

Als batteriebetriebenes Full-Stack-Framework bringt Masonite mehrere interessante Dinge mit sich:

  • ORM im Stil von Active-Record
  • Datenbankmigrationen (die, anders als bei Django, vom Entwickler erstellt werden müssen)
  • Einen leistungsstarken IoC-Container für Dependency Injection
  • Eigene CLI (genannt “Craft”) für die Erstellung von Gerüsten und die Ausführung von Aufgaben
  • Erstklassige Unterstützung für Unit-Tests

Der größte “Konkurrent” für Masonite ist Django, denn die Community tut ihr Bestes, um das Framework als einfach, reizvoll und das nächste große Ding zu vermarkten. Ob es Django übertreffen wird, wird die Zeit zeigen (wenn Sie mich fragen, hat es gute Chancen), aber eine Diskussion, in der die beiden verglichen werden, finden Sie hier.

Ist Masonite etwas für Sie?

Masonite ist im Vergleich zu Django noch ein Baby, daher kann es auf keinen Fall gegenüber Django empfohlen werden. Wenn Sie jedoch mit Rails (oder Laravel) vertraut sind, werden Sie das Angebot von Masonite zu schätzen wissen. Es ist ideal für die schnelle Erstellung von Prototypen, bei denen alles vorkonfiguriert und leicht umschaltbar sein muss.

Falcon

Falcon ist ein Python-Webframework, das für groß angelegte Microservices entwickelt wurde.

Die Bibliothek verfügt über ein komplettes System mit Vorlagen, ergänzenden Paketen und Add-ons, die Sie in Ihrem Projekt verwenden können. Falcon ist ein hervorragender Ausgangspunkt, um alle Ressourcen zu erhalten, die Sie benötigen.

Falcon

Das Projekt verfügt auch über eine starke Community, in der die Benutzer das Design und die Entwicklung dieses Frameworks diskutieren.

Falcon bietet die folgenden Funktionen;

  • Debugging-fähig: Sie können eine Falcon-Anwendung leicht debuggen, da sie Ihnen mitteilt, welche Eingaben zu welchen Ausgaben führen. Glücklicherweise sind alle unbehandelten Ausnahmen bei Falcon niemals gekapselt oder maskiert.
  • Flexibel: Falcon gibt Ihnen die Kontrolle über die Implementierungsdetails, so dass Sie die Anwendung nach Ihren Vorstellungen anpassen können. Der minimalistische Ansatz erleichtert das Debuggen und Optimieren Ihrer Anwendung nach Ihren Vorstellungen.
  • Schnell: Falcon kann Anfragen nachweislich schneller bearbeiten als andere Frameworks. Dieses Framework arbeitet perfekt mit PyPy zusammen.
  • ASGI- und WSGI-Unterstützung: Sie können Falcon unabhängig davon verwenden, ob Sie ein Fan von Asynchronous Server Gateway Interface (ASGI) oder Web Server Gateway Interface (WSGI) sind. WGSI ist synchron, d.h. es bearbeitet die Anfragen nacheinander (sequenziell). ASGI ist asynchron, d.h. die Anfragen werden gleichzeitig verarbeitet.

Ist Falcon das Richtige für Sie?

Falcon ist eine gute Wahl, wenn Sie Microservices und geschäftskritische REST-APIs entwickeln. Die Tatsache, dass dieses Framework auf Schnelligkeit ausgelegt ist, macht es zu einer hervorragenden Wahl für Anwendungen, die mehrere Transaktionen gleichzeitig verarbeiten.

Pyramid

Pyramid wird als “The Start Small, Finish Big, Stay Finished Framework” vorgestellt. Wenn Sie ein Lernender sind, wird Ihnen der Einstieg in Pyramid leicht fallen.

Pyramid

Das Framework ermöglicht es Ihnen, den Ansatz für Sicherheit, Templating, Datenbank und vieles mehr zu wählen. Sie können sogar mit einem Gerüst beginnen.

Pyramid bietet die folgenden Funktionen;

  • Skalierbarkeit: Die Tatsache, dass Sie klein anfangen können, bedeutet nicht, dass Ihre Anwendung für immer so bleiben wird. Pyramid verfügt über ein Add-On-, Erweiterungs- und Konfigurationssystem, das Sie bei der Skalierung Ihrer Anwendung unterstützt.
  • Authentifizierung und Autorisierung: Mit den integrierten Autorisierungs- und Authentifizierungsfunktionen können Sie Ihre Anwendung vor unberechtigtem Zugriff schützen.
  • Erweiterbar: Pyramid ist als Komplettpaket für den gesamten Lebenszyklus einer App konzipiert. Die Plattform setzt sich für die Stabilität der APIs ein, um sicherzustellen, dass Sie immer über APIs verfügen, denen Sie vertrauen können.
  • Hochgradig anpassbar: Sie können den Kerncode ohne Forking anpassen oder überschreiben. Auf diese Weise können Sie Anwendungen erstellen, die Ihren Bedürfnissen entsprechen.

Ist Pyramid für Sie geeignet?

Sie sollten Pyramid verwenden, wenn Sie inhaltsorientierte und groß angelegte Webanwendungen erstellen. Die modulare und flexible Architektur macht es einfach, Ihre Anwendungen zu skalieren. Pyramid bietet eine einfache Integration mit Datenbanken und verfügt über eine integrierte Unterstützung für flexibles Routing, was es zu einer perfekten Wahl für Inhaltsseiten wie Nachrichtenplattformen und Blogs macht.

Tornado

Tornado ist nicht nur ein Python-Framework, sondern auch eine asynchrone Netzwerkbibliothek. Im Gegensatz zu den meisten Python-Frameworks, die auf WSGI basieren, läuft Tornado mit nur einem Thread pro Prozess.

Unterstützung für WSGI erhalten Sie nach wie vor über tornado.wsgi. Die meisten Entwicklungen basieren jedoch auf der tornado.web, der eigenen Schnittstelle von Tornado.

Tornado bietet die folgenden Funktionen;

  • Nicht-blockierende Netzwerk-E/A: Diese Bibliothek baut auf der asyncio Bibliothek auf. Dadurch kann sie Tausende von Verbindungen auf einmal ohne großen Overhead verarbeiten.
  • Sicherheit und Authentifizierung: Tornado verfügt über Sicherheitsfunktionen wie den Schutz vor Cross-Site Request Forgery, HTTPS und Cookies. Die gleiche Bibliothek bietet auch Unterstützung für die Authentifizierung.
  • Skalierbarkeit: Mit Tornado können Sie die Kapazität erhöhen oder weitere Server hinzufügen, wenn dies erforderlich ist.
  • WebSocket-Unterstützung: Über die integrierte WebSocket-Implementierung findet eine Echtzeitkommunikation zwischen Server und Client statt.

Ist Tornado etwas für Sie?

Tornado ist die perfekte Wahl, wenn Sie hochleistungsfähige Webdienste erstellen möchten. Dieses Python-Framework ist hochgradig skalierbar und eignet sich dank seiner nicht blockierenden E/A-Funktion perfekt, wenn Sie einen Dienst erstellen, der eine große Anzahl gleichzeitiger Verbindungen verarbeiten soll.

Tornado eignet sich auch für Anwendungen, die viele E/A-Operationen durchführen, wie die Verarbeitung großer Dateien oder das Abrufen von Daten aus externen APIs.

CubicWeb

CubicWeb ist ein Framework für semantische Webanwendungen, mit dem Entwickler Anwendungen nach objektorientierten Designprinzipien erstellen können.

CubicWeb

Das Framework verfügt über eine Reihe von Bibliotheken und Tools, mit denen Entwickler leistungsstarke Anwendungen erstellen können.

CubicWeb verfügt über die folgenden Funktionen;

  • Wiederverwendbare Komponenten: Sie können Entwicklungszeit sparen, indem Sie Komponenten in Ihrer Anwendung wiederverwenden.
  • Verwendet eine Abfragesprache: CubicWeb verwendet RQL, eine Abfragesprache im Hintergrund.
  • Kompatibel mit mehreren Datenbanken: Profitieren Sie von der Kompatibilität von CubicWeb mit Mercurial, LDAP-Verzeichnissen und SQL-Datenbanken.
  • Anpassbar: CubicWeb ist flexibel und anpassbar, so dass Sie selbst bestimmen können, wie Ihre Anwendung funktioniert.

Ist CubicWeb das Richtige für Sie?

CubicWeb ist eine gute Wahl, wenn Sie Anwendungen erstellen möchten, die flexible Abfrage- und Datenmodellierungsfunktionen erfordern. So können Sie mit CubicWeb Anwendungen für soziale Netzwerke, Wissensmanagement und wissenschaftliche Datenverwaltung erstellen.

Fazit

An Python-Frameworks gibt es keinen Mangel, weder an großen noch an kleinen. Während Sie für ein kleines Projekt so ziemlich alles nehmen können, hat eine Unternehmensanwendung Anforderungen, die nicht viele dieser Frameworks erfüllen können. Wenn Sie mich fragen, fallen mir für die Unternehmensentwicklung vor allem Django (bis zu einem gewissen Grad), Zope und TurboGears ein. Und selbst unter diesen tendiere ich zu TurboGears.

Davon abgesehen kann jeder Architekt, der etwas auf sich hält, ein Microframework nehmen und seine Architektur ausrollen. Und das ist so ziemlich das, was in der Praxis passiert, was den Erfolg von Flask und ähnlichen Ideen erklärt.

Wenn Sie ein Neuling sind, dann ist dieser Online-Kurs hilfreich, um Python zu lernen.

Als Nächstes lernen Sie einige der spezialisierten Python-Frameworks zur Erstellung von APIs kennen.

  • Ankush
    Autor
    Ich schreibe über, um und für das Ökosystem der Entwickler. Empfehlungen, Anleitungen, technische Diskussionen - was auch immer ich veröffentliche, ich versuche mein Bestes, um Verwirrung und Fluff zu vermeiden und umsetzbare Antworten auf der Grundlage persönlicher Erfahrungen zu geben... mehr lesen
Dank an unsere Sponsoren
Weitere gute Lektüre zum Thema Entwicklung
Energie für Ihr Unternehmen
Einige der Tools und Dienste, die Ihr Unternehmen beim Wachstum unterstützen.
  • Invicti nutzt das Proof-Based Scanning™, um die identifizierten Schwachstellen automatisch zu überprüfen und innerhalb weniger Stunden verwertbare Ergebnisse zu erzielen.
    Versuchen Sie Invicti
  • Web Scraping, Residential Proxy, Proxy Manager, Web Unlocker, Search Engine Crawler und alles, was Sie zum Sammeln von Webdaten benötigen.
    Versuchen Sie Brightdata
  • Monday.com ist ein All-in-One-Betriebssystem, mit dem Sie Projekte, Aufgaben, Arbeit, Vertrieb, CRM, Arbeitsabläufe und vieles mehr verwalten können.
    Versuch Montag
  • Intruder ist ein Online-Schwachstellen-Scanner, der Schwachstellen in Ihrer Infrastruktur aufspürt, um kostspielige Datenschutzverletzungen zu vermeiden.
    Versuchen Sie Intruder