Reusable webapp的思考(4)
刚刚发现Django大牛James Bennett在06年就写了这篇文章:
Django tips: Write better template tags
这几天学习下来有如下感受:
对Django webapp的理解不应该片面化
Django webapp其实就是一个python package, 里面可以是任何python的代码,并不是一定得要有Model, View, Templates才算一个webapp.
比如一个只实现template tag的包完全可以视为一个portable web app. 因此设计一个reuseable webapp不应该总是局限在实现一个含有url.py, model, view, template的东西。 相反,在某些情况下,也许一个middleware, 一个template tag就是一个perfect容易重用的webapp.
我在写Reusable webapp的思考(1)对django的webapp理解是片面的。
要抑制重新发明轮子的冲动
其实思考过程中,以及过去学习过程中,由于有RoR, ASP.net, Java/Structs等背景和web开发的经验,常常在对比和自我思考中学习,因而常会觉得这个好像缺少,那个有些不爽的念头,进而产生是否应该自己造些轮子的冲动。
事实上,随着思考学习的深入,我得说django的设计是非常优雅的,迄今为止我的需求都可以在django设计内优雅地解决,还没有重造任何轮子的必要。 过去觉得需要造轮子,只是自己的理解还不够深刻而已。
Java领域有过多的框架可以视为是一个重大的教训,我想一方面可能因为sun的责任过度重视庞大复杂的EJB之类的东西,却忽略了诸如web framework, DI framework等基础部件的构造;另一方面可能重新发明轮子太过容易了(也可能老轮子实在太僵化了,或者是某种Java深层的问题导致一个框架往往总不能够灵活?),造成了这种百花齐放的局面。
Related posts:
- ScoFM (Social Computing Open Framework for Mobile) - Nokia’s MSF (Mobile Social Framework)
- Looking for partners to attend Startup Weekend Seattle in Mar 19-21
- Ideas的演变 -- How to kill too many ideas
- app-engine-patch is now officially dead
- 个人KB, 群组KB的一些随想
- 警惕Context的push()和pop()
- 继续推荐一下Project Seattle
- GAE的blobstore初步体验
- 我朝Internet南北不畅通的解决方案(老旧方案)
- Seattle: 开放P2P云计算平台 / 未来的anti GFW利器?
Search related in web: