CherryPy - Giriş
CherryPy, Python geliştiricileri için HTTP protokolüne kullanıcı dostu bir arayüz sağlayan bir Python web çerçevesidir. Aynı zamanda web uygulaması kitaplığı olarak da adlandırılır.
CherryPy, HTTP protokolünü modellemek ve bir API'ye bağlamak için Python'un güçlü yanlarını dinamik bir dil olarak kullanır. Temiz arayüz ve güvenilir platform sağlayan Python için en eski web çerçevelerinden biridir.
CherryPy'nin Tarihçesi
Remi Delon, CherryPy'nin ilk sürümünü 2002 yılının Haziran ayı sonlarında piyasaya sürdü. Bu, başarılı bir Python web kütüphanesinin başlangıç noktasıydı. Remi, Python'a web uygulaması geliştirme için en büyük alternatiflerden biri olduğu için güvenen Fransız bir hacker.
Remi tarafından geliştirilen proje, yaklaşıma ilgi duyan çok sayıda geliştiricinin ilgisini çekti. Yaklaşım aşağıdaki özellikleri içeriyordu -
CherryPy, model-görünüm-kontrolör düzenine yakındı.
Bir CherryPy sınıfının, eksiksiz uygulamayı ve kendi yerleşik web sunucusunu yerleştiren bağımsız bir Python modülü üretmek için CherryPy motoru tarafından işlenmesi ve derlenmesi gerekir.
CherryPy, bir URL'yi ve onun sorgu dizesini bir Python yöntem çağrısıyla eşleyebilir, örneğin -
http://somehost.net/echo?message=hello would map to echo(message='hello')
CherryPy projesinin iki yıllık geliştirme sürecinde, topluluk tarafından desteklendi ve Remi birkaç geliştirilmiş sürüm yayınladı.
Haziran 2004'te projenin geleceği ve aynı mimari ile devam edip etmeyeceği hakkında bir tartışma başladı. Birkaç proje müdavimi tarafından yapılan beyin fırtınası ve tartışmalar, kısa süre sonra CherryPy2'nin temel bir parçası haline gelen nesne yayınlama motoru ve filtreleri kavramına yol açtı. 2004 yılının Ekim ayında, CherryPy 2 alpha'nın ilk sürümü, bu temel fikirler. CherryPy 2.0 gerçek bir başarıydı; ancak, tasarımının hala geliştirilebileceği ve yeniden düzenlemeye ihtiyaç duyulduğu kabul edildi.
Geri bildirimlere dayalı tartışmalardan sonra, CherryPy'nin API'sı zarafetini geliştirmek için daha da değiştirildi ve Ekim 2005'te CherryPy 2.1.0'ın piyasaya sürülmesine yol açtı. Çeşitli değişikliklerden sonra, ekip Nisan 2006'da CherryPy 2.2.0'ı piyasaya sürdü.
CherryPy'nin Güçlü Yönleri
CherryPy'nin aşağıdaki özellikleri güçlü yönleri olarak kabul edilir -
Basitlik
CherryPy'de bir proje geliştirmek, Python'un kuralları ve girintilerine göre geliştirilen birkaç satır kod içeren basit bir görevdir.
CherryPy ayrıca oldukça modülerdir. Birincil bileşenler, doğru mantık kavramı ile iyi yönetilir ve üst sınıflar, alt sınıflara genişletilebilir.
Güç
CherryPy, Python'un tüm gücünden yararlanır. Ayrıca birinci sınıf uygulamalar geliştirmek için gereken güçlü uzantı noktaları olan araçlar ve eklentiler sağlar.
Açık kaynak
CherryPy, açık kaynaklı bir Python Web Çerçevesidir (açık kaynaklı BSD lisansı altında lisanslanmıştır), bu da bu çerçevenin ticari olarak SIFIR maliyetle kullanılabileceği anlamına gelir.
Topluluk Yardımı
Çeşitli soru ve cevap türleriyle tam destek sağlayan sadık bir topluluğa sahiptir. Topluluk, başlangıç seviyesinden ileri seviyeye kadar geliştiricilere tam yardım vermeye çalışır.
Dağıtım
Uygulamayı konuşlandırmanın uygun maliyetli yolları vardır. CherryPy, uygulamanızı barındırmak için kendi üretime hazır HTTP sunucusunu içerir. CherryPy, herhangi bir WSGI uyumlu ağ geçidinde de konuşlandırılabilir.