golang设计模式的一些看法

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

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

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

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

golang设计模式的一些看法

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

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

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

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

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

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

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

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

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

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

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

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

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏TEG云端专业号的专栏

【Augustzhang 张元龙】知根知底,方能游刃有余

小编语:据江湖传闻,龙哥从初中就开始写代码,高中通过计算机竞赛免试上了大学,大学里则是ACM大神。2010年毕业加入腾讯,先后从事密保、验证码等后台研发工作,...

3164
来自专栏IT大咖说

降低大数据开发难度,轻量级计算实例

内容来源:2018 年 1 月 27 日,润乾软件创始人蒋步星在“TECH INSIGHT 暨 ArchData技术峰会成都站”进行《轻量级大数据引擎》演讲分享...

824
来自专栏ThoughtWorks

Web App性能优化之亮剑|洞见

自计算机诞生以来,系统性能问题亘古未变,从指令级优化到集成系统的优化,可谓愈来愈复杂。每种类型的性能问题即便出现的场景不尽相同,但依然有一些性能优化模式,久经沙...

3296
来自专栏程序人生

从 Pipe 到 Flow

之前的文章我们谈论了 pipe 之美:一件复杂的事务性的工作,我们可以将其分解成一个个小的组件(或者处理步骤),用 pipe 将其串联起来。举个实际的栗子:通过...

3389
来自专栏Leetcode名企之路

【工程】在线诊断系统设计与实现

本文分享一些在线问题诊断的经验,主要是业务层面,服务层面的在线问题诊断一般需要依赖服务监控系统和报警系统来辅助定位问题。

602
来自专栏微信公众号:Java团长

以技术面试官的经验分享毕业生和初级程序员通过面试的技巧(Java后端方向)

本来想分享毕业生和初级程序员如何进大公司的经验,但后来一想,人各有志,有程序员或许想进成长型或创业型公司或其它类型的公司,所以就干脆来分享些提升技能和通过面试的...

441
来自专栏狐狸

工厂模式(Factory)

简单工厂和工厂方法这俩个设计模式不做详细介绍,请各位看官自行百度,有大量的解释。再次我简单引用一下其他博客主对这三种模式的理解。

541
来自专栏领域驱动设计DDD实战进阶

领域驱动设计之实体、值对象、领域服务

3759
来自专栏蓝天

使用protocol buffers优缺点分析

很早就听说过PB(protocol buffers的简称),但从未实际地去了解,最近动手对它进行了初步了了解和使用,由于它长得和RPC/IDL相似,加上以前有...

652
来自专栏Road

设计模式 -- 设计原则

Define: Software entities like classes,modules and functions should be open for...

1485

扫码关注云+社区