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

区块链的商业应用:超级账本(Hyperledger)

背景 超级账本(Hyperledger)是linux基金会下的众多项目中的一个。是由IBM、因特尔,还有金融公司,GP摩根以及其他联合机构于2015年提出来的区块链项目,超级账本还包括4个框架项目:Sawtooth、Iroha、Fabric、Burrow。其中广为人知的是Fabric。当前成员大约140个,其中1/4来自中国,现在中国技术组由万达、华为、IBM担任主要负责,负责中国会员和中国需求的提供,以及推进代码。 超级账本是什么? 正如Hyperledger官方网站上的描述,这一项目的目标是发展一个跨行业的开放式标准以及开源代码开发库,允许企业创建自定义的分布式账本解决方案,以促进区块链技术在商业当中的应用。 我的理解,超级账本Fabric是一门编程语言,它定义了编程标准,函数库等基础规...阅读全文

博文 2017-06-23 14:07:18 乔延宏

Go中进行字符集转换

Go代码本身是UTF-8的,而且官方没有提供相关字符集的转换库。不过,目前已经有一些开源库支持字符集转换。 1. [iconv-go](https://github.com/djimenez/iconv-go),通过cgo封装了iconv库; 2. [qiniu iconv](https://github.com/qiniu/iconv),同样通过cgo封装iconv库; 3. [go-charset](http://code.google.com/p/go-charset/),支持UTF-8转换为其他字符集(非iconv库),同时也封装了iconv,提供更多字符集的转换; 4. [Mahonia—a character-set conversion library fo...阅读全文

区块链技术:超级账本(Hyperledger)

摘要超级账本(Hyperledger)是linux基金会下的众多项目中的一个。是由IBM、因特尔,还有金融公司,GP摩根以及其他联合机构于2015年提出来的区块链项目,超级账本还包括5个框架项目:Sawtooth、Iroha、Fabric、Burrow、Indy和3个工具项目:Blockchain explorer、Cello、Composer。其中广为人知的是Fabric。当前成员大约140个,其中1/4来自中国,现在中国技术组由万达、华为、IBM担任主要负责,负责中国会员和中国需求的提供,以及推进代码。下图是项目之间的逻辑关系图: Hyperledger Fabric: 区块链技术的一个实现,它的目标是成为开发应用和解决方案的基础,设计为模块化架构,允许组件如共识和成员服务模块,可以插入...阅读全文

博文 2017-09-08 07:05:04 吉普森

深圳招聘Golang工程师 -互联网金融领域

深圳招聘Golang工程师,主要是负责互联网金融产品、创新性金融产品的架构设计、后台系统的开发和维护等工作。 需要具备: 1. 2年以上Golang的开发经验,或者Java/C/C++等经验3年以上且愿意尝试 golang 语言开发; 2. 熟悉数据库、缓存、MQ; 3. 对数据结构和常用算法、网络编程熟悉; 4. 对学习新技术有极大的热情。 待遇:行业内领先的薪酬,固定12个月,1~6个月的年终等;工作地点:南山 简历请投递到:chen_fangya@126.com// Wechat(微信):chenfangya002 如对岗位有疑问,可以通过回复本帖,或邮箱直接联系我,看到后会第一时间回复。 ...阅读全文

用记事本写一个go的helloworld,带有中文,执行go run 时提示“ invalid UTF-8 encoding”,求大神指点

编译过程如下: E:\005GitHub\GoStudy>go run TestGo.go # # command-line-arguments #.\TestGo.go:6:27: invalid UTF-8 encoding ``` package main import "fmt" func main(){ fmt.Printf("hello world.你好,世界!") } ``` 在使用Pycharm中的Go语言插件进行编译不会出现问...阅读全文

[杭州] 阿里中间件招 golang 工程师

阿里中间件是阿里集团负责业务底层共享技术及部分技术基础设施的。 招聘的这个岗位,会负责一个没有其它互联网公司投入生产环境的创新技术,负责集团的一个底层基础设施的开发,为上层的业务部门提供技术生态保障。 这是我个人负责招聘的岗位,进来后,我将和你一起共同完成这个项目。 需要你有: 1. 扎实的 Linux 系统开发经验。 2. 熟悉高并发、网络编程,熟悉系统高可用和稳定性方法策略。 3. 两年以上工作经验,其中 golang 开发经验至少一年;或者 Java/C/C++至少三年且愿意尝试 golang 语言开发。 4. 善于独立思考,有快速学习能力,不断突破技术瓶颈,乐于探索陌生技术并将其付诸实践。 5. 欢迎在简历中附上技术博客、Github 提交记录,我会认真查...阅读全文

GO語言基礎教程:序章

首先自我介紹一下我自己,我是一個coder,目前主要從事B/S程序開發工作,懂點PHP;ASP;JSP;JS;VB;C;DELPHI;JAVA,另外知道幾個數據庫,除此之外別無所長,那麼我為何會選擇學習GO呢!接下來我對此詳細說明一下. 首先我來說明一下C/S程序和B/S程序的優缺點: C/S程序主要是運行在客戶端的電腦上,通常採用安裝的形式,以windows操作系統為例,軟件會被編譯成二進制然後以exe或dll等方式存在於客戶端的電腦上,其執行效率是非常高的,當然了除非編程者把代碼寫的非常糟糕,除此之外C/S程序幾乎不需要考慮安全問題和負載問題,除此之外C/S程序開發出來的東西幾乎是不開源的,使用者只能被動接受卻不能更改軟件的功能(如果您會彙編的話那就另當別論了).能夠開發C/S程序的語言...阅读全文

HyperLedger Fabcar 学习笔记(基于超级账本编写第一个应用)

HyperLedger Fabcar 学习笔记(基于超级账本编写第一个应用) 翻译自:http://hyperledger-fabric.rea... 编写第一个应用程序 我们需要实现如下三个步骤 首先设置一个开发环境 学习一些简单的我们app将会用到的智能合约的参数 开发一个app能够更新查询一个账本 设置开发环境 首先确保必备的fabric image等已经安装成功,如果没有安装,请参考(https://hyperledger-fabric.re...) 下载fabric-samples,并且安装必备的运行工具。(参考地址:https://hyperledger-fabric.re...) 上述步骤如果不想看英文的同学,可以参考(搭建第一个超级账本网络的方法)https://segmen...阅读全文

博文 2018-04-12 21:34:38 ulysses

超级账本01--环境搭建

超级账本简介 2015年12月, 由Linux基金会牵头, IBM、Intel、Cisco等共同宣布了Hyperledger联合项目成立. 超级账本项目为透明、公开、去中心化的企业级分布式账本技术提供开源参考实现 目前超级账本社区中已有 艾亿数融、OnChain、比邻共赢、BitSE、布比、三一重工、万达、华为等诸多国内企业加入 超级账本首次将区块链技术引入到分布式联盟账本的应用场景中, 为未来基于区块链技术打造高效率的商业网络打下基础 超级账本由面向不同目的和场景的八大顶级子项目构成: Fabric: 目标是区块链的基础核心平台,支持PBFT(拜占庭容错算法)等新的共识机制, 支持权限管理 Sawtooth: 是Intel 主要发起和贡献的区块链平台. 支持全新的基于硬件芯片的共识机制Pr...阅读全文

博文 2018-07-11 22:34:50 陆地潜水鱼

[北京海淀] Duang~~~美餐网招聘 web 前端/ Golang / Android,寻找 Geek 的小哥哥~~(本帖长期有效)

关于美餐: 2011 年,获得来自真格基金和九合创投的天使投资。 2012 年,获得来自 KPCB 的 A 轮投资。 2013 年,获得来自 NGP 的 B 轮投资。 2014 年,获得来自挚信资本的 B+ 轮投资。 2015 年,获得来自美团点评的 C 轮战略投资。 2016 年,美餐荣获中国最具潜力创业公司,员工福利管理服务机构十强,年度最佳企业服务商等荣誉。 2017 年,美餐荣获中国团餐高成长性品牌企业,中国团餐十强企业,中国生活服务产业十大创新力企业等荣誉。 2017 年,获得来自高盛( Goldman Sachs )的 D 轮投资。 2018 年,美餐荣获中国餐饮百强企业。美餐智能餐柜 SMARTWAITER W1 荣获德国 iF 设计奖和红点奖。 2018 年,获得来自阳光保险...阅读全文

博文 2018-12-11 15:39:59 Lucky_9

【上海&北京】Onchain小蚁招聘Go区块链开发工程师

我们在做什么? Onchain从2014开始区块链平台的设计与研发。经过持续的研发与改进,逐步形成了以基于区块链数字资产应用为基础,可以灵活扩展到各类基于分布式账本平台的业务应用支持的基础平台,并且持续地结合区块链/分布式账本领域相关技术的发展、不同业务领域的应用发展创新,开发与增强平台功能与企业级工具,形成可落地的综合性企业级分布式账本平台体系。 我们需要什么样的人? 职位描述: 1、从事区块链(BlockChain) 核心协议的应用开发. 职位要求: 1、本科及以上学历,软件工程、计算机等相关专业; 2、精通Go/C/C++/Java中的一种或多种, 具有良好的编程习惯和风格; 加分项: 1、有比特币或其他类似币类系统...阅读全文

设计模式:程序员跳不开的坑

学编程,总是逃不了要学“算法”,也总跳不开要学“设计模式”。 无论学习什么语言,设计模式始终是我们必须掌握的,这是程序员的基本功。 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。 项目中合理的运用设计模式可以完美的解决很多问题,每种模式在现在中都有相应的原理来与之对应,每一个模式描述了一个在我们周围不断重复发生的问题,以及该问题的核心解决方案,这也是它能被广泛应用的原因。 今天给大家推荐的新课《Go 语言实现 23 种设计模式》,教...阅读全文

博文 2020-05-26 23:32:49 实验楼

分享一波golang公链学习资料

尹成翻译注释版bitcoin-golang 源码https://github.com/yinchengtsinghua/golang-bitcoin-chinese尹成翻译注释版以太坊ethereum源码https://github.com/yinchengtsinghua/go-ethereum-chinese尹成翻译注释版超级账本fabric源码https://github.com/yinchengtsinghua/Fabric-Chinese尹成基于以太坊实现EOS的dpos共识算法,实现go版本EOS的dpos公链https://github.com/yinchengtsinghua/golang-Eos-dpos-Ethereum尹成定制翻译版ipfshttps://github....阅读全文

博文 2019-01-22 18:34:43 兄弟连区块链培训

Jupyter 笔记本的 Go 内核 gophernotes

### gophernotes - Go in Notebooks gophernotes is a Go kernel for Jupyter notebooks. Finally, we can have a reliable and maintained way to use Go interactively and code in the browser. Use gophernotes to create and share documents that contain live Go code, equations, visualizations and explanatory text. These notebooks, with the live Go code, can...阅读全文

Windows平台下编译GO语言

Google官方还没有放出Windows平台下的Go语言编译环境,不过对于想体验下Go语言的朋友可以尝试下爱好者写的 移植版本 下载: go-1.zip 环境设置: set GOROOT= set GOOS=mingw set GOARCH=386 例如我安装在如下目录 F:/tool/go-1/go/ 则设置如下: C:/>set GOROOT=F:/tool/go-1/go/ C:/>set GOOS=mingw C:/>set GOARCH=386 C:/>set GOBIN=F:/tool/go-1/go/bin 编译例子程序 在记事本输入一个程序并保存为hello.go package main import "fmt" func main() { f...阅读全文

(Yegor Maslov)我们放弃以太坊选择了超级账本

2019-03-25 区块链前哨 Yegor Maslov 等 在实际环境中,我们放弃以太坊选择了超级账本 本文要点: 不久前,OpenGift 团队探索了在生产环境中部署基于超级账本(HyperLedger)的区块链。本文呈现了我们集成它的尝试过程和所遇到的问题,以及帮助我们解决问题的技巧。 我们认为,与私有以太坊(Ethereum)网络相比,超级账本 Fabric 可能是基于区块链的业务应用程序更好的选择。 借助超级账本,我们可以构建一个系统,里面的客户不需要信任其他客户,合作者也不需要信任其他合作者(但是,客户必须信任合作者)。 该网络易于扩展,无需父组织也可存在。 超级账本并非没有技术缺陷,因此,要准备编写大量支持脚本以在生产环境中维护超级账本。 不久前,我们团队探索了在生产环境中部...阅读全文

博文 2019-03-29 02:34:40 大圣2017

SAP云平台,区块链,超级账本和智能合约

前一篇文章《Hyperledger Fabric on SAP Cloud Platform》,我的同事Aviva已经给大家介绍了基于区块链技术的超级账本(Hyperledger)的一些概要知识。Fabric是超级账本5个并行项目中的其中之一,因为发展较为成熟,SAP云平台对Fabric也提供了较好的支持。 学完了前一篇文章的理论知识后,今天我们来动手实践一下。 我们做的这个练习的范围很窄,就是学会如何使用go语言开发一组微服务,这组微服务包含读和写两个API,能够将数据写入架设于SAP云平台上的超级账本服务。 大家还记得之前Aviva介绍的智能合约(Smart Contract)么? 简单地说,应用程序通过智能合约接口同超级账本进行读写操作。我们将开发一个Hello World的智能合约,...阅读全文

博文 2018-09-27 10:34:48 JerryWangSAP

golang程序版本管理

概述 版本管理主要用于对运行程序的版本追踪,从而可以管理线上服务的运行版本,避免各个版本的服务程序混淆.这里通常的做法为在程序中埋入版本标志,同时该版本号会对应到git上的tag或release版本.从而对线上服务更改有一个更全面的信息说明.这里将介绍基于GNU风格一种版本命名方式. 1 版本号命名格式 主版本号 . 子版本号 [. 修正版本号 [. 编译版本号 ]] Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]] 示例 : 1.2.1, 2.0, 5.0.0 build-13124 Major 具有相同名称但不同主版本号的程序集不可互换。例如,这适用于对产品的大量重写,这些重写使得无法实现...阅读全文

