Python

Top 10 Python-webframeworks

Top 10 Python-webframeworks
Als je een website wilt maken, heb je HTML, JavaScript en CSS nodig. Om een ​​website te maken met Python, heb je een paar andere dingen nodig. Dit zijn manieren om HTML, CSS en misschien zelfs JavaScript te maken. U kunt routines maken om elke webpagina te schrijven terwijl gebruikers interactie hebben met de site en andere gebeurtenissen plaatsvinden. Dit is precies wat de auteurs van webframeworks hebben gedaan, waardoor het gemakkelijk is om pagina's en hele sites te maken. Het gemakkelijk noemen is overdreven, maar het zal in ieder geval helpen om het proces sneller te maken.

Welke soorten webframeworks zijn er??

Omdat de ontwikkelaars van elk framework verschillende behoeften hadden, verschillen de frameworks onderling. Sommigen wilden het enige probleem dat ze hadden snel oplossen en anderen wilden een meer volledige oplossing.

Een microframework is gebouwd om vanaf het begin heel weinig functionaliteit te hebben, zodat u deze kunt toevoegen naarmate uw behoeften groeien. Andere frameworks zitten vanaf het begin zo vol functies dat je een werkende site hebt zodra je de basis hebt geïnstalleerd. Deze werken meestal vanaf het begin als een contentmanagementsysteem, iets wat je misschien wel of niet wilt.

Wat wil je maken??

Wanneer u uw raamwerk kiest, moet u eerst overwegen wat u wilt maken en dienovereenkomstig kiezen. Zoals eerder vermeld, wil je misschien een CMS en geef je er gewoon je eigen draai aan of heb je iets uniekers in gedachten. Maak een plan voor je site en probeer het raamwerk te vinden dat je nodig hebt voor die specifieke taak. Als je wilt leren, kies er dan eerst een met heel weinig functies, want je leert er meer van. Als je een meer geavanceerde kiest, zijn er al veel dingen voor je gedaan. Minder moeite en minder leren of uiteindelijk meer moeite en diepere kennis, jouw keuze.

Wat leer je over elk framework??

In dit artikel leer je welk framework voor jou het beste werkt op basis van onderstaande lijst met frameworks:

Django

Django is een bekend framework dat veel dingen bevat. Wanneer je het begint te gebruiken en het eerste script uitvoert, wordt alle code ingesteld zodat het werkt. Je volgende stap is om dingen op te ruimen die je niet wilt en toe te voegen wat je wel wilt. Alle bestanden die nodig zijn, worden gemaakt door het oorspronkelijke script en u hoeft ze alleen maar te bewerken om ze aan uw eigen behoeften aan te passen. Veel databases worden ondersteund en het heeft ook een object relationele mapper (ORM). Een ORM is handig omdat je je databases één keer kunt ontwerpen en je eraan kunt houden, zelfs als je van database wisselt.

Kolf

Flask is een micro-webframework, dit betekent dat het in het begin heel weinig functies heeft. Je moet ook zelf je bestandsstructuur maken. Dit is meer werk maar betekent ook meer controle. Er zijn veel plug-ins, dus dit framework, dat micro is, maakt het niet beperkt. Het heeft alleen wat meer aandacht nodig wanneer je begint met het bouwen van een nieuw project. Databases zijn niet ingebouwd, maar je hebt verschillende geweldige plug-ins beschikbaar op hun eigen site. Zoals met de meeste webframeworks, kunt u ook een lokale webserver laten draaien terwijl u codeert, voor foutopsporingsdoeleinden.

Web2Py-framework

Web2Py werkt zoals het is wanneer u het hebt geïnstalleerd, het wordt geleverd met een ingebouwde beheerinterface en kan lokaal worden uitgevoerd zonder enige installatieprocedure. Het is geschreven in Python en ontworpen om te worden geprogrammeerd met Python. Dit framework heeft ook plug-ins zoals de andere, maar deze heeft ook 'recepten'. Deze recepten zijn alle code voor een voltooide site die u kunt downloaden en aanpassen aan uw eigen behoeften. Met dit pakket kun je een ander pakket downloaden en een volledige website laten draaien. Een voorbeeld is www.tinywebsite.net, je kunt de GitHub-code voor web2py gebruiken, naar je applicatiemap gaan en de tinywebsite in die map klonen en je hebt een werkende website.

TurboGears

TurboGears heeft een interessant concept, je kunt dit pakket starten als een microframework of toevoegen voordat je begint. Dit betekent dat u vanuit een microframework kunt overstappen op een full-stackoplossing solution. De minimale modus heeft eigenlijk maar één broncodebestand van je nodig om te draaien, zodat je precies kunt kiezen hoeveel controle je hebt terwijl je groeit. In de volledige modus ondersteunt het veel databases en heeft het een uitgebreid sjabloonsysteem. Om het uit te proberen, installeert u het gewoon in een virtuele omgeving met pip.

