go语言实例app go 语言 gui

go语言可以做什么

1、服务器编程:以前你如果使用C或者C++做的那些事情,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等。

成都创新互联公司IDC提供业务:BGP机房服务器托管,成都服务器租用,BGP机房服务器托管,重庆服务器租用等四川省内主机托管与主机租用业务;数据中心含:双线机房,BGP机房,电信机房,移动机房,联通机房。

2、分布式系统、数据库代理器、中间件:例如Etcd。

3、网络编程:这一块目前应用最广,包括Web应用、API应用、下载应用,而且Go内置的net/http包基本上把我们平常用到的网络功能都实现了。

4、开发云平台:目前国外很多云平台在采用Go开发,我们所熟知的七牛云、华为云等等都有使用Go进行开发并且开源的成型的产品。

5、区块链:目前有一种说法,技术从业人员把Go语言称作为区块链行业的开发语言。如果大家学习区块链技术的话,就会发现现在有很多很多的区块链的系统和应用都是采用Go进行开发的,比如ehtereum是目前知名度最大的公链,再比如fabric是目前最知名的联盟链,两者都有go语言的版本,且go-ehtereum还是以太坊官方推荐的版本。

自1.0版发布以来,go语言引起了众多开发者的关注,并得到了广泛的应用。go语言简单、高效、并发的特点吸引了许多传统的语言开发人员,其数量也在不断增加。

使用 Go 语言开发的开源项目非常多。早期的 Go 语言开源项目只是通过 Go 语言与传统项目进行C语言库绑定实现,例如 Qt、Sqlite 等。

后期的很多项目都使用 Go 语言进行重新原生实现,这个过程相对于其他语言要简单一些,这也促成了大量使用 Go 语言原生开发项目的出现。

Go语言的应用

Go语言由Google公司开发,并于2009年开源,相比Java/Python/C等语言,Go尤其擅长并发编程,性能堪比C语言,开发效率肩比Python,被誉为“21世纪的C语言”。

Go语言在云计算、大数据、微服务、高并发领域应用应用非常广泛。BAT大厂正在把Go作为新项目开发的首选语言。

Go语言应用范围:

1、服务端开发:以前你使用C或者C++做的那些事情,用Go来做很合适,例如日志处理、文件系统、监控系统等;

2、DevOps:运维生态中的Docker、K8s、prometheus、grafana、open-falcon等都是使用Go语言开发;

3、网络编程:大量优秀的Web框架如Echo、Gin、Iris、beego等,而且Go内置的 net/http包十分的优秀;

4、Paas云平台领域:Kubernetes和Docker Swarm等;

5、分布式存储领域:etcd、Groupcache、TiDB、Cockroachdb、Influxdb等;

6、区块链领域:区块链里面有两个明星项目以太坊和fabric都使用Go语言;

7、容器虚拟化:大名鼎鼎的Docker就是使用Go语言实现的;

8、爬虫及大数据:Go语言天生支持并发,所以十分适合编写分布式爬虫及大数据处理。

如何Golang开发Android应用

如何Golang开发Android应用:

一丶准备

1.一台Linux 64的机器

2.一个带有AndroidStudioIDE的开发机器

因为环境配置实在复杂,所以引入的docker。

docker pull codeskyblue/docker-goandroid

docker run --rm -ti codeskyblue/docker-goandroid bash

cd example; echo "view example projects

docker起来之后,什么就都配置好了,NDK,java,GO的环境变量了,等等,并且还预装了vim,gradle,tmux,git,syncthing,svn

二丶代码

1.写代码之前,先约定下目录结构

go的代码都放在src/golib下,编译使用make.bash编译脚本,看下这个文件树

.

|-- app.iml

|-- build.gradle

|-- libs/armeabi-v7a # go编译生成的so文件

|               `-- libgojni.so

|-- main.go_tmpl # 一个模板文件,先不用管它

|-- make.bash # 编译脚本,用来生成.so和Java代码

`-- src

|-- golib

|   |-- hi

|   |   |-- go_hi#1438;#1438;#1438; # 自动生成的代码

|   |   |   `-- go_hi.go

|   |   `-- hi.go # 需要编写的代码

|   `-- main.go

`-- main

   |-- AndroidManifest.xml

   |-- java

   |   |-- go # 自动生成的代码

   |   |   |-- Go.java

   |   |   |-- Seq.java

   |   |   `-- hi

   |   |       `-- Hi.java

   |   `-- me/shengxiang/gohello # 主要的逻辑代码

   |                      `-- MainActivity.java#1438;#1438;#1438;

   `-- res

2.写了一个例子

git clone

3.编译下,试试行不行(就算不行问题应该也不大,因为大问题都被消灭了)

cd GoHello/app

./make.bash

../gradlew build

4.一切顺利的话在build/outputs/apk下应该可以看到app-debug.apk这个文件。

编译好的放到qiniu上了,可以点击下载看看

下面可以尝试改改

打开hi.go这个文件

hi.go的内容,比较简单,写Go代码主要就是这部分

// Package hi provides a function for saying hello.

package hi

import "fmt"

func Hello(name string) {

fmt.Printf("Hello, %s!\n", name)

return "(Go)World"

}

5.文件末尾添加下面这行代码

func Welcome(name string) string {

return fmt.Sprintf("Welcome %s to the go world", name)

}

使用./make.bash重新编译下

6.打开MainActivity.java 修改下OnClickListener事件

button.setOnClickListener(new View.OnClickListener() {

   @Override

   public void onClick(View v) {

       String message = Hi.Welcome("yourname");

       Toast.makeText(MainActivity.this, message, Toast.LENGTH_LONG).show();

   }

});

编译运行下,把生成的apk安装到手机上试试。


新闻名称:go语言实例app go 语言 gui
新闻来源:http://scyanting.com/article/ddcecgh.html