Tri*_*tan 10 python django pylons tornado bottle
我注意到Python Web框架处理请求处理的三种主要方式:装饰器,带有单个请求方法的控制器类,以及带有GET/POST方法的请求类.
我很好奇这三种方法的优点.这些方法中有哪些主要优点或缺点?为了解决问题,这里有三个例子.
瓶子使用装饰器:
@route('/')
def index():
return 'Hello World!'
Run Code Online (Sandbox Code Playgroud)
Pylons使用控制器类:
class HelloController(BaseController):
def index(self):
return 'Hello World'
Run Code Online (Sandbox Code Playgroud)
Tornado使用请求处理程序类和类型的方法:
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")
Run Code Online (Sandbox Code Playgroud)
哪种风格是最佳做法?
Dan*_*all 10
实际上,您列出的三种方法中的每种方法都有一个原因,特定于每个项目.
现在,说了所有你应该知道你总是可以覆盖默认的框架行为.例如,我为Tornado 编写了一个MethodDispatcher,使其更像Pylons(好吧,我编写时考虑过CherryPy).由于有一个大的RequestHandler(而不是很多小的),它会减少Tornado的数量(并略微增加内存占用量),但它可以减少应用程序中的代码量并使其更容易阅读(在我的偏见中,当然=).
| 归档时间: |
|
| 查看次数: |
1778 次 |
| 最近记录: |