Feragatname: tipfy ve webapp2'nin yazarıyım.
Web uygulamasına (veya onun doğal evrimi, webapp2'ye) bağlı kalmanın büyük bir avantajı, seçtiğiniz çerçeve için mevcut SDK işleyicileri için kendi sürümlerinizi oluşturmak zorunda olmamanızdır.
Örneğin, ertelenmiş bir web uygulaması işleyicisi kullanır. Bunu, werkzeug.Request ve werkzeug.Response kullanarak saf bir Flask görünümünde kullanmak için, bunun için ertelenmiş uygulamanız gerekir ( burada tipfy için yaptığım gibi).
Aynısı diğer işleyiciler için de geçerlidir: blobstore (Werkzeug hala aralık isteklerini desteklemiyor, bu nedenle kendi işleyicinizi oluştursanız bile WebOb'u kullanmanız gerekir - bkz. Tipfy.appengine.blobstore ), mail, XMPP vb. veya gelecekte SDK'ya dahil edilecek diğerleri.
Aynı şey, web uygulamasına dayalı olan ve web uygulaması ile çerçevenizi karıştırmak istemiyorsanız, diğer çerçevelerle çalışmak için bir bağlantı noktası veya adaptöre ihtiyaç duyan ProtoRPC gibi App Engine ile oluşturulan kitaplıklar için de geçerlidir. aynı uygulamada seçim işleyicileri.
Dolayısıyla, farklı bir çerçeve seçseniz bile, a) bazı özel durumlarda web uygulamasını kullanmak veya b) kullanıyorsanız, belirli SDK işleyicileri veya özellikleri için sürümlerinizi oluşturmak ve sürdürmek zorunda kalacaksınız.
Werkzeug'u WebOb'dan çok tercih ederim, ancak bir yıldan fazla bir süredir tipfy ile yerel olarak çalışan SDK işleyicilerinin sürümlerini taşıdıktan ve sürdürdükten sonra, bunun kayıp bir neden olduğunu fark ettim - GAE'yi uzun vadede desteklemek için, en iyisi yakın kalmaktır. webapp / WebOb. SDK kitaplıkları için desteği çocuk oyuncağı haline getirir, bakım çok daha kolay hale gelir, yeni kitaplıklar ve SDK özellikleri kutudan çıkar çıkmaz çalışacağından ve aynı App Engine araçları üzerinde çalışan büyük bir topluluğun avantajı olduğu için geleceğe daha dayanıklıdır.
Belirli bir webapp2 savunması burada özetlenmiştir . Webapp2'nin App Engine dışında kullanılabileceğini ve popüler mikro çerçeveler gibi görünmesi için kolayca özelleştirilebileceğini ve bunun için bir dizi çekici nedeniniz olduğunu ekleyin . Ayrıca, webapp2'nin gelecekteki bir SDK sürümüne dahil edilmek için büyük bir şansı var (bu ekstra resmidir, bana alıntı yapma :-) bu onu ileriye taşıyacak ve yeni geliştiriciler ve katkılar getirecektir.
Bununla birlikte, Werkzeug ve Pocoo adamlarının büyük bir hayranıyım ve Flask ve diğerlerinden (web.py, Tornado) çok ödünç aldım, ancak - ve biliyorsunuz, önyargılıyım - yukarıdaki webapp2 avantajları dikkate alınmalıdır.
flask-babel
Birden çok dil desteği veflask-seasurf
formlarımı korumak için CSRF desteği gibi bana gerçekten yardımcı olan flask eklentileri buldum .