golang设计模式的一些看法

screscent · · 6230 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

golang设计模式的一些看法
  


对于cc++来讲,设计的对象存在着这几个问题

 

1、  对象是死的,只有自己的属性,行为(函数)。没有可以自己独立执行的机制

2、  对象是存活的,有自己的属性,行为(函数),还有独立执行的活动(自己独立的线程)。但由于系统的限制,这种对象数量不能过多(线程数量不能太多)。

3、  对象是半存活的,有自己的属性,行为,没有独立的执行活动(没有自己独立的线程)。需要借助于其他对象的线程调度。

 

以上是cc++语言的一些限制。其他语言不是熟悉,不进行评判。但大多数也是类似的。

 

那么对于golang语言来讲,设计的对象可以是

存活的,每个对象,有自己的属性,有自己的行为,也有自己的活动(通过协程来实现)。那么这样来讲,golang就可以实现对对象的完整模拟实现。就犹如我们现实世界,个体能够保持独立性,自治性。

 

那么个体之间的联系呢,在golang语言中,可以通过chan来实现。就犹如现有的社交网络一样。

 

Golang中的对象,就是模拟节点,而chan则是模拟链接通信。这些则是golang区别于其他语言的一些重大特性,所以用golang语言开发,能够更好的理解和实现我们的世界。

 

 

那么有了这些机制,对于群体智能,就能很好的模拟。每个个体的行为是独立的,个体之间通过一些信息交流。当个体数量达到一定程度的时候,其群体行为就会涌现出来。在某种程度上来说,这个也是大数据分析的一种方式。

 

我个人很看好golang语言,也正是这些东西,使得golang语言能与其他语言有着本质的区别。

 

 

龚浩华

QQ 29185807

2014121509:07:52


有疑问加站长微信联系(非本文作者)

本文来自:CSDN博客

感谢作者:screscent

查看原文:golang设计模式的一些看法

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

6230 次点击  
加入收藏 微博
2 回复  |  直到 2000-01-01 00:00:00
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传