This is a creation in Article, where the information may have evolved or changed.
This article is not long, but it is very interesting. See for several days, has not been available to translate. Take the time to translate, this should be regarded as the English "title Party" and "senior Black" bar.
The original text is not good to read, also nothing special, but if is to strengthen the study golang confidence, worth to see.
The original is here: http://aeronotix.pl/blog/go-is-boring
—————-Translation Divider Line —————-
Boring Golang.
Go is nothing new and nothing special. You've met before you saw Go. Yes, I think so, too. But what you haven't seen is that all of this is concentrated in one language, creating a TMD super-useful core.
You've used the channel before, it's cool. Just to get a little bit of performance boost is used everywhere, and expect to be able to integrate in the new language. You are proficient in threading, Ctrip, actor, future, and promise. You call up, walk up, talk like a duck (duck type). But you (probably) never put these things together. And this is Go. Go is all about what we've learned in depth, with participating. Go tries to eliminate the bad part of the language, or to remove the main part (or at least try to provide a better choice).
It's also possible to write a damn verbose code while playing the static type advantage. You need to set the type of each variable for the compiler, and work hard (to the computer) to explain what each part ultimately accepts and returns. It's disgusting, and it can be avoided altogether. Create various basic types, or other special grammars, by literal syntax or functions. So why do we need to use special syntax to tell the compiler what type to use to create? No need. Type inference. Go has a type inference symbol (: =) that can deduce the type at compile time, thus saving your valuable keystroke count. This is not a new thing, a lot of language can be done.
Useful and lightweight object-oriented programming. There are a lot of C + + style languages that make the class look like the Ultimate king in programming. All types must be neatly categorized and placed in order to create a taxonomy collection, a taxonomy of all the work objects in your code museum. This is what is needed for the stupid grand ritual of ordinary operation ... Something that must be done. Nouns are things, nouns invoke verbs. It's that simple. There should be no special things in programming form. This brings a definite benefit. It encapsulates a number of operations on the same data (verbs work on nouns), which has a good semantic purpose (x is a Y) but it is not available anywhere. Hell, I've written a lot of web back-end stuff, but I've never written a Python class about ... 3 months. Many languages have made a concession to OOP, which is "just another paradigm", which is right. It's nothing new.
Concurrency is a one-class citizen. It's a feat. I no longer need to look through the standard library just to find an old, creaking model that is not so compliant. Nor do I need to use threads, joins, and other confusing annoying things to make programs concurrency in the same tedious way. Go and just run. I request a concurrent routine and get a damn concurrency routine. This makes it possible for low-level programmers like me to use concurrency. It's nothing new.
I think my point is that Go looks nothing new. It looks like you can get these features anywhere else, without having to learn a whole new language. You can't get them at the same time. At least that's the DNA in the language.