这几天一直在考虑MobageTown的应用设计
虽然OpenSocial的基本流程是理解的。
但是具体是如何实现的,一直没法子建立起具体的概念来。
之前开发的动态网站,无论使用什么样的框架,基本流程都是B/S的Request/Response的交互。而现在的OpenSocial的所有请求,都必须通过中间的Gadget容器服务器来传递。
也找了一些资料,还是不得要领。普通的HelloWorld实在是太简单了,一个Gadget XML就可以轻易实现。但是如何前台交互,后台交互却还是一片模糊。
最后还是Google OpenSocial的wiki比较好,它的一个实例是制作一个朋友间相互赠送礼物的应用。从最简单的HelloWorld级别,不断迭代,直到第八轮的完善Widget。不过就这么一个简单Sample,我已经很深刻地感触到,JS在OpenSocial的重要性。由于相对于后台的间接访问,前台的直接操作更加快速。OpenSocial提供了一大堆的JS API,可以提供很多信息操作,比如取得用户的朋友列表等。
但是JS的大量使用的同时,也带来一个问题,就是JS的编成模式和以往的后台动态网页语言,或者是简单的前台的JS很不一样,而且Debug,测试也相当不简单。还记得之前解析RTM的JS架构,发现它已经是一个拥有的XML配置文件,类层次结构的完整的系统模块。这次似乎也是如此,看来不能再简简单单的把JS看作Onclick,也不能停留在Jquery等Ajax工具的语法使用上,而是需要从根本上把JS也看成一套完成的系统语言啦。