CubicWeb

Het cubicweb framework heeft een simpele interface met bijna alle applicatielogica in 'cubes', dit zijn extensies. Wanneer je het gaat gebruiken, is het verstandig om een ​​'kubus' te kiezen en te kijken wat je erin wilt veranderen. CubicWeb installeert als een normale applicatie in op Debian gebaseerde applicaties, voeg gewoon hun repository toe en installeer. Er zijn twee pakketten; de runtime en het ontwikkelingspakket:. Dit framework is sterk afhankelijk van objectgeoriënteerd programmeren in Python, dus als je dat leuk vindt, kijk dan eens van dichterbij. De verbinding met databases wordt gemaakt via hun eigen querytaal, RQL genaamd, die vergelijkbaar is met SPARQL van W3C. Als dit goed voor je klinkt, hebben ze 190 'kubussen' om je te helpen geweldige websites te maken.

Sanic

Het Sanic-framework is ontwikkeld met snelheid als prioriteit uit de eerste hand, het staat async/wait toe dat werd toegevoegd in Python 3.5. Sanic ondersteunt Python 3.6 en hoger! Sanic installeer je met het pip commando. Het andere doel is om eenvoudig te zijn, je kunt een 'Hello World' starten in tien regels code. Om volledig gebruik te maken van dit framework, heb je uvloop en ujson nodig, het zal hoe dan ook werken, maar de beoogde snelheid wordt niet gerealiseerd. Sanic is gemakkelijk rechtstreeks als webserver te gebruiken terwijl u het nog steeds gebruikt voor het ontwikkelen van uw website.

Giotto

Giotto is ontworpen om een ​​zeer kleine codebase te hebben, terwijl het toch de meeste functies heeft. Je installeert Giotto met het pip-commando. Om het uit te proberen en te beginnen met experimenteren, heb je maar drie commando's nodig. Het project gebruikt Jinja2 voor HTML-sjablonen, SQLAlchemy voor databaseverbinding en ondersteunt Redis voor cacheverwerking. Gebruik het pip-commando om Giotto te installeren, de meest recente versie staat op GitHub. Je kunt de git-extensie van het pip-commando gebruiken om het te krijgen. Om de bestandsstructuur voor een nieuw project te maken, voert u de opdracht 'giotto create' uit. Dit creëert de hele bestandsstructuur die u kunt aanpassen aan uw behoeften.

Piramide

De piramide begon als het Pylons-project, de ambitie is en is altijd een balans geweest tussen microframework en full-stackoplossing. Het wil ook klein zijn en gemakkelijk kunnen schalen. Een origineel idee is dat er geen extensiesysteem is, maar dat je extensies maakt en gebruikt op het PyPi-systeem. Dit maakt het flexibel om een ​​nieuwe add-on te maken.

Fles

Bottle wordt gedistribueerd als een enkele bestandsmodule en vereist alleen Python zelf. Het is erg klein en heeft een ingebouwde sjabloon-engine en ontwikkeling. Ondanks dat heeft het ondersteuning voor de andere template-engines en elke beschikbare WSGI-server. Je kunt hun recepten gebruiken om een ​​idee te krijgen van hoe je het framework kunt gebruiken, gebruik deze gerust in je eigen code. Bottle heeft veel plug-ins, maar niet zoveel als andere projecten.

CherryPy

CherryPy is er trots op een krachtig configuratiesysteem te hebben gemaakt. Het systeem is ook heel gemakkelijk om mee aan de slag te gaan, omdat ontwikkelaars niet alle modules hoeven te leren. Hierdoor lijkt het alsof je het niet voor grotere systemen kunt gebruiken, maar dat is onjuist. Netflix gebruikt dit framework.

Conclusie

Je hebt veel keuzes wanneer je een raamwerk kiest voor je volgende webproject. Neem even de tijd om na te denken over wat je nodig hebt voordat je begint. Er zijn er echter zoveel dat je een tijdslimiet aan je onderzoek moet stellen en met slechts één aan de slag moet.

Installeer de nieuwste OpenRA Strategy Game op Ubuntu Linux
OpenRA is een Libre/Free Real Time Strategy-game-engine die de vroege Westwood-games nabootst, zoals de klassieke Command & Conquer: Red Alert. Gedist...
Installeer de nieuwste Dolphin Emulator voor Gamecube & Wii op Linux
Met de Dolphin Emulator kun je de door jou gekozen Gamecube- en Wii-spellen spelen op Linux Personal Computers (pc). Omdat het een vrij beschikbare e...
Hoe de GameConqueror Cheat Engine in Linux te gebruiken
Het artikel bevat een handleiding over het gebruik van de GameConqueror cheat-engine in Linux. Veel gebruikers die games op Windows spelen, gebruiken ...