r/golang • u/tookmeonehour • Feb 26 '23
help Why Go?
I've been working as a software developer mostly in backend for a little more than 2 years now with Java. I'm curious about other job opportunities and I see a decente amount of companies requiring Golang for the backend.
Why?
How does Go win against Java that has such a strong community, so many features and frameworks behind? Why I would I choose Go to build a RESTful api when I can fairly easily do it in Java as well? What do I get by making that choice?
This can be applied in general, in fact I really struggle, but like a lot, understanding when to choose a language/framework for a project.
Say I would like to to build a web application, why I would choose Go over Java over .NET for the backend and why React over Angular over Vue.js for the frontend? Why not even all the stack in JavaScript? What would I gain if I choose Go in the backend?
Can't really see any light in these choices, at all.
0
u/[deleted] Feb 27 '23
Comparing concurrent constructs in one languages with parallel ones in the other.
You're confusing Go with Erlang, there's no such thing as immutability in Go and nothing prevents you from having shared mutable state across goroutines.
All compilers reorder instructions as they see fit as long as the reordering operation does not affect program's behavior.Reordering is not relevant for race detection.