关注公众号:雨哥写 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. Linux下3种常用的网络测速工具

    大家好,我是良许. 不管你用的是什么操作系统,网速都是你非常关心的一个性能指标,毕竟,谁都不想看个视频结果网速卡到你怀疑人生.本文介绍三个 Linux 命令行下的网络测速工具,让你随时随地知道你的网络 ...

  2. JUC之ReentrantLock源码分析

    ReentrantLock:实现了Lock接口,是一个可重入锁,并且支持线程公平竞争和非公平竞争两种模式,默认情况下是非公平模式.ReentrantLock算是synchronized的补充和替代方案 ...

  3. gets() 、 getchar() 、 getch() 、getche()、gets()、 scanf()的区别

    1.getchar().getche().getch() (1).getchar 函数用于从标准输入设备键盘读入单个字符,返回表示读入字符的ASCII码值,并在屏上显示该字符:头文件是 stdio.h ...

  4. Spring全家桶之SpringMVC(三)

    Spring MVC单个接收表单提交的数据   单个接收表单提交的参数 在实际开发中通过会在spring MVC的Controller里面接收表单提交过来的参数,这块代码该怎么去编写呢? 示例: 编写 ...

  5. 系统学习scala--基础

    scala基础 安装scala(不推荐使用最新版本,2.11.x够用了) scala官网 2.11.12版本下载页面 这里我选择2.11.12版本,在下载页面往下拉,选择scala-2.11.12.m ...

  6. shell 并行运行。

    我实在是太喜欢这个方法了.爽歪歪. 原帖 http://www.xaprb.com/blog/2009/05/01/an-easy-way-to-run-many-tasks-in-parallel/ ...

  7. 微信小程序入门知识点总结

    微信小程序入门知识点总结 前情介绍 ​ 微信小程序就不多介绍了,我们想要开发微信小程序首先得到微信公众平台 下方的小程序处注册相关账号并登录,接着填写小程序相关资料.在设置处可找到AppID用以开发微 ...

  8. MySQL常见面试题索引、表设计

    正确使用索引的条件 1.建立索引的列的重复度不能太高 2.条件列不能参与计算 3.不能使用函数 4.条件中不能使用范围 5.不要使用like '%c' 6.条件中用or a=0 or b=1 or c ...

  9. Django数据库表初始化缓存清除

    新建的django项目中没有应用app01??? models中也没有UserInfo表???? 但在migrate是却一直报错!!!!! 产生此种现象的原因: 之前的项目中肯定是用到过应用app01 ...

  10. python3.x 基础一

    1.python 格式化print #/usr/bin/env python #-*- coding: utf-8 -*- #Author:jenvid.yang # 连接符号+,可以连接多个变量或者 ...