本文耗时x分钟,阅读需要x分钟。
如何学习一门语言
学习一门新的开发语言最重要的就是做到三点:
- 基础知识
- 学习抄代码
- 学习写代码
服务开发语言有哪些?
- C/C++
- Java
- Ruby
- Go
- Rust
- PHP
- Erlang
- Python
- NodeJS
- C/C++ 是在大学的时候学过,基本没有怎么用于实际开发,写起来很痛苦。(传统行业、腾讯系、游戏服务器等等)
- Java 使用过 4 年时间,主要是 J2EE 以及游戏后端服务器开发。(金融、保险等行业、阿里巴巴、京东)
- Ruby 使用过 1 年时间,主要是写应用的 API 接口,了解过 Ruby on Rails。(薄荷科技、其他小公司)
- Golang 从2015年开始使用,非常好用的一门编程语言,用起来爱不释手。(七牛,360,美图,百度,PingCAP等等)
- Python 一些简单的日常运维工具,或者统计分析脚本。(运维方向、机器学习/人工智能领域用的比较多)
- NodeJS 一般被一些前端开发工程师推崇,或者做全栈工程师推崇。
- Rust,Erlang 基本没怎么了解过。
C10K 和 C1000K
服务器C10K和C1000K问题
“Go not only solves C10K problem it blows it away with C1000K.”
Why Go?
- 语法简单,上手快(25个关键保留字)
- 性能高,编译快,开发效率不必Python/Ruby低
- 部署方便,编译包小,几乎无依赖(二进制文件包可直接运行)
- 原生支持并发(goroutine)
- 官方统一规范(gofmt, golint…)
- 丰富的标准库
Go 语言
Go 是 Google 开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。为了方便搜索和识别,有时会将其称为Golang。 摘自维基百科。
Go 的发展历程
Go 特点
- Go 是一种新的语言,是一种支持并发、带垃圾回收、可快速编译的静态语言。
- Go 为并发执行与通信提供了基本的支持,是天生的高性能服务开发语言。
- Go 结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。
- Go 只需要用几秒钟的时间就可以编译一个大型的 Go 程序,部署也非常容易。
- Go 具有 Python/Ruby 的开发效率,同时又有 C 语言的运行性能(不过还是有一定差距的)。
- Go 简单(只有 25 个保留字)
- Go 有自己的开发规范,还提供工具支持 gofmt 格式化工具 golint 代码规范检查 go vet 可帮我们静态分析我们的源码可能存在的问题
现在也有集成度比较高的,比方说:gometalinter