hyperledger fabric (三)

区块链中的共识机制: 常用的共识算法有: POW 工作量证明 POS 股权证明机制 DPOS 授权股权证明 PBFT 拜占庭共识算法 fabric的技术特性 fabric的多账本特性 通道(channel):通道是两个或多个特定网络成员之间的通信的私有“子网”,用于进行需要数据保密的交易 一个通道包含若干成员,这些成员之间共享同一个账本。通道内所有成员共享账本数据并且共同维护账本。 一个通道可以包含多个会员,一个会员也可以在权限允许的情况下加入多个通道。 同时不同的通道中账本数据的格式也是不一样的,Fabric中账本的存储方式被设计成插件的形式,账本的数据可以选多种存储格式。 不同的会员可以根据自己的实际情况选择不同的数据存储方式。 fabric的账本特点: 使用基于Key的查询、范围查询、...阅读全文

博文 2019-01-09 22:34:40 stevenlife

2020 区块链 golang 版本(6)

封面 输入脚本和输出脚本 输入脚本(BitCoin Script) 所谓校验,就是当前输入脚本和比特币来源的输出脚本拼接后是否能够给顺利执行。如果能够顺利执行才能够说明交易有效。 输出脚本 实际中每一个区块包含许多笔交易,这些交易就组织成 Merkle Tree, 区块头和区块体 每一区块分为区块头和区块体两个部分。 区块头 区块头中包含比特币宏观信息,例如使用比特币哪一个版本的协议 Version PrevHash MerkleRoot target nonce Version 表示版本号,PrevHash 保存指向前一个区块的 hash 值,MerkleRoot 是表示交易的MerkleTree 的根节点。其实 target 和 nonce 是挖矿相关的,target 表示挖矿难度值而 ...阅读全文

