macでの開発環境(Go)

# 概要
最近新しいmacを手に入れて開発環境を構築する機会があったのでメモしておきます。
良さそうなツールが見つかったら随時、追記していく予定です。

# Chrome
まずはWebブラウザ。
[公式サイト](https://www.google.co.jp/chrome/browser/desktop/index.html)よりダウンロードしてインストール。

## 拡張機能

### 英辞郎 on the WEB 拡張機能
ツールバーから英語を検索できるので便利。
[Chrome ウェブストア](https://chrome.google.com/webstore/detail/%E8%8B%B1%E8%BE%9E%E9%83%8E-on-the-web-%E6%8B%A1%E5%BC%B5%E6%A9%9F%E8%83%BD/oonalfdoahlmjaoloddjenihohbfodme)よりchromeに追加する。

### Strong Password Generator
ツールバーからパスワードの生成ができるので便利。
[Chromeウェブストア](https://chrome.google.com/webstore/detail/strong-password-generator/emehklffcaphknhhfhadkjhpfapcbpco)よりChromeに追加する。

### Vysor
Android端末の画面をPCで映すことができます。
[Chromeウェブストア](https://chrome.google.com/webstore/detail/vysor/gidgenkbbabolejbgbpnhbimgjbffefm)よりchromeに追加する。

# Dropbox
複数の端末間でのファイル共有用。
[公式サイト](https://www.dropbox.com/ja/)よりダウンロードしてインストール。

# Clipy
スニペットの管理。
[公式サイト](https://clipy-app.com/)よりダウンロードしてインストール。

# Evernote
メモを残すのに使用してます。
[公式サイト](https://evernote.com/intl/jp/)よりダウンロードしてインストール。

# Slack
メッセージツール
[App Store](https://itunes.apple.com/app/slack/id803453959?ls=1&mt=12)よりインストール。

# Spectacle
キーボード操作でウィンドウの移動やサイズ変更などが可能。
マルチディスプレイで使用する時に移動と配置が便利。
[公式サイト](https://www.spectacleapp.com/)よりダウンロードしてインストール。

# iTerm
ターミナル
[公式サイト](https://www.iterm2.com/downloads.html)よりダウンロードしてインストール。

# Xcode
[App Store](https://itunes.apple.com/jp/app/xcode/id497799835?mt=12)よりインストール。

## (必要に応じて)Command Line Toolsのダウンロード
Command Line Toolsが入っていない場合は
```xcode-select --install```
をターミナルで実行してインストールする。

# Homebrew
パッケージ管理ツール
[公式サイト](http://brew.sh/)よりインストール用のコマンドをコピーしてターミナルにペーストしてインストールする。

## Homebrew Cask
Homebrewの拡張
[公式サイト](https://caskroom.github.io/)よりインストール用のコマンドをコピーしてターミナルにペーストしてインストールする。

```bash
$ brew tap caskroom/cask
```

# tmux
ターミナルの多重化
ターミナルで下記のコマンドを実行する。

```bash
$ brew install tmux
```
# zshに切り替え
[【図解】ゼロから始めるモダンなコマンドライン環境作り #iTerm2 #tmux #zsh](https://codeiq.jp/magazine/2014/01/5143/)を参考に設定を変更。

# VirtualBox
ローカルでのサーバ開発用に。

```zsh
$ brew cask install virtualbox
```

# Docker Machine
Dockerホストの構築用に。

```zsh
$ brew install docker-machine
```

# Docker Compose
複数のDockerコンテナの管理用に。

```zsh
$ brew install docker-compose
```

# Go

```zsh
$ brew install go
$ mkdir $HOME/_go # create a workspace directory and set GOPATH accordingly
$ export GOPATH=$HOME/_go # .zshrcにも追記しておく
$ export PATH=$PATH:/usr/local/opt/go/libexec/bin:$GOPATH/bin # .zshrcにも追記しておく
```

# ATOM
githubが開発したテキストエディターで、[GitHub Flavored Markdown(GFM)](https://help.github.com/categories/writing-on-github/)のライブプレビューが可能
[公式サイト](https://atom.io/)よりダウンロードしてインストール。

## go-plus
ATOMでGoサポートしてくれる機能拡張。
Install Packagesより「go-plus」で検索して、インストール。

# Visual Studio Code
主にGoでの開発用に使用してます。
[公式サイト](https://www.visualstudio.com/ja-jp/products/code-vs.aspx)よりダウンロードしてインストール。
## 拡張機能
### Go
[MarkectPlace](https://marketplace.visualstudio.com/items?itemName=lukehoban.Go)を参考にインストール。

**補完でPANICが出る場合**
バージョンアップなどで補完でPANICが出る場合はgocodeが古くなっている可能性があります。
gocodeの更新をしましょう。

```shell-session
$ go get -u github.com/nsf/gocode
$ gocode close
```

# Sequel Pro
MySQLデータベースに接続するのに使ってます。
[公式サイト](http://www.sequelpro.com/)よりダウンロードしてインストール。

# Medis
Redisに接続するのに使っています。
http://getmedis.com/

```bash
$ brew cask install Caskroom/cask/medis
```

# GitHub Desktop
Gitの操作はコマンドが多いですが、簡単な作業や変更の比較を見る時に使ってます。
Source Treeよりできることは少ないけど、シンプルな作りなので非エンジニアでも使えると思います。
[公式サイト](https://desktop.github.com/)よりダウンロードしてインストール。