Files
learngo/02-write-your-first-program/README.md
2018-11-18 00:03:43 +03:00

126 lines
3.3 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Cheatsheet: Write your First Go Program
Hi! For reference, you can store this cheatsheet after you take the lectures in this section.
You can also print this cheatsheet and then follow the video lectures in this section along with it.
Enjoy!
---
## COMMAND LINE COMMANDS:
* Enter into a directory: `cd directoryPath`
* **WINDOWS:**
* List files in a directory: `dir`
* **OS X & LINUXes:**
* List files in a directory: `ls`
---
## BUILDING & RUNNING PROGRAMS:
* **Build a Go program:**
* While inside a program directory, type:
* `go build`
* **Run a Go program:**
* While inside a program directory, type:
* `go run main.go`
<br /><br /><br /><br />
_See the next page..._
<div style="page-break-after: always;"></div>
## WHAT IS $GOPATH?
* _$GOPATH_ is an environment variable which points to a directory where the downloaded and your own Go files are stored.
* **On Windows**, it's in: `%USERPROFILE%\go`
* **On OS X & Linux**, it's in: `~/go`
* **NOTE:** Never set your GOPATH manually. It's by default under your users directory.
* **GOPATH has 3 directories:**
* **src:** Contains the source files for your own or other downloaded packages. You can build and run programs while in a program directory under this directory.
* **pkg:** Contains compiled package files. Go uses this to make the builds (compilation & linking) faster.
* **bin:** Contains compiled and executable Go programs. When you call go install on a program directory, Go will put the executable under this folder.
* _You might want to add this to your `PATH` environment variable if it's not there already._
---
## WHERE YOU SHOULD PUT YOUR SOURCE FILES?
* `$GOPATH/src/github.com/yourUsername/programDirectory`
* **Example:**
* My GitHub username is: inancgumus
* So, I put all my programs under: `~/go/src/github.com/inancgumus/`
* And, let's say that I've a program named hello, then I put it under this directory: `~/go/src/github.com/inancgumus/hello`
<br /><br /><br /><br />
_See the next page..._
<div style="page-break-after: always;"></div>
## FIRST PROGRAM
* **Create directories:**
* **OS X & Linux (or git bash):**
* Create a new directory:
* `mkdir -p ~/go/src/yourname/hello`
* Go to that directory:
* `cd ~/go/src/yourname/hello`
* **Windows:**
* Create a new directory:
* `mkdir c:\Go\src\yourname\hello`
* Go to that directory:
* `cd c:\Go\src\yourname\hello`
* Create a new `code main.go` file under Visual Studio Code.
* And add the following code to it and save it.
* Then, return back to the command-line.
* Run it like this: `go run main.go`
```go
package main
import "fmt"
func main() {
fmt.Println("Hi! I want to be a Gopher!")
}
```
That's all! Enjoy!
---
## NOTE:
* BTW, There's a new *Go Modules* support which allows you to run your programs in any directory that you want. After the section ends, you'll also find an information about it.
> For more tutorials: [https://blog.learngoprogramming.com](https://blog.learngoprogramming.com)
>
> Copyright © 2018 Inanc Gumus
>
> Learn Go Programming Course
>
> [Click here to read the license.](https://creativecommons.org/licenses/by-nc-sa/4.0/)