博文 2020-04-28 03:32:56 zidea

我的Go语言学习之旅二:入门初体验 Hello World

好吧,所有的程序员们都已经习惯了,学习任何一门语言,我们都会以Hello World实例开始我们的学习,我也不例外。先来一个简单的例子 打开编辑器 (可以用记事本,我已经习惯 Notepad++了)输入以下内容 package main import "fmt" func main(){ fmt.Print("Hello World"); } 将其保存为 hello.go 接下来,我们就需要对其进行编译和执行。 编译方法: go build hello.go 编译后,我们会得到一个 hello.exe 然后,我们直接运行 hello 命令行就会输出 Hello World 了 详细解释: package 这一行是必须的,所有的 Go文件都是以这个开头的,而对于独立运行...阅读全文

博文 2016-02-02 11:00:03 w_yunlong

如何选型企业级DLT平台?【分布账本技术】

企业分布账本技术(Distributed Ledger Technology)需要解决5个方面的挑战:数据隐私性、技术正当性、可伸缩性、最终一致性和互操作性。本文将对企业以太坊(Quorum)、Hyperledger Fabric和Corda就这些环节进行比较。 在这里插入图片描述 如果希望快速掌握区块链应用的开发,推荐汇智网的区块链应用开发系列教程, 内容涵盖比特币、以太坊、eos、超级账本fabric和tendermint等多种区块链,以及 java、go、c#、nodejs、python、php、dart等多种开发语言。 1、数据隐私性 应该说绝大多数机构都不会愿意与市场中的对手分享其竞争优势。如果竞争对手可以访问区块链上的企业私有数据,那么相信绝大多数企业都不会选择这种区块链技术。因...阅读全文

