Tornado 2.1 released
Tornado is intriguing, but the main thing I don't like about it is how it reinvents the wheel with a lot of its components. For example:
- They created a lot of Web-stuff parsing code themselves, when Werkzeug provides a tested and thorough implementation of a lot of that. (Especially routing, regex-based routing just looks horribly kludgy once you have used werkzeug.routing.)
- They created their own template language when they could have used Jinja. (In fact, tornado.template is basically a half-as-powerful copy of Jinja.)
- They created their own database access layer when they could have used SQLAlchemy instead.
Sometimes I think people take the concept of "minimal dependencies" way too far.
90% made up my mind to use Tornado for several upcoming projects, would love to hear some comments (good or bad) from anyone thats used it or using it.
Coming from php(mvc background), the only thing i don't like about tornado is that basically you have a Class per request, currently i'm in a process to refactor this so that:
www.site.com/controller/action/params/?vars -> would route to ->
class controller(requestHandler):
def get_action(self, *params, **vars): #do something self.write(response) def post_action2(self, *params, **vars): #.... and so on ....For a multiplayer, realtime, text-based game, like a quiz, should I dive in nodejs or Tornado?
I know Python but never played with server-side javascript before.
I'm especially looking forward to trying the new interface to Twisted and the gen module. I was about to write some async interfaces to things that are currently not - these new modules look like they'll be helping me out quite a bit.