那,现在使用函数式的思想来说明,Web Restful如何建模.
####Code
fA() => json
fB() => json
fC() => json
fM() => json
fHTML(json) => HTML
fPhone(json) => phone text
以最熟悉的JSON数据服务为例,建立fA、fB、fC、fM、fHTML、fPhone6个接口,这是以函数的方式,而不是OO的方式。至于函数,我现在的感觉就是解放了修改,一旦模型建立,修改并没有OO那么痛苦的链去联系。
####API
- fA() 输出账单数据
- fB() 输出推荐栏目
- fC() 输出文章和评论内容
- fM() 同时输出上面3项内容
- fHTML(json) 以HTML文本格式化fM()输出的内容
- fPhone(json) 以移动端文本格式化fM()输出的内容
那,如同这份列表所示,ta表示每个函数抽象到原子级别。
在一个路由,可以只用fA()来输出账单,或者只用fC输出文章和评论内容,还可以搭配输出,而且最重要的他们是解耦合的。
还可以fA(format, callback)来使用动态的函数format来格式化输出的json,这一点完完全全高于OO的编码效率。
4 回复
假如说,有一个网站是这样的:
-------------------------
[ 账单 ] fA()
[ 推荐栏目 ] fB()
[ 文章和评论 ] fC()
-------------------------
还可以是这样的:
-------------------------
[ 账单 ] fA()
[ 推荐栏目 ] fB()
-------------------------
也可以是这样的:
-------------------------
[ 文章和评论 ] fB()
[ 推荐栏目 ] fC()
-------------------------
还可以…
总之呢,这里是介绍如何软件系统组件化,以此有更好的扩展.