Pitone

I 10 migliori framework Web Python

I 10 migliori framework Web Python
Quando vuoi creare un sito web, hai bisogno di HTML, JavaScript e CSS. Per creare un sito Web utilizzando Python, hai bisogno di alcune altre cose. Queste cose sono modi per creare HTML, CSS e forse anche JavaScript. Potresti creare routine per scrivere ogni pagina web mentre gli utenti interagiscono con il sito e si verificano altri eventi. Questo è esattamente ciò che hanno fatto gli autori dei framework web, facilitando la creazione di pagine e interi siti. Definirlo facile è un'esagerazione ma almeno aiuterà a rendere il processo più veloce.

Quali tipi di framework web esistono?

Poiché gli sviluppatori di ciascun framework avevano esigenze diverse, i framework differiscono tra loro. Alcuni volevano risolvere rapidamente il singolo problema che avevano e altri volevano una soluzione più completa.

Un micro framework è costruito per avere pochissime funzionalità dall'inizio in modo da poter aggiungere man mano che le tue esigenze crescono. Altri framework sono così pieni di funzioni fin dall'inizio che hai un sito funzionante non appena hai installato le basi. Questi di solito funzionano come un sistema di gestione dei contenuti da zero, qualcosa che potresti volere o meno.

Cosa vuoi creare?

Quando scegli il tuo framework, dovresti prima considerare cosa vuoi creare e scegliere di conseguenza. Come accennato in precedenza, potresti volere un CMS e metterci il tuo tocco o hai qualcosa di più unico in mente. Crea un piano per il tuo sito e prova a trovare il framework di cui hai bisogno per quel particolare compito. Se vuoi imparare, scegli prima uno che ha pochissime funzioni in quanto ti insegnerà di più. Se ne scegli uno più avanzato, molte cose saranno già state fatte per te. Meno sforzo e meno apprendimento o più sforzo e conoscenza più profonda alla fine, a te la scelta.

Cosa imparerai su ogni framework?

In questo articolo imparerai quale framework funziona meglio per te in base a questo elenco di framework di seguito:

Django

Django è un framework ben noto che include molte cose. Quando inizi a usarlo ed esegui lo script iniziale, imposta tutto il codice in modo che funzioni. Il tuo prossimo passo è cancellare le cose che non vuoi e aggiungere quello che vuoi. Tutti i file necessari vengono creati dallo script iniziale e tutto ciò che devi fare è modificarli per adattarli alle tue esigenze. Sono supportati molti database e ha anche un mappatore relazionale a oggetti (ORM). Un ORM è utile perché puoi progettare i tuoi database una volta e utilizzarlo anche quando cambi database.

Borraccia

Flask è un micro framework web, questo significa che ha pochissime funzioni all'inizio. Devi anche creare tu stesso la struttura dei file. Questo è più lavoro ma significa anche più controllo. Ci sono molti plug-in quindi questo framework essendo micro non lo rende limitato. Ha solo bisogno di un po' più di attenzione quando inizi a costruire un nuovo progetto. I database non sono integrati ma hai diversi ottimi plug-in disponibili sul loro sito. Come con la maggior parte dei framework Web, puoi anche avere un server Web locale in esecuzione durante la codifica, per scopi di debug.

Struttura Web2Py

Web2Py funziona così com'è quando lo hai installato, viene fornito con un'interfaccia amministrativa integrata e può essere eseguito localmente senza alcuna procedura di installazione. È scritto in Python e progettato per essere programmato con Python. Questo framework ha anche plug-in come gli altri, tuttavia questo ha anche 'ricette'. Queste ricette sono tutto il codice per un sito finito che puoi scaricare e adattare alle tue esigenze. Con questo pacchetto puoi scaricare un altro pacchetto e avere un sito Web completo in esecuzione. Un esempio è www.piccolo sito web.net, puoi usare il codice GitHub per web2py, andare nella directory delle tue applicazioni e clonare il tinywebsite in quella directory e hai un sito web funzionante.

TurboGear

TurboGears ha un concetto interessante, puoi avviare questo pacchetto come un micro framework o aggiungerlo prima di iniziare. Ciò significa che puoi passare a una soluzione stack completa da un micro framework. La modalità minima richiede in realtà solo un file di codice sorgente da te per l'esecuzione, permettendoti di scegliere esattamente quanto controllo hai man mano che cresci. Nella modalità completa, supporta molti database e dispone di un sistema di modelli completo. Per provarlo, installalo in un ambiente virtuale usando pip.

