“豆瓣说” 背后的前端开源技术
提及网站: http://shuo.douban.com/
这是一篇毫无技术含量而又不得不说的文章。一、我不能深度评论这些技术,因为本身并不熟悉,所以可能看起来真的“毫无技术含量”,但要介绍的这些又都是含金量很高的开源技术。二、豆瓣说太简单了,简单的都不知道从哪个地方谈这个产品,但又答应了 @gaowhen 同学说要写某个产品的时候第一篇应该写豆瓣说;另外一个不得不说的原因是这些开源技术都是值得前端去研究的。
- Javascript MVC: backbone
为大型 JS 程序提供的一套 MVC 框架。文档非常完善,像大名鼎鼎的 37signals 都在用。例如这个 Basecamp Mobile 就是 37signals 的产品。这个很让人喜欢的 To-Do List 工具 Flow 也是用这个来实现 MVC 的。还有像 Mobile SoundCloud、Insta-great!、QuietWrite 等都在用。
- 模板语言:mustache
这个模板语言,上次 @Fenng 在推上推荐的时候,原话是 “A client-rendering framework for Facebook by Changhao Jiang http://t.co/NIo6vCd” 嗯。据说很牛A。当然,支持各种语言,其实包括 javascript 和 豆瓣服务端用的 python。
- 实时程序实现: Socket.io
看到 Socket + 前端,是不是想到 HTML5 的 Web Sockets 了。是的。Socket.io 支持 HTML5 的 Web Socket,同时也支持使用 flash (豆瓣使用的应该是 flash)等兼容其他不支持 Web Sockets 的浏览器。对移动设备的兼容性也非常好。再时后端运行支持 python ,这多适合豆瓣啊。
另外,从 URL 和对话的 侧滑 slide-panel 都是仿 twitter 的。至于 URL 为什么为这样做,可以参照 Google 的文章。至于侧滑这种这么好的体验方法拿来用,也没有什么可说的,只能说还有比这个更好的吗!
对于为什么公司会让他们使用这些技术,我只能说他们很酷,这在某些公司是很难做到的。再想想豆瓣的 HTML5 应用都做得…,其实也挺佩服这帮人的。还有 @kejunz 去年写的这篇文章:新版twitter背后的技术。这些技术在豆瓣上有多少已经用上了呢?哈,大部分呢。这是多好的事,如果是你,你会如何做?
不过,话说回来。这些都只是我个人看得到的。或许有更多关于前端的开源技术运用在里面,而我没看出来。是应该好好想想自己应该怎么去做了。团队可以怎么去做了。
至于页面的 HTML 什么的嘛,不是坑爹么。全都是 div,加上这么多嵌套。不知道是是谁写的,偷笑一下。我不是有意冒犯,您快修改回来吧。然后,哈哈哈哈哈,加油吧同学。
好吧,至此,这篇没技术含量的文章到此结束。总结就是,去用吧,去告诉别人为何要用吧。在新技术的应用上,某些公司应该向豆瓣说前端团队学习学习。