Golang - 开篇必须吹牛逼
Golang - 开篇必须吹牛逼
(1)我们为什么要学
高并发
深度 || 广度
(2)go学习思路和目标
多打多练
掌握go语言
做一个并发相关的案例
Go牛逼吗
1. 认识go语言
- go语言(或 Golang)是Google在 2007 年开发的一种开源编程语言,于2009年11月开源,2012年发布go稳定版
- go是非常年轻的一门语言,它的主要目标是“兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性
2. go的诞生
- Robert:曾协助制作Java的HotSport编译器,制作了chrome浏览器的js引擎V8
- Rob:google首席科学家,与ken共事多年,创出广泛实用的UTF-8编码
- Ken:1966年加入贝尔实验室,1983年图灵奖和美国国家技术奖得主,是Unix的原创者,发明了衍生出C的B语言
3. go的优势
- 做高并发有巨大的优势
- 开发简单,开发效率堪比python
- 运行效率高,很适合用作中央服务器的系统编程语言
- 是项目转型的首选语言,很多公司在用go重构代码
- 提供了海量并行的支持,很适合处理游戏相关数据
4. 使用go的公司
- https://github.com/kubernetes/kubernetes
- https://github.com/facebookgo
- 腾讯
- 百度
- 360开源日志系统
- https://github.com/Qihoo360/poseidon
- 微服务
5. go适合做什么
- 服务端开发
- 分布式系统
- 网络编程
- 区块链开发
- 内存KV数据库,例如boltDB、levelDB
- 云平台
安装环境
1. 下载SDK
go中文在线文档:https://studygolang.com/pkgdoc
GOROOT:go语言按照的根目录
GOPATH:简单理解就是放代码工程的,需要自己创建,配置到环境变量
src:放源代码,.go文件
pkg:存放中间文件
bin:放可执行文件
2. 编辑器 goland-2018.1.1.exe
https://www.0daydown.com/tag/goland
Golang - 开篇必须吹牛逼的更多相关文章
- 不要听吹牛逼什么前端MVVM框架就是好,其实都是一帮没学好分层设计的搞出来的,让你彻底看清前端MVVM的本质
最近前端圈子里面,发现大家都在热炒概念,什么knockout,angularJs,都被捧成神了,鄙人不才,最近心情也不好,特地写这篇文章来找骂 写代码的码农都知道,Java社区虽然不是一个提出分层思想 ...
- Spring浅入浅出——不吹牛逼不装逼
Spring浅入浅出——不吹牛逼不装逼 前言: 今天决定要开始总结框架了,虽然以前总结过两篇,但是思维是变化的,而且也没有什么规定说总结过的东西就不能再总结了,是吧.这次总结我命名为浅入浅出,主要在于 ...
- Spring注解浅入浅出——不吹牛逼不装逼
Spring注解浅入浅出——不吹牛逼不装逼 前情提要 上文书咱们说了<Spring浅入浅出>,对Spring的核心思想看过上篇的朋友应该已经掌握了,此篇用上篇铺垫,引入注解,继续深入学习. ...
- Spring的数据库编程浅入浅出——不吹牛逼不装逼
Spring的数据库编程浅入浅出——不吹牛逼不装逼 前言 上文书我写了Spring的核心部分控制反转和依赖注入,后来又衔接了注解,在这后面本来是应该写Spring AOP的,但我觉得对于初学者来说,这 ...
- Spring MVC浅入浅出——不吹牛逼不装逼
Spring MVC浅入浅出——不吹牛逼不装逼 前言 上文书说了Spring相关的知识,对Spring来了个浅入浅出,大家应该了解到,Spring在三层架构中主做Service层,那还有Web层,也就 ...
- Golang之路
目录 Golang之路 Golang之路 Golang(一) - 开篇必须吹牛逼 Golang(二) - 第一个go程序和基本语法 Golang(三) - 函数 Golang(四) - 流程控制 Go ...
- 安装Leanote极客范的云笔记
前言 在这个互联网知识呈爆炸增长的时代,作为一个程序员要掌握的知识越来越多,然再好的记性也不如烂笔头,有了笔记我们就是可以时常扒拉扒拉以前的知识,顺便可以整理下自己的知识体系. 如今市面上云笔记产品, ...
- 【01】循序渐进学 docker:到底是啥
写在前面的话 首先说一下,我本身是做运维的,4 年工作,多家公司.所以可能接下来谈到的更多的是一些在工作过程中积累的个人看法.且有些并不具备普遍性,有不合适的地方,全当我在吹牛逼就行. 一开始我们得谈 ...
- c# TCP高性能通信
开篇都是吹牛逼哈... 我原本打算使用dotnetty来解决传输问题,但是试了下没有成功,也没有找到相关问题解决方法,导出源码,好大啊.暂时不想研究,而且是.Net Core的.最后没有办法,就自己封 ...
随机推荐
- 【独立开发人员er Cocos2d-x实战 011】Cocos2dx 3.x命令行生成APK具体解释
Cocos2d-x 3.6项目打包生成apk安卓应用文件,搭建安卓环境的步骤有点繁琐.但搭建一次之后,以后就会很快捷! 过程例如以下: 一.下载安卓环境:搭建Android环境须要用到Android ...
- Android 组件ContentProvider
Android 组件ContentProvider Android的数据存储有五种方式Shared Preferences.网络存储.文件存储.外储存储.SQLite,一般这些存储都仅仅是在单独的一个 ...
- 您必须先调用“WebSecurity.InitializeDatabaseConnection”方法。。。
有如下代码: [Authorize] public ActionResult Index() { ViewBag.ShowList = ShowList.GetShowList(WebSecurity ...
- SQL Source Control for teams
You'll use SQL Source Control differently depending on which development model you're using: 不同的模式有不 ...
- word2vec和word embedding有什么区别?
word2vec和word embedding有什么区别? 我知道这两个都能将词向量化,但有什么区别?这两个术语的中文是什么? from: https://www.zhihu.com/question ...
- [NOI 2003] 逃学的小孩
[题目链接] https://www.lydsy.com/JudgeOnline/problem.php?id=1509 [算法] 树的直径 [代码] #include<bits/stdc++. ...
- Genuitec
- Oracle_exp/expdp备份
目录索引 1.exp和expdp的区别 2.expdp导出数据库流程 一.↓↓exp和expdp的区别↓↓ 1.exp和expdp最明显的区别就是导出速度的不同.expdp导出是并行导出(如果把exp ...
- Get 和 Post
理论: Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符,我们可以这样认为:一个URL地址,它用于描述一个网络上的资源,而 ...
- Android媒体解码MediaCodec MediaExtractor学习
Android提供了MediaPlayer播放器播放媒体文件,其实MediaPlyer只是对Android Media包下的MediaCodec和MediaExtractor进行了包装,方便使用.但是 ...