What is Go?
- Go is a cross-platform, open source programming language
- Go can be used to create high-performance applications
- Go is a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language
- Go was developed at Google by Robert Griesemer, Rob Pike, and Ken Thompson in 2007
- Go's syntax is similar to C++
What is Go Used For?
- Web development (server-side)
- Developing network-based programs
- Developing cross-platform enterprise applications
- Cloud-native development
Why Use Go?
- Go is fun and easy to learn
- Go has fast run time and compilation time
- Go supports concurrency
- Go has memory management
- Go works on different platforms (Windows, Mac, Linux, Raspberry Pi, etc.)
Go Compared to Python and C++
Go | Python | C++ |
---|---|---|
Statically typed | Dynamically typed | Statically typed |
Fast run time | Slow run time | Fast run time |
Compiled | Interpreted | Compiled |
Fast compile time | Interpreted | Slow compile time |
Supports concurrency through goroutines and channel | No built-in concurrency mechanism | Supports concurrency through threads |
Has automatic garbage collection | Has automatic garbage collection | Does not have automatic garbage collection |
Does not support classes and objects | Has classes and objects | Has classes and objects |
Doe not support inheritance | Supports inheritance | Supports inheritance |
Notes:
- Compilation time refers to translating the code into an executable program
- Concurrency is performing multiple things out-of-order, or at the same time, without affecting the final outcome
- Statically typed means that the variable types are known at compile time
No comments:
Post a Comment