Friday, September 8, 2017

Golang by Google

A while ago a friend has recommended me a website called LeetCode to practice my C++ programming skills. I have completed a few tasks. When I checked runtime statistics I saw that almost every solution written in Golang (aka Go) was a bit faster then C++. It immediately caught my eye. I read a few articles and books about it, saw a few tutorials; later I even used it at my job!

So a bit of background: Golang was created at Google in 2007 and was announced in November 2009. It is a free, open source, popular technology supported by a large community!

Nowadays quite a few big companies use it on a regular basis, including Google, Soundcloud, Dropbox, Docker and many others. 

Why is it so fashionable?

First of all, Golang supports concurrency, which is an incredibly widely used feature since computers have more and more cores. And Gorutines were designed to be an easy, pleasant experience.

Also Golang is comparatively fast to learn and start leveraging from it. The language has easy-to-read documentation, neat syntax and a great number of amazing tutorials out there. And if you want to try something out really fast or just test how some functions work you can use Playground.

The other good thing is a very strict compiler; every small possible warning/error would generate "panic" messages. It even complains about unused variables or packages! That's why the application would be safe and have as few bugs as possible. You don't have to think about memory leaks as well, because everything is cleaned up for you by Go! Isn't it just wonderful?

And that's just a few pros of this fairly new, hot language!


1 comment:

  1. Your good knowledge and kindness in playing with all the pieces were very useful. I don’t know what I would have done if I had not encountered such a step like this.
    Google Go Online Training

    ReplyDelete

It's only a beginning

What have I learned for the past 8 months of Open Source Programming? I was convinced from the very beginning that this course would be i...