博文 2019-08-18 05:32:43 ezpod

超级账本08--区块链应用开发

简介 数字货币曾是区块链技术的唯一应用场景 对智能合约的支持突破了场景限制, 丰富了区块链应用的适用范围, 可以支持多行业、大规模的商业应用 区块链应用 区块链应用: 一般由若干部署在区块链网络中的智能合约, 以及调用这些智能合约的应用程序组成 用户专注于与业务本身相关的应用程序 智能合约则封装了与区块链账本直接交互的相关过程, 被应用程序调用 智能合约开发 智能合约本质上是为了对上层业务逻辑进行支持且直接与账本结构打交道, 处于核心位置. 所以设计得当可以简化上层应用开发的过程 应用程序开发 应用程序通过调用智能合约提供的方法接口实现业务逻辑, 可以使用JavaScript、Python、Go、Java等主流语言进行开发 链码的原理 链码延伸自智能合约的概念, 支持使用主流高级编程语言实现...阅读全文

博文 2018-07-23 14:34:51 陆地潜水鱼

Go-再论struct

简介 在Go-Structure对struct做了简单的介绍,本文参考如下书目继续丰富本专题。 《Web Development with Go》 Chapter 3 《The Go Programming Language》4.4 Page99 pointer and nonpointer method receiver 在Go-Structure一文给出的示例代码中,使用的都是pointer receiver。事实上,也可以使用nonpointer receiver。事实上,也可以使用nonpointer 示例: package main import ( "fmt" ) type Point struct { x, y int } func (p Point) GetX() int {...阅读全文

博文 2016-09-21 19:00:03 u013344915

简明笔记:指针传递和值传递

# 简明笔记:指针传递和值传递 值传递,拷贝一份值接收者的副本。指针传递,则直接指向值接收者。 一个超级简单的列子: ```go package main import ( "fmt" ) type myself struct { name string } func (u myself) self_change_name(name string){ // 注意: 这里是拷贝一份 myself u.name = name fmt.Println(u.name) } func (u *myself) police_station_change_name(name string){ //指向myself u.name = name } func main() { ms := myself{"Po...阅读全文

博文 2019-05-04 14:20:17 faceNL

Go-再论struct

简介 在Go-Structure对struct做了简单的介绍,本文参考如下书目继续丰富本专题。 《Web Development with Go》 Chapter 3 《The Go Programming Language》4.4 Page99 pointer and nonpointer method receiver 在Go-Structure一文给出的示例代码中,使用的都是pointer receiver。事实上,也可以使用nonpointer receiver。事实上,也可以使用nonpointer 示例: package main import ( "fmt" ) type Point struct { x, y int } func (p Point) GetX() int {...阅读全文

博文 2016-09-07 06:00:07 u013344915

HyperLedger Fabcar 学习笔记(基于超级账本编写第一个应用)

HyperLedger Fabcar 学习笔记(基于超级账本编写第一个应用) 翻译自:http://hyperledger-fabric.rea... 编写第一个应用程序 我们需要实现如下三个步骤 首先设置一个开发环境 学习一些简单的我们app将会用到的智能合约的参数 开发一个app能够更新查询一个账本 设置开发环境 首先确保必备的fabric image等已经安装成功,如果没有安装,请参考(https://hyperledger-fabric.re...) 下载fabric-samples,并且安装必备的运行工具。(参考地址:https://hyperledger-fabric.re...) 上述步骤如果不想看英文的同学,可以参考(搭建第一个超级账本网络的方法)https://segmen...阅读全文

博文 2018-04-12 07:34:37 ulysses

区块链教程Fabric1.0源代码分析Ledger(账本)一

区块链教程Fabric1.0源代码分析Ledger(账本)一,2018年下半年,区块链行业正逐渐褪去发展之初的浮躁、回归理性,表面上看相关人才需求与身价似乎正在回落。但事实上,正是初期泡沫的渐退,让人们更多的关注点放在了区块链真正的技术之上。 Fabric 1.0源代码笔记 之 Ledger(账本) 1、Ledger概述 Ledger,即账本数据库。Fabric账本中有四种数据库,idStore(ledgerID数据库)、blkstorage(block文件存储)、statedb(状态数据库)、historydb(历史数据库)。其中idStore、historydb使用leveldb实现,statedb可选择使用leveldb或couchDB。而blkstorage中index部分使用lev...阅读全文

博文 2018-10-31 17:34:40 兄弟连区块链

golang基础学习-AES加密

高级加密标准(AES全称Advanced Encryption Standard),AES加密数据块分组长度必须为128bit(byte[16]),密钥长度可以是128bit、192bit、256bit中的任意一个。 ps:本文中PKCS7填充函数是从别的地方找的,具体地方不记得了。后续找到链接会补上参考地址。 AES实现的方式: 1.电码本模式(Electronic Codebook Book (ECB)) 2.密码分组链接模式(Cipher Block Chaining (CBC)) 3.计算器模式(Counter (CTR)) 4.密码反馈模式(Cipher FeedBack (CFB)) 5.输出反馈模式(Output FeedBack (OFB)) 1.AES加解密原理 P:明文 ...阅读全文

博文 2019-12-12 13:32:39 wmm369

Go-再论struct

简介 在Go-Structure对struct做了简单的介绍,本文参考如下书目继续丰富本专题。 《Web Development with Go》 Chapter 3 《The Go Programming Language》4.4 Page99 pointer and nonpointer method receiver 在Go-Structure一文给出的示例代码中,使用的都是pointer receiver。事实上,也可以使用nonpointer receiver。事实上,也可以使用nonpointer 示例: package main import ( "fmt" ) type Point struct { x, y int } func (p Point) GetX() int {...阅读全文

博文 2016-09-07 05:00:12 u013344915

Go语言基础(一)—— 简介、环境配置、Hello World

前言: 本专题用于记录自己(647)在Go语言方向的学习和积累。 系列内容比较偏基础,推荐给想要入门Go语言开发者们阅读。 目录如下: Go语言基础(一)—— 简介、环境配置、HelloWorld Go语言基础(二)—— 入门常用语法 Go语言基础(三)—— 数据类型 Go语言基础(四)—— 运算符 Go语言基础(五)—— 条件与循环 ... 一、Go的起源 Go,又称Golang。2007年,由Google的工程师们开发。2009年,正式发布。 诞生的原因:目前服务端软件开发的新挑战 多核硬件架构。 超大规模分布式计算集群。 Web模式导致的前所未有的开发规模和更新速度。 二、Go的创始人 Rob Pike:Unix的早期开发者、UTF-8 创始人。 Ken Thompson:Unix的创...阅读全文

博文 2020-01-21 14:32:49 奇舞647