This language has been in sight for several years.
- But what is written on it?
- And what can you write?
- Is it worth learning?
- Or will he disappear soon?
This language has been in sight for several years.
The question gives rise to endless debates and discussions based not on knowledge, but on opinions. To get an answer, rephrase your question so that it can be given an unambiguously correct answer, or delete the question altogether. If the question can be reformulated according to the rules set out in the certificate , edit it .
What is written on it?
And what can you write?
Anything. In fact, anything, but, because of its advantages, it is very popular for developing server-side (backend).
Is it worth learning?
The question is rhetorical. From the point of view of purchaseability, there is almost no ready-made demand for it, due to youth and undilutedness. So what's the point in it:
Or will he disappear soon?
As already mentioned, it cannot disappear, because Open source Those. no one takes away from you what is written on it, the maximum will deteriorate development / support, which is hard to believe, because the language has very significant advantages.
On performance for the web (ready-made frameworks), Go loses only Java and C / C ++ and on a par with node.js. At the same time, resource consumption is significantly lower than Java and productivity is much greater than that of Python / Ruby.
At the same time, it has just an awesome multi-threaded model compared to them. So far this is the best I've ever met for multitap / asynchron. At the same time, he also supports classical patterns like mutexes and callbacks.
It is very easy to learn. It seems to me even elementary, especially if there is a basis from Python / JavaScript. There is also a rather entertaining model of inheritance, which, it seems to me, is more transparent than the classical OOP, but a bit unusual at first.
This language is compiled and statically typed. What gives the identification of many errors long before the production. For example, such errors in Python are detected only by direct testing and, if there are no tests, then there are a lot of chances to put the system. Here it is eliminated at compile time.
And finally, one of the most important pieces is that you should not be afraid of typing and compilation. In 145% of cases you do not have to declare the type of a variable in the code - it is automatically set when you assign it a value. It is also not necessary to declare variables in advance.
Well, compilation - the main fad. Compile time is what the main emphasis is on when developing a language. It does not differ from the start time of the interpreted language. Those. a system written in go from uncompiled sources is launched at about the same speed as a system of similar complexity written in an interpreted language.
Those. we have the advantages of two worlds - the compilation / launch speed of the interpreted language and the reliability of the compiled languages. Plus top performance, multi-paradigm (you can write in a functional style), simplicity and low resource consumption.
Whether this is right for you is not for me to decide. It suits me, and I consider it a very good choice for high-load services (and not only).
But what is written on it?
I wrote two web services on Go, one is still in deep alpha, the second has been doing its job for almost a year now. In both cases, customers are satisfied.
And what can you write?
Almost anything, but still the emphasis is on web applications. In my opinion, Go is ideal for web development when maximum performance and reliability is required. For example, if you need to quickly roll up the homepage for "Vasi Pupkin" Go is clearly not the best choice, write in PHP (It’s the way that was originally intended for Personal H ome P age), but if you need a serious web service where a banal typo in the code may cost your client at XXX $, then it already makes sense to look at Go
Is it worth learning?
I am afraid of the answer to this question, nobody can give you, except you. Try it in business, then you will immediately understand whether it is suitable for you, and for what purposes. Personally, I fell in love with this language at first sight)
Or will he disappear soon?
Go can not disappear, it opensource.
I think to add anything to the pluses described above. It is clear that the person who invented the C language, and now working in Google and having invented GO took everything into account and made a really magnificent and simple language. Learning is worth it!
You should not learn if you plan to write home pages in php all your life, if you don’t plan to do anything more difficult with an Internet shop. Just learn and never use too ...
It's also easy to write programs for Android and fly like rockets!
What else is good about it is cross-platform. Wrote once and compile for any. And I on Windows made for Windows and for Linux. Unloaded on Linux and launched without rework ...
Under Android, everything is done by one gomobile utility. Moreover, it can immediately install on the smart, if you connect it with a cord.
You should look at the list of companies / services using Golang anyway
Source: https://ru.stackoverflow.com/questions/211605/
All Articles