Go语言中文网 为您找到相关结果 16

golang channel 用法转的

一、Golang并发基础理论 Golang在并发设计方面参考了C.A.R Hoare的CSP,即Communicating Sequential Processes并发模型理论。但就像John Graham-Cumming所说的那样,多数Golang程序员或爱好者仅仅停留在“知道”这一层次,理解CSP理论的并不多,毕竟多数程序员是搞工程 的。不过要想系统学习CSP的人可以从这里下载到CSP论文的最新版本。 维基百科中概要罗列了CSP模型与另外一种并发模型Actor模型的区别: Actor模型广义上讲与CSP模型很相似。但两种模型就提供的原语而言,又有一些根本上的不同之处: – CSP模型处理过程是匿名的,而Actor模型中的Actor则具有身份标识。 – CSP模型的消息传递在收发消息进程间...阅读全文

博文 2015-07-29 03:00:00 jackluo

Go语言中Interface的理念

Go语言中Interface淡化了面向对象中接口应具有的象征意义,接口在Go语言中仅仅只是“表现形式”上相同的一类事物的抽象概念。在Go语言中只要是具有相同“表现形式”的“类型”都具有相同的Interface,而不需要考虑这个Interface在具体的使用中应具有的实际意义。这样的话,就把Interface的成本交给使用者了,而不是交给设计者。 设计者只负责设计method,也就是Interface的构成元素,Interface在具体的使用中应该有的实际意义都是交给Interface的使用者去确定。举个最简单的例子: 跑假设有两种意思:一种是逃跑,英文叫escape;另一种是跑步,英文叫run。如果中文就一种,把他叫做pao。 type BadMan struct{ } func (badM...阅读全文

博文 2015-01-22 16:00:04 chanshimudingxi

专访:听道哥聊互联网江湖——探底黑产,描绘作战地图

我是搬运工,原贴地址:http://click.aliyun.com/m/5826/ 摘要: 保卫阿里云这个中国 35% 的网站都坐落其上的云计算平台和上面的居民,道哥觉得自己守土有责,不容有失。 吴翰清,这个资深黑客拥有诸多身份:写“道哥的黑板报”的“文艺网红”& 阿里云云盾的负责人。 在他心里,第一个身份轻如鸿毛,第二个身份重若泰山。 保卫阿里云这个中国 35% 的网站都坐落其上的云计算平台和上面的居民,道哥觉得自己守土有责,不容有失。 探底黑产,描绘自己的作战地图,是他对自己职责要求的一部分。 他告诉我们一个秘诀:“想要知道中国的黑产有哪些行业,只要看淘宝的禁限售板块就够了。”DDoS攻击,敲诈勒索,暗网黑市,这些黑色产业,往往最终都会涉及到对阿里云上...阅读全文

Go 语言是 Google 的语言,不是我们的

> GCTT 观点:有一个组织把控 Go 的发展方向,这其实一定程度上是一件好事,否则 Go 不知道又发展成什么了。 在 Twitter 上,我看到了[下面的问题](https://twitter.com/kapoorsunny/status/1130150301468700674)([via](https://old.reddit.com/r/golang/comments/bqiyyb/generics_in_go/)): > 在 Go 话题下有很多人在讨论泛型,为什么我们不能拥有像 OpenGo 这样的东西,通过社区就可以实现 Go 的泛型,而非要等待官方的实现。就像 OpenJDK 一样 对于这个问题有很多答案,但是很少有人大大方方的说出来:Go 是 Google 的语言,不是社区的...阅读全文

GoLang channel 用法转的

一、Golang并发基础理论 Golang在并发设计方面参考了C.A.R Hoare的CSP,即Communicating Sequential Processes并发模型理论。但就像John Graham-Cumming所说的那样,多数Golang程序员或爱好者仅仅停留在“知道”这一层次,理解CSP理论的并不多,毕竟多数程序员是搞工程 的。不过要想系统学习CSP的人可以从这里下载到CSP论文的最新版本。 维基百科中概要罗列了CSP模型与另外一种并发模型Actor模型的区别: Actor模型广义上讲与CSP模型很相似。但两种模型就提供的原语而言,又有一些根本上的不同之处: – CSP模型处理过程是匿名的,而Actor模型中的Actor则具有身份标识。 – CSP模型的消息传递在收发消息进程间...阅读全文

朋友融资了,给我看了一眼他们价值1个亿的Go AI 代码

最近AI真是火,随便一段代码都可以融资上亿,AI俨然是未来的趋势。AI什么?你不知道,那么我们先来普及下什么是AI! 人工智能(英语:Artificial Intelligence,缩写为AI)亦称机器智能,指由人制造出来的机器所表现出来的智能。通常人工智能是指通过普通计算机程序的手段实现的人类智能技术。该词也指出研究这样的智能系统是否能够实现,以及如何实现。同时,人类的无数职业也逐渐被其取代。 AI的核心问题包括建构能够跟人类似甚至超越的推理、知识、规划、学习、交流、感知、移动和操作物体的能力等[7]。人工智能目前仍然是该领域的长远目标[8]。目前强人工智能已经有初步成果,甚至在一些视频识别、语言分析、棋类游戏等等单方面的能力达到了超越人类的水平,而且人工智能的通用性代表着,能解决上述的问...阅读全文

博文 2018-12-14 16:34:42 飞雪无情

Golang中的接口

软硬件环境 Windows 10 Go 1.8 什么是接口? 接口定义了一组方法,但是这些方法不包含实现的代码,另外接口里也不能包含变量。如下定义了一个接口 type intfNamer interface { Method1(param_list) return_type Method2(param_list) return_type ... } 为什么要设计接口? Go不是传统意义上的面向对象编程语言,它没有类及其继承的概念。接口是一种契约,实现类型必须满足它,它描述了类型的行为,规定类型可以做什么。接口彻底将类型能做什么,以及如何做分离开来,使得相同接口的变量在不同的时刻表现出不同的行为,这就是多态的本质。 简单接口示例 package main import ( "fmt" ) ty...阅读全文

博文 2017-05-25 00:36:04 djstava

Golang OOP、继承、组合、接口

http://www.cnblogs.com/jasonxuli/p/6836399.html 传统 OOP 概念 OOP(面向对象编程)是对真实世界的一种抽象思维方式,可以在更高的层次上对所涉及到的实体和实体之间的关系进行更好的管理。 流传很广的OOP的三要素是:封装、继承、多态。 对象:可以看做是一些特征的集合,这些特征主要由 属性 和 方法 来体现。 封装:划定了对象的边界,也就是定义了对象。 继承:表明了子对象和父对象之间的关系,子对象是对父对象的扩展,实际上,子对象“是”父对象。相当于说“码农是人”。从特征的集合这个意义上说,子对象包含父对象,父对象有的公共特征,子对象全都有。 多态:根据继承的含义,子对象在特性上全包围了父对象,因此,在需要父对象的时候,子对象可以替代父对象。 传...阅读全文

博文 2019-06-07 17:50:54 jasonxuli

golang工具之present

Golang Present 是 Golang 社群开发出來的一个简单工具,通过简单的语法可以制作 ppt(语法近似于 Markdown)。 简介 Golang 相关的技术幻灯片有多种格式,以 .ppt, .pdf 和 .slide 为主。.slide 格式是随着 golang 诞生而出现的一种 present 格式,Go 核心开发成员似乎十分喜欢以这种格式分享 Go 语言。在Golang 官方,几乎所有技术会议的 talk 幻灯片 均是以 .slide 形式提供的。.slide文件通过 web 服务来进行查看,有一个名为 present 的工具可以在本地查看 .slide 文件。 安装 // 下载 go get -u golang.org/x/tools/cmd/present // 安装...阅读全文

博文 2018-05-19 18:34:39 happen

Golang learning 结构体 struct 与面向对象

Go 语言并不是传统意义上的面向对象语言,但是实现很小的面向对象的机制。 匿名嵌入并不是继承,无法实现多态处理,虽然配合方法集,可用接口来实现一些类似操作,但是其本质是完全不同的。 type Animal struct { 声明Animal name string age int } type Cat struct { Animal 匿名字段 teeth string "牙" "牙" 不是注释,字段标签(tag)不是注释,是用来描述字段的元数据,是struct的一部分 leg int } type Animal struct { 声明Animal类 name string age int } type AnimalAction interface { 声明AnimalAction 接口类 e...阅读全文

博文 2019-05-14 18:34:53 wangyongyue

【Go学习笔记】11、方法method

方法method Go中虽没有class,但依旧有method 通过显示说明receiver来实现与某个类型的组合 只能为同一个包中的类型定义方法 Receiver 可以使类型的值或者指针 不存在方法重载 可以使用值或指针来调用方法,编译器会自动完成转换 从某种意义上来说,方法是函数的语法糖,因为receiver其实就是方法所接收的第1个参数(Method Value vs. Method Expression) 如果外部结构和潜入结构存在同名方法,则优先调用外部结构的方法 类型别名不会拥有底层类型所附带的方法 方法可以调用结构中的非公开字段 1234567891011121314151617type A struct { Name string}func main (){//method ...阅读全文

博文 2017-05-30 05:10:22 HundredLee

golang中Context的使用场景

context在Go1.7之后就进入标准库中了。它主要的用处如果用一句话来说,是在于控制goroutine的生命周期。当一个计算任务被goroutine承接了之后,由于某种原因(超时,或者强制退出)我们希望中止这个goroutine的计算任务,那么就用得到这个Context了。关于Context的四种结构,CancelContext,TimeoutContext,DeadLineContext,ValueContext的使用在这一篇快速掌握 Golang context 包已经说的很明白了。本文主要来盘一盘golang中context的一些使用场景。更多go语言内容请关注:http://www.fastgolang.co...阅读全文

币币交易能够减少成本方便快捷的兑换你想要的数字资产

数字资产是一个比较大的概念,币币交易平台主要是针对区块链数字资产之间的币与币之间的快捷兑换,减少用户的投资成本和时间成本。作为区块链技术的第一个实际应用场景,数字资产交易平台在很大程度上是在对区块链技术特点的推广,因此数字资产交易平台一直是数字资产的有力助手。玩家想要进入币圈就先要从购买数字资产开始。在进入“币圈交易”之前,想要购买数字资产有两个途径:1、找熟人购买 2、上平台用户可以通过 OTC 场外交易来完成法币与数字资产的兑换。场外法币交易类似于淘宝的 C2C 平台,用户直接与用户交易,而平台则作为担保方。找熟人购买的这种情况到目前为止是比较少的。所以就会上平台购买,因为在2017年九四之前是用法币交易(直接用法币购买数字资产,平台坐庄)。而在九四之后法币交易直接演变成了币币交易和场外...阅读全文