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

Go 语言的优点,缺点和令人厌恶的设计

这是关于 「[Go是一门设计糟糕的编程语言 (Go is not good)](https://github.com/ksimka/go-is-not-good)」 系列的另一篇文章。Go 确实有一些很棒的特性,所以我在这篇文章中展示了它的优点。但是总体而言,当超过 API 或者网络服务器(这也是它的设计所在)的范畴,用 Go 处理商业领域的逻辑时,我感觉它用起来麻烦而且痛苦。就算在网络编程方面,Go 的设计和实现也存在诸多问题,这使它看上去简单实际则暗藏危险。 写这篇文章的动机是因为我最近重新开始用 Go 写一个业余项目。在以前的工作中我广泛的使用了 Go 为 SaaS 服务编写网络代理(包括 http 和原始的 tcp)。网络编程的部分是相当令人愉快的(我也正在探索这门语言),但随之而来...阅读全文

博文 2018-05-06 22:44:53 Donng

Golang interface接口全面理解(一)

There are three kinds of time: the future is late, and now it is flying like an arrow. The past will never stand still. 时间的步伐有三种:未来姗姗来迟,现在像箭一般飞逝,过去永远静立不动。 什么是interface 在面向对象编程中,可以这么说:“接口定义了对象的行为”, 那么具体的实现行为就取决于对象了。 在Go中,接口是一组方法签名。当一个类型为接口中的所有方法提供定义时,它被称为实现该接口。它与oop非常相似。接口指定类型应具有的方法,类型决定如何实现这些方法。 创建和实现interface 在Golang中只要实现了接口定义的方法,就是(JAVA implement...阅读全文

博文 2018-03-12 15:33:08 90design

Golang中用interface{}接收任何参数与强转

函数的传值中,interface{}是可以传任意参数的,就像java的object那样。 下面上我第一次想当然写的 ** 错误 **代码 package main func main() { Any(2) Any("666") } func Any(v interface{}) { v1:=int(v) println(v1) } 我只是想它能通过编译而已,因为上面的错误代码并没有任何的语法错误,心里只有666想说,下面是编译的错误提示: cannot convert v (type interface {}) to type int: need type assertion 正确的代码就可以保证程序不出什么差错。 package main func main() { Any(2) Any(...阅读全文

博文 2017-09-16 13:04:54 送你一碗大麦茶

“B站源码泄露”事件后,go语言成了焦点

一、B 站后端源码被恶意“开源” 几 小时1、B站源码泄露事件始末今日,网上传出消息,bilibili整个网站后台工程源码泄露,这是国内规模较大的互联网企业中首例整个网站后台工程源码泄露。而且B站网站不仅仅是泄露工程源码这么简单,有很大一部分用户的用户名密码被硬编码在代码里面,也泄露出去了,对用户来说影响很大。 作为国内go语言的大厂,哔哩哔哩代码被上传到了github,平台上确实存在由一个名叫「openbilibili」的用户创建的「go-common」代码库,项目描述为「哔哩哔哩 bilibili 网站后台工程 源码」,这个账号于22号当天注册。截至北京时间17:04,该项目已获得6597个标星。fork数量已经突破6000(这个操作会将被Fork的代码仓库中所有的信息,包括源代码、原仓...阅读全文

博文 2019-04-23 18:34:43 qfliweimin

Golang与JAVA比较

普通用法比较 函数func swap(x, y string) (string, string) { var a int = 100 return y, x}a, b := swap("Mahesh", "Kumar")go的方法需要加func入参类型在参数后面,返回类型在入参后面定义类型在变量的后面返回值可以是多个参数函数定义后可作为值来使用java 中的null go中的nilgo中的数组var balance = [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0}go &a a的地址var ip *intjava的class就是go的structjava中get,set方法 Book1.title = "Go 语言" fmt.Printf( "Book 1 ...阅读全文

博文 2019-01-19 18:34:43 任嘉平生愿

go语言的一些资料

1.首先推荐一个基础学习go的,趣味性,针对性不错,对基础很好。http://go-tour-zh.appsp0t.com/#1 2.tideide 一个好go编辑器,能调试,有项目构建,方便配置交叉编译,语法高亮功能。 3.go文档,中文的虽然不全,但是基本的都有https://golang-china.googlecode.com/svn/trunk/Chinese/golang.org/index.html#toc11 (也许要架梯子,你懂的) 4.go语言google group https://groups.google.com/forum/#!forum/golang-china 5.go实现的blog合集:http://www.cnblogs.c...阅读全文

30分钟上手GO语言--基础语法

本章主要分成三个部分:第一部分包括基本语法和数据结构;第二部分讨论方法和接口;第三部分介绍并发机制。 包、变量和函数 先看一个例子Packages.go: ```golang package main import ( "fmt" "math/rand" ) func add(x int, y int) int { return x + y } func main() { fmt.Println("My favorite number is", rand.Intn(10)) fmt.Println(add(42, 13)) } ``` 包:每个 Go 程序都是由包(package)组成的,程序运行的入口是包 `main`。 ...阅读全文

Go语言适合干什么

一、我们为什么选择Go语言选择Go语言的原因可能会有很多,关于Go语言的特性、优势等,我们在之前的文档中也已经介绍了很多了。但是最主要的原因,应该是基于以下两方面的考虑:1、执行性能毕竟是类C的执行速度,对于一些服务来说,性能是极其重要的一环,事关系统的吞吐、访问的延迟,进而会影响用户的体验,Go语言通过协程可以方便的实现并行处理,达到处理效率的最大化 ,提升系统的吞吐能力。2、开发效率GO语言使用起来简单、代码描述效率高、编码规范统一、上手快。 通过少量的代码,即可实现框架的标准化,能快速的构建各种通用组件和公共类库,进一步提升开发效率,实现特定场景下的功能量产。二、Go语言能做什么Go 语言从发布 1.0 版本以来备受众多开发者关注并得到广泛使用,Go 语言的简单、高效、并发特性吸引了众...阅读全文

博文 2019-04-23 17:03:00 qfhanru

分布式存储方案 Minio

在2007年,[GlusterFS](https://www.oschina.net/p/glusterfs)演变为大型分布式存储方案后,任何配备合适硬件的公司,单位都可以利用个做分布式的流媒体,数据分析。在2011年,Red Hat收购了GlusterFS. Minio是GlusterFS创始人之一Anand Babu Periasamy发布新的开源项目。Minio兼容Amason的S3分布式对象存储项目,采用Golang实现,客户端支持Java,Python,Javacript, Golang语言。 Minio可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用Golang实现,服务端可以工作在Windows,Linux, OS X和FreeBSD上。配置简单,基本是复制...阅读全文

开源项目 2016-09-16 10:00:16 minio

goland ide 对于 go 1.11的配置

jetbrains 家的开发工具我一直很喜欢用,goland也没让我失望, go1.11 发布没多久,我试用过后感觉很方便,和goland也很契合,下面来说说对于新版本的go语言,在goland里面需要怎么配置

##### 需求: - 1.goland(我用的2018.2版本) - 2.go 1.11版本 #### 步骤 ##### 1.安装go 1.11,安装完不需要任何配置,(不需要你去配置什么GOPATH的环境变量,新版本的go实际上是不需要GOPATH) ##### 2.安装goland, 新建项目的时候按照下图选好go的路径(其实可以选择vgo去新建,vgo实际上在项目初始化的时候自动执行了 go mod init 项目名 命令 ) ![微信图片_2018100318...阅读全文

博文 2018-10-03 18:53:07 18657127505

在Github中stars数最多的Go日志库集合

在Go语言世界中,日志库并不像Java世界那里有一个具有统治力的日志库。在做新项目技术选型的时候,难免会遇到日志库的选择问题,今天笔者就为大家介绍一下在Github中stars数最多的Go日志库。 logrus是我已知的Go语言日志库中在Github中stars数最多的日志库,功能强大,性能也不错。另外值得一提的是logrus的一个fork库gogap/logrus,可以配置输出到文件和graylog日志系统,基础的level、调用链、行号,文件切分都有,特色是结构化日志可以被统计和索引,借助graylog就可以做日志分析,不过这个库很久没有维护了。 zap是Go中一个快速,结构化,分级日志库,Uber出品。能够激活强大的ad-hoc分析, 灵活的仪表板, 其功能超过其他工具ELK, Spl...阅读全文

博文 2017-12-19 11:46:19 终于19岁

使用golang的反转编写Android应用

在去年oracle和谷歌的官司告一段落,但是Android开发者仍急切谷歌能够想苹果一样,开发自己的编程语言进行Android应用的开发,至于选择什么语言,大多数开发者希望是golang,首先他是谷歌自我研发的一门编程语言,因为他语法简单,运行效率高。 随着golang迭代更新,我们渐渐看到谷歌在这一方面的努力,golang.org/x/mobile的发布,让开发者能够使用go语言使用ndk进行安卓应用的开发。这个链接http://www.jianshu.com/p/403aa507935b 介绍了如何使用gomobile,进行安卓应用的开发和安卓库文件的开发。 但是使用过程中就会发现一个问题,go开发安卓app,要么全部使用go用ndk进行开发(使用OpenGL绘制界面),要么只能用来写库...阅读全文

博文 2017-04-01 02:34:56 tenny1109

Golang串口编程初探

最近,新项目中有智能硬件的需求,要通过用户的手机控制智能货柜(现在带电的都能叫智能xx了,其实就是个售卖机),串口编程一点儿也摸不着头脑,不过,还得继续 。。。本来以为这种机器一般都是Linux系统,用Java或者Python写个终端控制就行了(供应商也太懒了,终端控制也木有)。。。现场考察后,发现原来厂家标配的电脑上装的是Windows,那么问题来了,java和Python显然不是最好的选择,第三方工具打包工具,常常会打出个巨大无比的exe文件,windows下的程序还是类C语言更合适些。 经过短暂的比较之后,golang滑入我的脑海,虽然我一点儿也不懂这门语言。昨天,找了go的本书,翻了一小半,熟悉了基本语法之后,就开始了 go出来都已经快十年了,很多组件都被封装好了,果然被我搜到了 g...阅读全文

博文 2017-04-21 10:52:16 Markwei

Neo4j的简单搭建与使用

Neo4j简介 Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。程序员工作在一个面向对象的、灵活的网络结构下而不是严格、静态的表中——但是他们可以享受到具备完全的事务特性、企业级的数据库的所有好处。 Neo4j安装(MAC) 下载 下载Neo4j Community Edition,下载地址如下 http://neo4j.org/download 由于是mac下载,直接下载dmg文件 运行 安装Neo4j Community Edition并打开,配...阅读全文

博文 2017-02-26 13:43:14 就天边

WebStorm 10搭建Golang开发环境

>我是一名Java Web开发者,使用IDEA作为日常开发工具。对于Golang开发其实更应该选择WebStorm配合Go Plugin,这样会更轻量些。 PS: iNote是在IDEA里开发的。 ##下载WebStorm 10 ####[官方下载地址](https://www.jetbrains.com/webstorm/whatsnew/ "下载地址") ##安装WebStorm ####Windows请参考Win版的安装方式 ![enter image description here][1] ##下载Golang Plugin(最新版本是201) ####[Go Plugin](https://github.com/go-lang-plugin-org/g...阅读全文

编程语言的logo们

作为程序员,我们每天会用到大量的编程语言,打开界面会碰到很多logo,你有没有想过,为何java的标志是一杯咖啡,为何go的logo是一只囊地鼠(简直像是为了故意卖萌),而这些logo在语言设计之初,又是谁设计的呢?GoLang go语言的标志是一只囊地鼠,有说法说是土拨鼠,但据有心人士(闲得无聊)考据党考据得出go的原型其实是一只囊地鼠。go语言萌萌的吉祥物在一堆编程语言中画风都不同,不禁让人怀疑这只地鼠真的是Geek做出的吗? 当然不是啦! 这只萌萌的吉祥物是由Rob Pike的妻子 Renee French绘制的,Pob Pike是Go的发明者之一,贝尔实验室UNIX小组成员,Plan9主要开发者,他最喜欢做似乎就是:发明操作系统发明编辑器发明语言....这位大神虽然很传奇,但他不是我...阅读全文

博文 2017-06-27 15:07:29 谢七

最难学的十大编程语言,C++排第二,它竟是第一名!

编程语言是开发者们代码工作的核心,也是许多开发者最爱讨论的话题。编程语言的选择对开发者和工具制造商都十分重要,前者需要保持最新和具备市场潜力的技能,后者则亟需确保他们能够提供最有用的 SDK。 开发者经济分析公司 SlashData 曾发布了《 2018 年第 2 季度各国开发者状况》调查报告,共有 167 个国家的 20500 多名开发者参与其中。 报告面向全球所有类型的程序员,对使用每种主要编程语言的活跃开发者数量进行了最新的估计。其中,JavaScript 仍是最流行的编程语言,Python 流行程度接近 Java。 image 哪种语言最难学呢?每个人也许都有着自己的想法,衡量标准各不相同。 现在我们从一个全新的,无可反驳的角度来分析一下各个编程语言难学程度。 第十名、R语言 颁奖词...阅读全文

博文 2019-04-29 17:34:45 榆西带你飞

GO中的“泛型”?

Golang不支持一般的类似Java中的标记式泛型。很多人因此而十分不满,认为没有泛型增加了很多工作量。而目前由于泛型支持的复杂性,Golang的设计和实现者并没有把这个泛型支持作为紧急需要增加的特性。但是,如果真的没有泛型,就一定不行了么?答案当然是否定的。没有泛型也可以,而且我觉得代码更简单,直接,有趣(个人观点,勿喷)。 我们这里打算以一些例子来讲解Golang中如何处理这个问题。 首先,我们看一个冒泡排序的问题。针对整型数组切片的排序。 package main import ( "fmt" ) func bubbleSort(array []int) { for i := 0; i < len(array); i++ { for j := 0; j < len(array)-i-1...阅读全文

博文 2017-01-11 08:00:00 vaptu

golang 微服务框架 Dubbogo

## Dubbogo Dubbogo 是与阿里巴巴dubbo兼容的golang微服务框架。 ### 说明 ### Dubbogo 目前版本(0.1.1)支持的codec 是jsonrpc 2.0,transport protocol是http。 只要你的java程序支持jsonrpc 2.0 over http,那么dubbogo程序就能调用它。使用过程中如遇到问题,请先查看doc/question.list.txt.zip。 dubbogo自己的server端也已经实现,即dubbogo既能调用java service也能调用dubbogo实现的service。相应的代码示例请参考 [https://github.com/AlexStocks/dubbogo-exam...阅读全文

开源项目 2016-10-25 19:00:03 AlexStocks

Elasticsearch系列(三) 实时同步mysql数据到Elasticsearch

mysql 作为成熟稳定的数据持久化解决方案,广泛地应用在各种领域,但是在数据分析、全文检索方面稍有不足,而 elasticsearch 作为数据分析领域的佼佼者,刚好可以弥补这项不足,而我们要做的只需要将 mysql 中的数据同步到 elasticsearch 中即可,今天介绍使用logstash将mysql数据全量导出到es,使用go-mysql-elasticsearch将mysql实时同步到es。 添加mysql测试数据 SET NAMES utf8; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for `movies` -- ----------------------...阅读全文

博文 2020-05-26 23:32:48 费墨c

Reactor 入门与实践

适合阅读的人群:本文适合对 Spring、Netty 等框架,以及 Java 8 的 Lambda、Stream 等特性有基本认识,希望了解 Spring 5 的反应式编程特性的技术人员阅读。 一、前言 最近几年,随着 Node.js、Golang 等新技术、新语言的出现,Java 的服务器端开发语言老大的地位受到了不小的挑战。虽然,Java 的市场份额依旧很大,短时间内也不会改变,但 Java 社区对于挑战也并没有无动于衷。相反,Java 社区积极应对这些挑战,不断提高自身应对高并发服务器端开发场景的能力。 为了应对高并发的服务器端开发,在2009年的时候,微软提出了一个更优雅地实现异步编程的方式 —— Reactive Programming,中文称反应式编程。随后,其它技术也迅速地跟上...阅读全文

博文 2017-10-11 17:05:00 编走编想

Golang 中函数和方法的区别

golang 函数以及函数和方法的区别 原创 2016年12月11日 20:12:54 4363 在接触到go之前,我认为函数和方法只是同一个东西的两个名字而已(在我熟悉的c/c++,python,java中没有明显的区别),但是在golang中者完全是两个不同的东西。官方的解释是,方法是包含了接收者的函数。到底什么意思呢。 首先函数的格式是固定的,func+函数名+ 参数 + 返回值(可选) + 函数体。例 func main() { fmt.Println("Hello go") } 在golang中有两个特殊的函数,main函数和init函数,main函数不用介绍在所有语言中都一样,它作为一个程序的入口,只能有一个。init函数在每个package是可选的,可有可无,甚至可以有多个(但...阅读全文

博文 2018-01-23 22:33:04 coder_kev

Go 1.9 的新特性

现在 Go 1.9 beta版已发布, 正式版预期在8月初发布,让我们先来看看你Go 1.9带来了那些新特性。 阅读全文 原文: Advanced command execution in Go with os/exec by Krzysztof Kowalczyk.完整代码在作者的github上: advanced-exec Go可以非常方便地执行外部程序,让我们开始探索之旅吧。 阅读全文 熟悉C++、Java、C#等面向对象的编程语言的同学,在学习Go语言的过程中,经常会被访问权限所困扰,逐渐才能了解这样一个事实: Go语言通过identifier的首字母是否大写来决定它是否可以被其它package所访问。 正式的Go语言规范是这么规定的: An identifier may be ex...阅读全文

博文 2017-06-21 03:52:56 smallnest

2015年之后 Web 开发的趋势

文章 [《Web Development Trends For 2015 And Beyond》](https://medium.com/@shijuvar/web-development-trends-for-2015-and-beyond-c2d3c1ef5718) 从以下方面分析和预测了 Web 开发的趋势: 1、可用性 提到交互式设计,涉及到的库:Bootstrap、Zurb Foundation 和 Yahoo Pure CSS 2、应用架构 移动设备的流行,更多会是 Web API 3、API 驱动开发的进一步火热 主要是 RESTFULL 风格的 API 4、SPA(ingle Page Applications) 崭露头...阅读全文

Golang结构体struct的使用

golang中是没有class的,但是有一个结构体struct,有点类似,他没有像java,c++中继承的概念,但是他有一个类似功能的结构嵌入 简单的结构体声明和使用 type User struct{ name string age int address string } user:= User{name:"测试",age:10} user.address="广州市" f.Println(user) 匿名结构体 person:= struct {//匿名结构 name string age int }{name:"匿名",age:1} f.Println("person:",person) 函数中结构体作为参数,如果不是用结构指针,函数内参数属性的改变不影响原来对象的属性的改变 //值拷...阅读全文

博文 2017-10-09 09:04:54 Link_Biao

[杭州]杭州云柚科技招聘Go架构师

职位描述: 1. 负责云柚系统整体架构设计与规划; 2. 负责优化核心业务的性能指标和资源消耗; 3. 负责指导相关工程师,按照质量要求完成相关业务开发工作 任职资格: 1. 熟练掌握 C/C++, Java, Python, Go 等语言中的至少两种,本科以上学历,3年以上开发经验; 2. 有丰富的工作经验,能够独立主导要求对自己做的项目有自己深入的理解,并能持续的关注和优化自己做的项目,研究过或参与过优秀开源软件者优先; 3. 熟悉 MongoDB/Redis 应用开发,熟悉数据库原理和常用性能优化技术,以及 NoSQL 原理、使用场景以及限制; 4. 参与过大型复杂分布式互联网系统的设计、架构者优先; 5. 有较强的逻辑思维能力,善于分析、归纳、解决问题;...阅读全文

大型互联网公司招 数据分析工程师 — 会 Go 优先考虑

北京大型互联网公司招 数据分析工程师,要求懂编程,目前项目有用Go写一些服务,因此会Go语言的优先考虑; 工作职责: 1. 完成数据模型的ETL实施,参与团队ETL流程的优化以及相关技术问题的解决 2. 设计大规模实时系统,实现数据采集、分析和检索 3. 建立数据仓库,DPM 职位要求: 1. 计算机相关专业大学本科及以上学历,有扎实的计算机基础 2. 精通常用数据结构和算法 3. 精通PHP,熟悉Java/Python/Go/C等语言中的一种或几种 4. 精通SQL,掌握MySQL,熟悉Redis和MongoDB等DB的一种或者多种 5. 熟练掌握Hadoop/MR、Storm、Spark或其它并行计算架构 6. 熟悉Linux...阅读全文

filebeat_config 介绍

title: filebeat config date: 2017-06-11 03:22:31 categories: elk tags: filebeat Filebeat Prospector filebeat.prospectors: - input_type: log paths: - /var/log/apache/httpd-*.log document_type: apache - input_type: log paths: - /var/log/messages - /var/log/*.log Filebeat Options input_type: log|stdin 指定输入类型 paths 支持基本的正则,所有golang glob都支持,支持/var/log/*...阅读全文

博文 2017-06-11 04:07:11 budongshu

如何选择一门编程语言

> 我应该学习哪种编程语言? ![](https://raw.githubusercontent.com/studygolang/gctt-images2/master/how-to-choose-a-programming-language/1.jpg) 如果你看到这篇文章,很有可能,在你的职业生涯中,你至少有一次在思考应该选择哪种语言。或者你甚至在编程生涯开始之前就已经考虑了。很高兴你能看到这篇文章。 我本人经常地(甚至可能过多地)去思考这个问题。不仅如此,我还会在实践中尝试许多不同的技术,得到或好或坏的结果。 在过去的几年,我曾经使用过以下语言: * Bash * IBM RPG * Java * Scala * C# * C++ * Ruby * JavaScript, Coffee...阅读全文

博文 2019-12-11 18:12:57 polaris

我们为什么从Python转到go?

说完了python,现在来说说为什么我们选择go。其实除了Python,我们也有其他的选择,Java、PHP、Lua(openresty),但最终我们选择了go。 虽然Java和PHP都是最好的编程语言(大家都这么争的),但我更倾向一门更简单的语言。而openresty,虽然性能强悍,但lua仍然是动态语言,也会碰到前面说的动态语言一些问题。最后,前金山许式伟用的go,前快盘架构师葱头也用的go,所以我们很自然地选择了go。 go并不是完美,一堆值得我们吐槽的地方。 error,好吧,如果有语言洁癖的同学可能真的受不了go的语法,尤其是约定的最后一个返回值是error。项目里面经常会充斥这样的代码: if _, err := w.Write(data1); err != nil { retu...阅读全文

博文 2016-10-29 18:00:00 wming0523

分析go项目源码,采用plantuml自动生成uml类图

使用工具go-package-plantuml分析go项目源码,自动生成uml类图 plantuml工具介绍 plantuml支持将“文本描述的UML类图”转换成图片形式的类图等。 类图使用例子如下,参考 http://plantuml.com/class-diagram @startuml Class11 <|.. Class12 Class13 --> Class14 @enduml 安装go-package-plantuml go-package-plantuml 项目代码地址 https://git.oschina.net/jscode/go-package-plantuml 下载和编译项目:(系统需要先安装好go编译环境) go get git.oschina.net/jscode...阅读全文

博文 2017-04-17 16:00:32 qquunn

成都云创一指网络科技有限公司/招聘golang开发//薪资面议//双休//其他语言可转

1、统招专科以上学历,22-35岁,具有良好的团队合作精神,有较强的开发能力和灵活性; 2、熟悉golang语言,基础扎实,1年以上golang开发工作经验,有完整的项目经验优先 ; 3、熟悉Golang协程,精通channel和锁,对高并发、高可用架构系统有正确、深刻的理解,要求有分布式服务器开发经验; 4、有Web开发经验,对RESTful概念有清晰的理解,并至少有一次API Server开发项目中运用到; 5、熟悉xml/json/protobuf等至少任意一种网络通信技术和数据交换格式 6、有清晰的编程思路; 7、工作积极主动,态度踏实认真,有较强的职业素养和工作操守; 8、对技术有激情,喜欢钻研,能快速接受和掌握新技术,学习能力和工作责任心强,良好的沟通表达能力和团队...阅读全文

iOS和Android的开发库 Gomobile

Gomobile是一个应用于iOS和Android的优秀跨平台开发库,为开发者提供用于创建Android和iOS 移动平台代码的工具。 ### 环境设置 我们需要Go 1.5及以上版本(版本越高越好)。  然后,我们需要安装Gomobile:

go get golang.org/x/mobile/cmd/gomobile
注:该命令可能需要几分钟的时间。 至于构建Java代码,你则需要Android SDK,并安装Java(OpenJDK就够了)。 [下载](https://developer.android.com/sdk/index.html#...阅读全文

开源项目 2016-03-15 16:00:00 golang

Golang最实用的日志框架

今天给大家推荐是由cihub开源的seelog框架,seelog 是一个功能强大且易于学习的日志框架,提供灵活调度、过滤和格式化日志消息的功能。 推荐理由 对比Golang里面的其他日志框架例如logrus,zap等,在日志格式化提供傻瓜式的模版,笔者认为seeLog 在易用,方便,可扩展性等方面是最满意的,把日志输出的自由度交给使用者。 特性 配置能够在不重新编译的情况下更改记录器参数 在不重新启动应用的情况下即时更改配置 可以为不同的项目文件和功能设置不同的日志配置 可调整消息的格式 同时将日志输出到多个流 选择记录器优先级策略以将性能损失最小化 日志消息封装器 (JSON, XML, etc.) 重点 seeLog功能强大,提供了最大程度的定制性,既有原生日志的简单Api,又具备类似j...阅读全文

博文 2018-11-27 23:34:40 Golang分享汇

Go依赖管理机制

无论何种语言,依赖管理都是一个比较复杂的问题。而Go语言中的依赖管理机制目前还是让人比较失望的。在1.6版本之前,官方只有把依赖放在GOPATH中,并没有多版本管理机制;1.6版本(1.5版本是experimental feature)引入vendor机制,是包依赖管理对一次重要尝试。他在Go生态系统中依然是一个热门的争论话题,还没有想到完美的解决方案。 看其它 我们先来看看其它语言怎么解决,例举两种典型的管理方式: Java 开发态,可以通过maven和gradle工具编辑依赖清单列表/脚本,指定依赖库的位置/版本等信息,这些可以帮助你在合适的时间将项目固化到一个可随时随地重复编译发布的状态。这些工具对我来说已经足够优雅有效。但maven中也有不同依赖库的内部依赖版本冲突等令人心烦的问题。...阅读全文

博文 2016-11-20 17:00:00 jinpengxx8

在当下,python、java、c++、golang、rust该如何选择?

目录: 主要题主上面提到的四门语言的介绍,分别是难度、受欢迎度、创始时间、学成后的涉及的就业方向、优缺点。 首先,我认为编程语言是没有最好,只有最合适。但是未来预测这种事还是留给大神,这边就分享给楼主一些“干货” 四门语言的简单介绍 1、Python 难度:★ 欢迎度:★★★★☆ 创始于:1991年 学完之后可以干什么: web开发、应用开发、大数据、数据挖掘、科学计算、机器学习、人工智能、运维、自然语言处理等等等。 Python的优点: 易于学习:就像是楼主说的,逛了下论坛发现做了几年Java或者是C++的,几天就可以写Python了。但是这个不是什么坏事,入门来说,从简入难,或者从难入简,都是很好的选择。 库:库都是免费的,并且有很多库和函数把编程变得相对容易很多。 物联网:Python...阅读全文

【杭州】金科文化招聘golang开发工程师

有意者请联系:yefanglin[AT]jinkejoy.com ------------------ 职位描述: 工作职责: 1. 负责 adexchange(互联网广告交易平台)的开发 2. 负责素材审核平台及运营工具的开发需求 3. 参与应用架构设计、开发及性能优化维护 任职要求: 1. 熟悉C/C++、java、Node.js,Golang,Python等开发语言中的至少一种;GO语言优先 2. 熟练使用Mysql等常用数据库 3. 熟悉TCP/IP网络编程、多线程编程,熟悉不同的IO模型,常用数据结构和算法; 4. 熟悉服务器架构;熟悉AWS优先 5. 有高并发,高性能系统开发经验优先 能熟练地在Linux或Unix上进行维护和开发...阅读全文

常见规则引擎技术

什么是业务规则?在需求里面我们往往把约束,完整性,校验,分支流等都可以算到业务规则里面。在规则引擎里面谈的业务规则重点是谈当满足什么样的条件的时候,需要执行什么样的操作。因此一个完整的业务规则包括了条件和触发操作两部分内容。而引擎是事物内部的重要的运行机制,规则引擎即重点是解决规则如何描述,如何执行,如何监控等一系列问题。 对于快速软件开发平台往往会包括两个方面的内容,一个是可重用性,一个是可配置性。对于公用组件,公用基础类库,公用算法等往往是增加了可重用性;而对于对象模型,权限模型,工作流模型,规则引擎则是解决平台的高可配置性。 权限模型实现了用户岗位,角色和权限调整可配置。工作流引擎实现了在流程出现变化的时候可以灵活配置。规则引擎将业务决策也从程序代码从抽离出来,实现规则变化也可以灵活配...阅读全文

博文 2017-11-29 02:51:42 it_man

Go语言适合干什么

>版权:千锋教育go语言教研部 >作者:茹姐 >备注:本文原创,未经许可,转载必究 一、我们为什么选择Go语言 选择Go语言的原因可能会有很多,关于Go语言的特性、优势等,我们在之前的文档中也已经介绍了很多了。但是最主要的原因,应该是基于以下两方面的考虑: 1. 执行性能 毕竟是类C的执行速度,对于一些服务来说,性能是极其重要的一环,事关系统的吞吐、访问的延迟,进而会影响用户的体验,Go语言通过协程可以方便的实现并行处理,达到处理效率的最大化 ,提升系统的吞吐能力。 2. 开发效率 GO语言使用起来简单、代码描述效率高、编码规范统一、上手快。 通过少量的代码,即可实现框架的标准化,能快速的构建各种通用组件和公共类库,进一步提升开发效率,实现特定场景下的功能量产。 二、Go语言能做什么 Go ...阅读全文

博文 2019-04-22 17:21:59 1000phone

golang读取java或者go的webservice服务

由于自己搭建了java webservice,已经存在的wsdl.使用go去调用;获取其中的数据信息 ,如果go搭建了webservice ,应该一样(个人理解) package main import ( "fmt" "time" // 缺包,自己补全 ) func main() { // 参数封装 pars := make(map[string]interface{}) pars["Message"] = "this is test str" // 这是测试 pars["signMessage"] = "" data, _ := json.Marshal(pars) dataStr := string(data) ...阅读全文

聊聊 2018 年后端技术趋势

今天太忙,少写一点,后面再补充。 异步模式 Go 语言越来越热门,很多大型互联网公司后端正在转向 GO 。Java 圈知名的服务话框架 Dubbo 也宣布转型异步模式。这是一个大趋势,异步模式已经被市场验证和认可。 在 Web 服务器选择上,几年前大部分人就开始选择 Nginx,而不是 Apache。现在在后端业务开发的编程方面,技术力量强的团队已经开始将技术栈从同步模式切换为异步了。 同步阻塞模式存在较多缺陷,并发能力弱、适应性差、慢速请求导致服务不可用。如:后台接口中调用第三方 API 的场景,同步模式效果极差。过去那些使用 Java、PHP、C++、Python、Ruby 语言开发的同步阻塞模式框架,用的人越来越少。 Node.js 虽然 Node.js 也很热门,很流行,但仍然很少见...阅读全文

博文 2018-01-24 17:34:37 韩天峰

Python、golang、Java、C++学哪个更好?薪资更高?

计划19年get几门语言,看自身喜好对这 go语言、Python比较感兴趣,不过逛论坛发现很多人都说随便找个3年工作经验的java、c++看3天都可以上手写Python (所以希望会多种语言的前辈能说说自己的看法,让我有个概念,决定自己努力方向,谢谢! )非计算机专业,不是很了解各个语言太正常不过了。东莞达内大概的给楼主介绍一下这几门语言以及可以做的事情还有优缺点,东莞达内认为编程语言是没有最好,只有最合适。但是未来预测这种事还是留给大神,这边就分享给楼主一些“干货”。 Python 01.Python 难度:★, 欢迎度:★★★★☆ ,创始于:1991年学完之后可以干什么:web开发、应用开发、大数据、数据挖掘、科学计算、机器学习、人工智能、运维、自然语言处理等等等。就业薪资:Python...阅读全文

博文 2019-03-29 20:34:40 高信团

说一说go mod

[toc] 说一说go mod 写在前面,我们要切换到go mod吗 go mod是官方力推的go模块依赖管理的工具,有官方的背书,肯定是要用的。go1.13已经默认支持了,所以迟早要切到go mod, 势不可挡。 go mod什么 go mod能管理的依赖包的版本,能保证在不同地方构建,获得的依赖模块是一致的。 没有go mod之前如何管理包依赖 没有go mod之前,有go deps, vendor等方法来解决。 go mod如何工作 go 1.11通过设置环境变量GO111MODULE来决定是否启用 export GO111MODULE=off #关闭go mod export GO111MODULE=on # 开启mod export GO111MODULE=auto # GOPAT...阅读全文

博文 2019-10-19 01:32:43 aside section ._1OhGeD

2019年Python、golang、Java、C++学哪个更好?薪资更高?

2019年python、golang、java、c++如何选择?计划19年get几门语言,看自身喜好对这 go语言、python比较感兴趣,不过逛论坛发现很多人都说随便找个3年工作经验的java、c++看3天都可以上手写python (所以希望会多种语言的前辈能说说自己的看法,让我有个概念,决定自己努力方向,谢谢! )非计算机专业,不是很了解各个语言太正常不过了。大概的给楼主介绍一下这几门语言以及可以做的事情还有优缺点;目录:• 主要题主上面提到的四门语言的介绍,分别是难度、受欢迎度、创始时间、学成后的涉及的就业方向、优缺点。首先,我认为编程语言是没有最好,只有最合适。但是未来预测这种事还是留给大神,这边就分享给楼主一些“干货”1Python难度:★ 欢迎度:★★★★☆ 创始于:1991年学...阅读全文

博文 2019-03-19 13:34:43 晋皖区达内科技