CubicWeb

Il framework cubicweb ha un'interfaccia semplice con quasi tutta la logica dell'applicazione in "cubi", queste sono estensioni. Quando inizi a usarlo, ti consigliamo di scegliere un "cubo" e vedere cosa vuoi cambiare in esso. CubicWeb si installa come una normale applicazione nelle applicazioni basate su Debian, basta aggiungere il loro repository e installare. Ci sono due pacchetti; il tempo di esecuzione e il pacchetto di sviluppo. Questo framework si basa molto sulla programmazione orientata agli oggetti in Python, quindi se questa è la tua fantasia, dai un'occhiata più da vicino. La connessione ai database avviene tramite il proprio linguaggio di interrogazione, denominato RQL che è simile allo SPARQL del W3C. Se questo ti suona bene, hanno 190 "cubi" per aiutarti a creare fantastici siti web.

Sanic

Il framework Sanic è stato sviluppato con la velocità come priorità di prima mano, consente async/await che è stato aggiunto in Python 3.5. Sanic supporta Python 3.6 e superiori! Installi sanic con il comando pip. L'altro obiettivo è essere semplici, puoi iniziare un "Hello World" in dieci righe di codice. Per ottenere il pieno utilizzo di questo framework, hai bisogno di uvloop e ujson, funzionerà comunque ma la velocità prevista non sarà realizzata. Sanic è facile da eseguire direttamente come server web pur utilizzandolo per lo sviluppo del tuo sito web.

Giotto

Giotto è progettato per avere una base di codice molto piccola pur avendo la maggior parte delle funzioni. Installi Giotto con il comando pip. Per provarlo e iniziare a sperimentare, hai solo bisogno di tre comandi. Il progetto utilizza Jinja2 per i modelli HTML, SQLAlchemy per la connessione al database e supporta Redis per la gestione della cache. Per installare Giotto, usa il comando pip, la versione più recente è su GitHub. Puoi usare l'estensione git del comando pip per ottenerlo. Per creare la struttura del file per un nuovo progetto esegui il comando 'giotto create' questo crea l'intera struttura del file per adattarla alle tue esigenze.

Piramide

La Pyramid è nata come Pylons Project, l'ambizione è ed è sempre stata un equilibrio tra micro framework e soluzione full stack. Anch'esso mira ad essere piccolo e scalabile facilmente. Un'idea originale è che non esiste un sistema di estensione, ma si creano e si utilizzano estensioni sul sistema PyPi. Ciò rende flessibile la creazione di un nuovo componente aggiuntivo.

Bottiglia

Bottle è distribuito come modulo a file singolo e richiede solo Python stesso. È molto piccolo e ha un motore di modelli integrato e sviluppo. Nonostante ciò, supporta gli altri motori di modelli e qualsiasi server compatibile con WSGI disponibile. Puoi usare le loro ricette per avere un'idea di come utilizzare il framework, sentiti libero di usarle nel tuo codice. Bottle ha molti plugin, ma non tanti come altri progetti.

CherryPy

CherryPy è orgoglioso di aver realizzato un potente sistema di configurazione. Il sistema è anche estremamente facile da usare poiché gli sviluppatori non hanno bisogno di conoscere tutti i moduli. Questo fa sembrare che non puoi usarlo per sistemi più grandi, ma non è corretto. Netflix usa questo framework.

Conclusione

Hai molte scelte quando scegli un framework per il tuo prossimo progetto web. Prenditi del tempo per considerare ciò di cui hai bisogno prima di iniziare. Tuttavia, ce ne sono così tanti, devi mettere un limite di tempo alla tua ricerca e iniziare con uno solo.

Come mostrare il contatore FPS nei giochi Linux
I giochi Linux hanno avuto una grande spinta quando Valve ha annunciato il supporto Linux per il client Steam e i loro giochi nel 2012. Da allora, mol...
Come scaricare e giocare a Sid Meier's Civilization VI su Linux
Introduzione al gioco Civilization 6 è una versione moderna del concetto classico introdotto nella serie dei giochi Age of Empires. L'idea era abbasta...
Come installare e giocare a Doom su Linux
Introduzione a Doom La serie Doom è nata negli anni '90 dopo l'uscita dell'originale Doom. È stato un successo immediato e da quel momento in poi la s...