ws0110的个人博客分享 http://blog.sciencenet.cn/u/ws0110

博文

关于软件编程方法的联想

已有 2723 次阅读 2012-10-31 23:15 |个人分类:随心随性|系统分类:教学心得| 面向对象, 面向过程, 面向组件, 面向方面, 面向服务

面向过程的方法:如果想做一把吉他,你得先把它分解成琴头、琴脖子、琴身、琴弦等。琴身又可以进一步分解成面板、背板、侧板,这样自上而下逐步降低其复杂度,然后选用相应的材料分别制作完成,这个过程可比作模块化编程,制作吉他是个主函数,制作琴身是个子函数(模块),制作面板是个子函数的子函数(子模块)。

面向对象的方法:吉他做好后,暴露在外面的是琴弦,其他的属性都被封装了,吉他成为一个对象。如果想演奏,那还得有个吉他手,这时候吉他是个对象,吉他手是另外一个对象。吉他手通过调用弹、拨、点、勾等方法,向吉他发出消息,吉他响应消息,发出优美的旋律。

面向接口的方法:吉他手一旦学会了一把吉他的弹奏,当然不希望换把吉他就不会弹了。那就得给吉他定一个标准,比如说,凡是可以通过弹、拨、点、勾等方法进行演奏的乐器那就叫做吉他。这样,吉他手和吉他是上下层的关系,不用因为换一把吉他,就得换吉他手。

面向组件的方法:如果要搞个乐队,光有吉他和吉他手是不够的,还得有架子鼓、鼓手、电子琴、键盘手等这些对象。一般来说吉他是吉他手自己携带的。这时候可以再做一层封装,就是把吉他对象和吉他手对象封装成一个“乐队组件”,把电子琴和键盘手封装成另外一个乐队组件。因为乐队组件是具有相对独立演奏功能、可独立演奏的实体。组装个乐队就很简单了

面向代理的方法:乐队得挣钱吧,如果乐队很有名,自己出面去联系演出,掉面子,自己等人上门找,公布联系方式又怕被骚扰,这怎么办?开发个网站怎么样?网站没有独立心智,只能被动的等别人找到你,而且不会讨价还价。那就找个经纪人吧。经纪人得具有以下几个最基本的特征,反应性,得了解市场的行情、热点城市、哪里准备搞演唱会,然后作出反应;主动性,经纪人得主动去联系演出,把乐队演出排满了,自己也才有钱挣;自治性,一场演出多少钱,经纪人可以全权代表乐队去谈,在底线的基础上得到尽量多的报酬。

面向方面的方法:如果每个乐队和明星都找经纪人,也有些麻烦,一个人养一个经纪人可能成本较高,经纪人不干了得重新找,经纪人请病假或事假还没了生意。要统一解决经纪问题,那就干脆签约经纪公司吧。这种统一解决不同对象或组件的共性问题的方法,就叫面向方面的编程。

面向服务的方法:除了公司提供经纪服务,明星们还可能希望享受到其他服务,比如说他还希望有人打扫卫生、做饭、伺候坐月子、教小孩学习等,那他可以去找各种各样保姆和家教,也可以统一找家政公司服务。这样根据需要把不同的服务整合起来,你就可以过上明星般的醉生梦死的生活。

网格计算:这好比要搞一台央视春晚(聚合分散的资源满足大型应用),春晚太复杂了,不是一两个人导演、一两个明星、一两个乐队就能搞定(对任何单一的超级计算机来说仍然大得难以解决的问题),必须将其分解成歌舞类、语言类、戏曲曲艺类等一个个节目(子任务),然后再找一些春节期间无档期的明星大腕(空闲的计算资源),让他们帮忙分别创作、排练(分布式计算),最后把一个个节目整合串在一起才能成为春晚(犹如巨大的虚拟计算系统)。其中任何一个节目搞砸了,都会影响后续节目的进行和整台晚会的效果(网格的某个节点如果失效,可能会影响到其他节点和最终的计算结果),所以唱歌的一般都假唱,语言类的排练能把你累死,难怪宋丹丹、范伟吃不消,死也不再上了。  

云计算:这就好比有一个KTV(集中资源满足大众应用),你不用管音响效果,不用买功放、电视、麦克风(基础设施既是服务),不用找乐队伴奏(平台既是服务),不用怕跟不上节奏,不用记歌词(软件既是服务)。唱戏,唱红歌也好,唱RAP,唱摇滚也罢,不管你是唱美声、唱通俗还是唱民族,想唱什么就唱什么(一切皆服务)。



https://blog.sciencenet.cn/blog-741216-628092.html

上一篇:关于信息共享的几点思考
下一篇:寓言一则(关于基础地理信息共享的谎言)
收藏 IP: 218.66.59.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-9-27 06:58

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部