3 ms·
Doesn't all that already exist in Java? And have already existed for a while, and thus has a big ecosystem of tools? Why would someone use Go over Java? (Just y
by Erlich_Bachman 9y ago
Doesn't all that already exist in Java? And have already existed for a while, and thus has a big ecosystem of tools? Why would someone use Go over Java? (Just your opinion, what are the differences?)
- petepete 9y agoSimplicity of deployment perhaps? Dropping a binary onto a server and having it just work is a huge benefit. Also, memories of Tomcat. shudder.
- weberc2 9y agoLots of small differences mostly. Go gives you control of memory layout, it has better ergonomics (type inference), simpler tooling, no dependency on IDEs (you can if you want but most use vim or emacs), built in testing, better standard library (production ready HTTP server, JSON, templating, etc), low latency GC out of the box, simpler GC tuning, statically compiled binaries, fast startup times, simpler primitives (e.g., no exceptions or inheritance), implicit interfaces/structural subtyping etc. all while competing with Java for performance. This is my list of things that Go does better than Java; I don't want to give the impression that Go is perfect--I have lots of criticisms for it (no generics, hacky workarounds for sum types, error handling is often too simple out of the box, no decent REPL, etc), but it lets me be more productive than any language I've used to date.
- Erlich_Bachman 9y agoThank you, I was looking for just that kind of perspective from someone who uses go and thinks they are getting something better. It's understandable of course that neither of languages are perfect.
- wlll 9y agoGo programmer here (operations stuff mostly). Came from Ruby, but have done C, Objective C, Perl and others. Simplicity of deployment is nice, but the main reason I don't use Java is because it's just painful to write. I had to write some Java just the other day to duplicate a bug a customer bug and it was tortuous.