SlideShare a Scribd company logo
1 of 12
Download to read offline
Go语言

2011.2.27
 韦光京
第一印象
• WOW,不是创造新名词,而是要解决真问
  题!
• 语法简单,表达的却不简单
• 偶像啊偶像
 – Ken Thompson
 – Rob Pike
 – Robert Griesemer

 – Russ Cox
 – Ian Taylor
为什么要创造新的语言?
• 解决实际问题
• 对分布式和多核的支持
• (C++/Java)+(JS/Python),“动”“静”皆
  宜
• 编译飞快
• 试着做做看,很惊喜!
惊喜一
• 语法很简单
• 关键字数量:
 C (K&R) K&R 32
 C++        1991 48
 Java 3rd edition 50
 C# 2010          77
 C++0x 2010       72+11*
 JavaScript ECMA-262 26+16*
 Python 2.7       31
 Pascal ISO       35
 Modula-2 1980    40
 Oberon 1990      32
 Go 2010          25
惊喜二
• 非常棒的并发支持
 – Goroutine
 – Channel

 Start a goroutine:
   go f()
 Channel send (arrow points in direction of flow):
   ch := make(chan int)
   go fn(ch)
   ch <- 32
 Channel receive:
   value = <-ch
惊喜三
• 出色的包支持
 – import
• 编译真的很快!非常快!
惊???
• 没有类!没有继承!怎么办!
• 用Go的方式
 – Interface
 – 面向对象而不是面向类型
 – C++/Java 类的局限
 – Go方式的简单解决
Google的影响(或者担心?)
• Google大家也怕了吗?
• 别担心,Google只有一点影响到了Go,而
  且这个影响非常正面:
 – Google的开发模式:codereview机制
现状
•   Linux/FreeBSD/Mac 32/64位 OK
•   Windows x86 OK,amd64进行中
•   ARM OK
•   plan 9 进行中
•   TIOBE 2011年2月编程语言排行榜 第19位
我的Go语言之旅
•   喜欢之,使用之,贡献之
•   Windows的移植
•   Go-ODBC
•   Enjoy...精彩继续...
建议
•   坚持写Go代码
•   坚持写Go代码
•   坚持写Go代码
•   Go和其他语言不同,用Go的方式去思考
•   加入社区,Go的社区非常Nice!
    – Golang-Nuts
    – Golang-China
谢谢!

More Related Content

Viewers also liked

ActiveConversion Lead Scoring
ActiveConversion Lead ScoringActiveConversion Lead Scoring
ActiveConversion Lead ScoringActiveconversion
 
ActiveConversion ProspectAlert Presentation
ActiveConversion ProspectAlert  PresentationActiveConversion ProspectAlert  Presentation
ActiveConversion ProspectAlert PresentationActiveconversion
 
사계절 출판사
사계절 출판사사계절 출판사
사계절 출판사guest4ab227
 
사계절 출판사
사계절 출판사사계절 출판사
사계절 출판사guest4ab227
 
Видеореклама: новые возможности, новые деньги
Видеореклама: новые возможности, новые деньгиВидеореклама: новые возможности, новые деньги
Видеореклама: новые возможности, новые деньгиChistov Dmitry
 

Viewers also liked (7)

ActiveConversion Lead Scoring
ActiveConversion Lead ScoringActiveConversion Lead Scoring
ActiveConversion Lead Scoring
 
ActiveConversion ProspectAlert Presentation
ActiveConversion ProspectAlert  PresentationActiveConversion ProspectAlert  Presentation
ActiveConversion ProspectAlert Presentation
 
사계절 출판사
사계절 출판사사계절 출판사
사계절 출판사
 
사계절 출판사
사계절 출판사사계절 출판사
사계절 출판사
 
Increasing Trade Show ROI
Increasing Trade Show ROIIncreasing Trade Show ROI
Increasing Trade Show ROI
 
The Dark Side
The Dark SideThe Dark Side
The Dark Side
 
Видеореклама: новые возможности, новые деньги
Видеореклама: новые возможности, новые деньгиВидеореклама: новые возможности, новые деньги
Видеореклама: новые возможности, новые деньги
 

Similar to Go

Go for web
Go for webGo for web
Go for webWeng Wei
 
2012,我的技术之选
2012,我的技术之选2012,我的技术之选
2012,我的技术之选勇浩 赖
 
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?Miles Chou
 
Grpc + python.key
Grpc + python.keyGrpc + python.key
Grpc + python.keyAndy Dai
 
Go 語言基礎簡介
Go 語言基礎簡介Go 語言基礎簡介
Go 語言基礎簡介Bo-Yi Wu
 
Angular 开发技巧 (2018 ngChina 开发者大会)
Angular 开发技巧 (2018 ngChina 开发者大会)Angular 开发技巧 (2018 ngChina 开发者大会)
Angular 开发技巧 (2018 ngChina 开发者大会)Will Huang
 
Running a Service in Production without Losing Your Sanity
Running a Service in Production without Losing Your SanityRunning a Service in Production without Losing Your Sanity
Running a Service in Production without Losing Your SanityPoga Po
 
不妥協的河蟹之道
不妥協的河蟹之道不妥協的河蟹之道
不妥協的河蟹之道Ken Kuan
 
Power UP your CLI
Power UP your CLIPower UP your CLI
Power UP your CLIAndy Dai
 
[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204CAVEDU Education
 
.net framework from 1.0 -> 4.0
.net framework from 1.0 -> 4.0.net framework from 1.0 -> 4.0
.net framework from 1.0 -> 4.0ligaoren
 
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)永立 連
 

Similar to Go (16)

Go for web
Go for webGo for web
Go for web
 
2012,我的技术之选
2012,我的技术之选2012,我的技术之选
2012,我的技术之选
 
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
2019/7/27 先別開 Branch 了,你聽過 Feature Toggle 嗎?
 
Grpc + python.key
Grpc + python.keyGrpc + python.key
Grpc + python.key
 
Go 語言基礎簡介
Go 語言基礎簡介Go 語言基礎簡介
Go 語言基礎簡介
 
Angular 开发技巧 (2018 ngChina 开发者大会)
Angular 开发技巧 (2018 ngChina 开发者大会)Angular 开发技巧 (2018 ngChina 开发者大会)
Angular 开发技巧 (2018 ngChina 开发者大会)
 
Go Lang
Go LangGo Lang
Go Lang
 
Running a Service in Production without Losing Your Sanity
Running a Service in Production without Losing Your SanityRunning a Service in Production without Losing Your Sanity
Running a Service in Production without Losing Your Sanity
 
不妥協的河蟹之道
不妥協的河蟹之道不妥協的河蟹之道
不妥協的河蟹之道
 
Power UP your CLI
Power UP your CLIPower UP your CLI
Power UP your CLI
 
[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204[3]投影片 futurewad樹莓派研習會 141204
[3]投影片 futurewad樹莓派研習會 141204
 
42qu thrift1
42qu thrift142qu thrift1
42qu thrift1
 
App开发过程的演变之路
App开发过程的演变之路App开发过程的演变之路
App开发过程的演变之路
 
.net framework from 1.0 -> 4.0
.net framework from 1.0 -> 4.0.net framework from 1.0 -> 4.0
.net framework from 1.0 -> 4.0
 
回顧 GNU/Linux 中文資訊化進展與未來機會
回顧 GNU/Linux 中文資訊化進展與未來機會回顧 GNU/Linux 中文資訊化進展與未來機會
回顧 GNU/Linux 中文資訊化進展與未來機會
 
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)
看似比較簡單的推坑教學 C語言從崩潰到崩潰Ex(一)
 

Go