Golang Introduction
Programming language has been very many, biased performance-sensitive compiler language has C, C + +, Java, C #, Delphi and Objective-c, and so on, the rapid business development of dynamic analytic language has PHP, Python, Perl, Ruby, JavaScript and LUA, etc. There are Erlang, R, and MATLAB for specific areas of language, so why do we need a new language like go?
Data Source: https://www.tiobe.com/tiobe-index/
The top 9 programming languages are fairly stable, but the 10th place changes every month, and the candidate is go, Swift and R. Swift is the number one programming language for iOS mobile apps, but only for iOS and not for Android, and the status of R is deeply suppressed by Python.
In the single-machine era before 2000, C language is a programming king of. With the improvement of machine performance, software size and complexity, Java has gradually replaced the C's status of the big guy. But the Java programming experience is not as satisfying. Over the years, Java market share is gradually declining, the stamina is insufficient.
Go language author
Robert Greysmore, Luo bo Qingshen Parker, Ken Thompson was the main contributor to the Google V8, HotSpot JVM before the Go,robert development go in September 2007; Rob is mainly the author of Unix, UTF-8, and Plan9; Ken is mainly C, b language, the Father of Unix.
Later Ian Lance Taylor and Russ Cox joined the project, Ian Lance Taylor was one of the GCC authors and currently responsible for GCC's go implementation; Brad Fitzpatrick was the author of Memcache At present, HTTP2 is mainly the author of implementation.
Go language and new technology
Golang is a static, strongly typed, compiled, and hairstyle-based programming language developed by Google. One of the go language authors, Rob Pike, reviews the development of the go language in the new article "Go:ten years and climbing". They did not expect the rapid development of the go language, quickly became a new generation of cloud computing in the field of development language, Chinese programmers of the love of go beyond their imagination.
Go language Features:
- Simple syntax, quick to get started
- Parallel and asynchronous programming almost painless point, go language goroutine and channel is concurrent programming two artifacts, and C, Java, Python and other languages of the concurrency and asynchronous control is more troublesome, but also easy to error, and go to solve the problem is very elegant and smooth
- The C language of the internet era, the C language focuses on execution efficiency and performance with bottom-level friendliness, while Python is doing more with as little code as possible. And go language expects to complete a c+python unification, solve the development efficiency and the bottom application development
- Go language has Google's world-class technology company support
- Killer app Docker
The go language does not devour the underlying to C and C + + levels, nor does it devour the Java business layer. The go language must be able to devour the items on the pass, such as message cache middleware, service discovery, log collection, and control systems.
The Go-language killer Docker app benefits:
- Docker easy to get started
- Solve the environmental problems in operation and maintenance
- Google's support
- K8s
Companies using the Go language
First article: initial Golang