CherryPy - Introduzione

CherryPy è un framework web di Python che fornisce un'interfaccia amichevole al protocollo HTTP per gli sviluppatori Python. Viene anche chiamata libreria di applicazioni Web.

CherryPy utilizza i punti di forza di Python come linguaggio dinamico per modellare e associare il protocollo HTTP a un'API. È uno dei più vecchi framework web per Python, che fornisce un'interfaccia pulita e una piattaforma affidabile.

Storia di CherryPy

Remi Delon ha rilasciato la prima versione di CherryPy alla fine di giugno 2002. Questo è stato il punto di partenza di una libreria web Python di successo. Remi è un hacker francese che si è fidato di Python per essere una delle migliori alternative per lo sviluppo di applicazioni web.

Il progetto sviluppato da Remi ha attirato un numero di sviluppatori interessati all'approccio. L'approccio includeva le seguenti caratteristiche:

  • CherryPy era vicino al pattern model-view-controller.

  • Una classe CherryPy deve essere elaborata e compilata dal motore CherryPy per produrre un modulo Python autonomo che incorpora l'applicazione completa e anche il proprio server web integrato.

  • CherryPy può mappare un URL e la sua stringa di query in una chiamata al metodo Python, ad esempio:

http://somehost.net/echo?message=hello would map to echo(message='hello')

Durante i due anni di sviluppo nel progetto CherryPy, è stato supportato dalla comunità e Remi ha rilasciato diverse versioni migliorate.

Nel giugno 2004 è iniziata una discussione sul futuro del progetto e se debba continuare con la stessa architettura. Il brainstorming e la discussione da parte di diversi clienti abituali del progetto hanno poi portato al concetto di motore e filtri per la pubblicazione di oggetti, che presto sono diventati una parte fondamentale di CherryPy2. In seguito, nell'ottobre 2004, è stata rilasciata la prima versione di CherryPy 2 alpha come prova queste idee fondamentali. CherryPy 2.0 è stato un vero successo; tuttavia, è stato riconosciuto che il suo design poteva ancora essere migliorato e necessitava di refactoring.

Dopo discussioni basate sui feedback, l'API di CherryPy è stata ulteriormente modificata per migliorarne l'eleganza, portando al rilascio di CherryPy 2.1.0 nell'ottobre 2005. Dopo varie modifiche, il team ha rilasciato CherryPy 2.2.0 nell'aprile 2006.

Punti di forza di CherryPy

Le seguenti caratteristiche di CherryPy sono considerate i suoi punti di forza:

Semplicità

Sviluppare un progetto in CherryPy è un compito semplice con poche righe di codice sviluppato secondo le convenzioni e le indentazioni di Python.

CherryPy è anche molto modulare. I componenti primari sono ben gestiti con un concetto logico corretto e le classi padre sono espandibili in classi figlie.

Energia

CherryPy sfrutta tutta la potenza di Python. Fornisce inoltre strumenti e plug-in, potenti punti di estensione necessari per sviluppare applicazioni di livello mondiale.

Open source

CherryPy è un framework Web Python open source (concesso in licenza con licenza BSD open source), il che significa che questo framework può essere utilizzato commercialmente a costo ZERO.

Aiuto della comunità

Ha una comunità devota che fornisce supporto completo con vari tipi di domande e risposte. La community cerca di fornire assistenza completa agli sviluppatori partendo dal livello principiante fino al livello avanzato.

Distribuzione

Esistono modi convenienti per distribuire l'applicazione. CherryPy include il proprio server HTTP pronto per la produzione per ospitare la tua applicazione. CherryPy può anche essere distribuito su qualsiasi gateway conforme a WSGI.