关注公众号:雨哥写 python。
学习 Go 语言,比较下和 python 的用法,争取对 python 有更深的理解。

为什么学 Go

我主要使用 python 语言,其他语言用得不多,希望学一门语言和 python 做对比。 或许能对 python 有更深的理解。

这门语言最好是静态的, 现代的。 写 python 一定听过一句话:动态一时爽,重构火葬场。 说的是 python 虽然灵活,但是在运行时非常容易出问题。 新的 python 已经有像 pydantic 这样的库进行类型检查,但是还是想比较一下静态语言。

写 python 另一点很难受的地方是并发问题。python 并发编程一直在做改善,尤其是协程用法,一天一个样,很多基于协程的库要做到和同步兼容真的太困难了。

先看看 Go 的用法,再了解下 Rust。

哪些企业和项目在用 Go

  • 七牛云等一线互联网大厂都有用
  • Docker
  • Kubernetes
  • beego 类似于 tonardo 的 web 框架。
  • influxdb 数据库

Go 语言的优势

  • 天生并发
  • 通用语言,做什么都可以
  • 尤其擅长大数据,微服务,并发高
  • 很多大厂用,但是人才缺乏

环境安装

下载 Go :

下载代码编辑器:

  • vscode + go 插件(vscode 下载 Go 插件的依赖会安装失败,需要手动配置,比较麻烦)
  • Goland
  • LiteIDE

Goland 安装

Goland 是 jetbrain 出品的 Go 语言集成环境。如果之前有用过这个公司的产品,是相当顺手的,基本没有上手门槛,打开就能用。

不过 Goland 是收费的。他不像 Pycharm, IDEA 有社区免费版。Goland 没有免费版,可以免费试用一个月。需要破解的可以上网找教程。

也可联系我领取 agent_latest_2020。

LiteIDE 安装

这是国人开发的一款 Go 集成环境,上官网下载:http://liteide.org/cn/。 这个集成环境没有 Goland 好用,但是免费啊!

下载解压,进入 bin 目录运行软件就可以了。

在欢迎页面可以直接点击新建创建文件或者项目,也可以打开已有的目录。

创建项目以后会在左边出现目录结构:

然后编写 Go 代码:

package main
import "fmt" func main() {
 fmt.Println("hello")
}

编译或者运行代码可以点击界面图标或者通过终端命令行运行,调试代码一般用 FR 就可以了。

Go 语言入门教程:安装的更多相关文章

  1. 《Ruby语言入门教程v1.0》学习笔记-01

    <Ruby语言入门教程v1.0> 编著:张开川 邮箱:kaichuan_zhang@126.com 想要学习ruby是因为公司的自动化测试使用到了ruby语言,但是公司关于ruby只给了一 ...

  2. C语言入门教程-(5)格式化输入输出

    1.输入和输出 在程序的使用中,我们经常可以看的这么一个场景:用户需要输入数据,经过程序运算,得到结果后输出.在C语言中,输入数据和输出数据都是由库函数完成的,通过语句来输入/输出. 2.格式化输出— ...

  3. golang语言入门及安装

    golang语言入门及安装 go语言是google在2009年发布的开源编程语言使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全.支持并行进程. 本次讲解在windows上安装go语言的开 ...

  4. Go语言入门教程(十)之函数

    Hello 各位小伙伴大家好,我是小栈君,假期一眨眼就过去了.不知道大家玩的是否开心呢? 上次我们讲到了关于Go语言的流程控制,小栈君也希望小伙伴跟着小栈君一步一个脚印的敲一下代码,相互进步.本期我们 ...

  5. c语言该怎么入门?C语言入门教程(非常详细)

    C语言是一门面向过程的编译型语言,它的运行速度极快,仅次于汇编语言.C语言是计算机产业的核心语言,操作系统.硬件驱动.关键组件.数据库等都离不开C语言:不学习C语言,就不能了解计算机底层. 这套「C语 ...

  6. 《JavaScript语言入门教程》记录整理:入门和数据类型

    目录 入门篇 js介绍 历史 基本语法 数据类型 概述 null 和 undefined 数值 字符串 对象 函数 数组 本系列基于阮一峰老师的<JavaScrip语言入门教程>或< ...

  7. 《JavaScript语言入门教程》记录整理:运算符、语法和标准库

    目录 运算符 算数运算符 比较运算符 布尔运算符 二进制位运算符 void和逗号运算符 运算顺序 语法 数据类型的转换 错误处理机制 编程风格 console对象和控制台 标准库 Object对象 属 ...

  8. 《JavaScript语言入门教程》记录整理:面向对象

    目录 面向对象编程 实例对象与 new 命令 this关键字 对象的继承 Object对象的方法 严格模式(strict mode) 本系列基于阮一峰老师的<JavaScrip语言入门教程> ...

  9. Go 语言入门教程,共32讲,6小时(已完结)

    Go语言入门教程,共32讲,6小时(完结) 在B站:https://www.bilibili.com/video/BV1fD4y1m7TD/

  10. c语言入门教程 / c语言入门经典书籍

    用C语言开始编写代码初级:C语言入门必备(以下两本书任选一本即可) C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能.对c语言的数 ...

随机推荐

  1. Java Stream 流如何进行合并操作

    1. 前言 Java Stream Api 提供了很多有用的 Api 让我们很方便将集合或者多个同类型的元素转换为流进行操作.今天我们来看看如何合并 Stream 流. 2. Stream 流的合并 ...

  2. 原创Go语言题目(基础)

    题目内容来源于Go语言的经典书籍<GO编程语言> 题目 选择题 1. 下列说法错误的是:A. main包定义了一个独立可执行的二进制程序,以main函数作为程序执行的入口.B. 没有导入需 ...

  3. Struts2 为什么被淘汰?自己作死!

    Struts2 那些年可谓是风光无限啊,Struts2 + Spring + Hibernate 三大框架一起组成了 "SSH"----牛逼哄哄的 Java Web 框架三剑客. ...

  4. 内容安全策略(CSP)详解

    1.背景 1.1.同源策略 网站的安全模式源于"同源策略",web浏览器允许第一个web页面中的脚本访问页面中的数据,但前提是两个web页面具有相同的源.此策略防止一个页面的恶意脚 ...

  5. 预测算法:基于UCF的电影推荐算法

    #基于用户的推荐类算法 from math import sqrt #计算两个person的欧几里德距离 def sim_distance(prefs,person1,person2): si = { ...

  6. X-CTF(REVERSE高级) 666

    主函数输入的字符会和key比较长度和enflag比较内容,所以这道题的flag和输入有关 key长度为0x12,enflag的值为:izwhroz""w"v.K" ...

  7. spark机器学习从0到1奇异值分解-SVD (七)

      降维(Dimensionality Reduction) 是机器学习中的一种重要的特征处理手段,它可以减少计算过程中考虑到的随机变量(即特征)的个数,其被广泛应用于各种机器学习问题中,用于消除噪声 ...

  8. Unity2D模拟控制位移

    using UnityEngine; using System.Collections; public class PlayerController : MonoBehaviour { public ...

  9. Django之ORM属性类型和约束条件

              ORM属性类型: 1. CharField 字符串字段, 用于较短的字符串. CharField 要求必须有一个参数 maxlength, 用于从数据库层和Django校验层限制该 ...

  10. Django模板之模板变量

    深度查询句点符(.)在模板语言中有特殊的含义. 当模版系统遇到点("."),它将以这样的顺序查询: 字典查询(Dictionary lookup) 属性或方法查询(Attribut ...