golang设计模式的一些看法

说明:此文章为腾讯云机器自动从本人csdn博客搬迁过来。是本人授权操作。

申明:无本人授权,不可转载本文。如有转载,本人保留追究其法律责任的权利。

龚浩华,QQ 29185807,月牙寂 道长

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

golang设计模式的一些看法

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

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

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

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

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

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

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

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

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

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

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

扫码关注云+社区