初识 Go 语言

在这里插入图片描述

golang与C/C++的简单比较

优点:

  • 良好的跨平台,可交叉编译
  • 简单的工程管理,通过文件夹系统管理,没有类似Makefile的工程管理文件
  • 静态编译,没有动态库的依赖,部署方便,编出来只有一个可执行程序
  • 语法简单易学
  • 天生支持并发,goroutine和channel,适合服务器编程

只需要几行代码即可实现一个服务器

1
2
3
4
5
6
7
8
9
10
11
package main

import (
"net/http"
)

func main() {
http.Handle("/", http.FileServer(http.Dir(".")))
http.ListenAndServe(":8080", nil)
}

在Mac上编译可运行在Linux, Windows上的GO程序demo

编译运行在 amd64位 windows系统

1
2
CGO_ENABLED=0 GOOS=windows  go build 

编译运行在 amd64位 linux系统

1
2
3
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build


windows 程序效果演示

双击exe程序,即可打开终端
在这里插入图片描述

此时服务已启动,默认端口是8080

在这里插入图片描述

打开 localhost:8080 查看效果

在这里插入图片描述