DRYな備忘録

Don't Repeat Yourself.

go

Go言語のハードタブがつらいマンのgit pre-commitフック

メモ cat .git/hooks/pre-commit #!/bin/sh go fmt ./... なお、Golangの文化はハードタブです— マコピー (@mackee_w) 2014, 2月 15

Go言語のgoroutineって一体何よ【golang】

go

goroutineって一体何よ さっぱり分からないよ。並行処理?んご。Pythonならthreadingをちょっとだけ使ったことある。 しらべてみよう これめっちゃ分かりよかったです Go の並行処理 - Block Rockin’ Codes やってみよう 確かめたいポイントとしては gorouti…

Go言語に継承は無いんですか【golang】

go

困った 継承が無いのは困った。共通メソッドとかどうすりゃええねん的な。 前回のダックタイピングって一体なんなのよ【golang】 - DRYな備忘録に引き続き、めっちゃ参考にしたのはこれ Go言語における埋め込みによるインタフェースの部分実装パターン - Qii…

ダックタイピングって一体なんなのよ【golang】

go

ダックタイピングって ダック・タイピング - Wikipedia 一体何さ。わからないよ 調べた golangにおけるダックタイピングとは、で一番分かりやすかったのこれ Go言語における埋め込みによるインタフェースの部分実装パターン - Qiita 2014/05/27 追記 つまり…

GolangでOAuthしてTwitterのscreen_nameがjson decodeで取れないでござる【Twitter OAuth】【golang】

go

問題 golangのoauthモジュールとか使って楽々TwitterAPI生活したいじゃないですがgolangで。でOAuthは簡単に実装できたんだけど、ログインユーザのscreen_name取ろうとして取れない。 結論から言うとencoding/jsonの使い方だった 3時間くらい詰まったがな...…

(訳しながら)つくって覚えるRevelフレームワーク - その3

go

第3回 きっと何者にもなれない僕は、Go言語のウェブフレームワークであるRevelのドキュメントを和訳しつつ、理解を深めたいでござる。 前回 : (訳しながら)つくって覚えるRevelフレームワーク - その2 - DRYな備忘録 今回は Introduction のチュートリアル…

(訳しながら)つくって覚えるRevelフレームワーク - その2

go

前回にひきつづき、Golangどころかフレームワークのなんたるかを理解していない僕はRevelのドキュメントを和訳しつつ、理解を深めたいでござる。 それでは 今回はOverviewからでござる。 Overview This section gives you a taste of various parts of the f…

(訳しながら)つくって覚えるRevelフレームワーク - その1

go

Revelとは The Revel Web Framework for Go Golangのウェブフレームワークです。Router,Controllerを提供していて、他にも最低限のアプリケーションテストが最初から準備されている感じのもの。 すでに いくつかの自分のサービスはRevelで運用している otiai…

revel not found

go

revelインストールしたい % go get github.com/robfig/revel % which revel revel not found ふぁっ? こうだった % go get github.com/robfig/revel/revel % which revel /Users/otiai10/proj/go/bin/revel

Revelでjsonを返すときフィールド名を小文字にしたい【Revel】【golang】

go

これです Lower case key names with JSON Marshal in Go - Stack Overflow

golangを触ると家に帰りたくなる。つまりGo Home

go

Goを触ると家に帰りたくなる 仕事しているとやむなく(?)Goを触らなければならないことがある。これ不可抗力。 package main import "fmt ( ゚д゚)ハッ! 家に帰りたい!! つまりGo Home ということでつくりました otiai10/gohome https://github.com/otiai10/goh…

Go言語で可変長引数

go

package main import "fmt" func hoge(args ...string) string { fmt.Printf("%+v",args) return "hoge!!" } func main() { fmt.Println(hoge()) fmt.Println(hoge("fuga")) fmt.Println(hoge("foo","bar")) // fmt.Println(hoge([]string{"unko","oppai"}))…

Revelでプロジェクトをnewしてみた【Revel】【Golang】

go

問題 GoのウェブフレームワークRevelをこのサイトで使っています。 これで、 http://otiai10.hatenablog.com/entry/2013/09/29/131902 Revelのプロジェクトゼロから書いたけど、ゼロからやらなくていいっぽい。 revel new hogehogeってコマンドがあるらしい…

Go言語でデフォルト引数を使う【golang】

go

問題 go言語でデフォルト引数を使いたいじゃないか。 調査 http://stackoverflow.com/questions/2032149/optional-parameters Go does not have optional parameters 用意してないっぽい。だけど、その下にある type Params struct { a, b, c int } func doI…

Go言語でMonth型をintにする【golang】

go

問題 go言語で現在時刻は以下のように取得できる package main import ( "time" "fmt" ) func main() { now := time.Now() fmt.Printf("Now\t: %v\n", now) fmt.Printf("Year\t: %v\n", now.Year()) fmt.Printf("Month\t: %v\n", now.Month()) fmt.Printf("D…

revelでfileをアップロードするもnil【revel】【Go】【html】

go

問題 Goのウェブフレームワークrevelでファイルをアップロードしたい。 のに、nilがアップロードされてくる。 ナンデヤ app/views/Test/Index.html <html> <head> <meta charset="utf-8"> </head> <body> <h1>テストデータのアップロードページ</h1> <form name="upload" method="POST" action="/test/upload"> <input type="file" name="imgFile" accept="image/png"> </form></body></html>

GoのウェブフレームワークrevelでHelloWorld【revel】【Golang】

go

goal goをインストール revelをインストール revelで簡単なウェブサーバつくる revel 【動詞】 〔…を〕大いに楽しむ,〔…に〕ふける,凝る 〔in〕. log goをインストール mercurialが必要っぽい sudo apt-get install mercurial さきにPATH通しとく # {{{ GO…

ローカルMacにGOをインストールしてHelloWorld【Go言語】【brew】【MacOSX】

go

Goal ローカルのMacに.goファイルをつくって実行 ハローりっちゃん FizzBuzz 外部ファイルにローカルパッケージつくってimportする Log インストールしてみる [13:05:31] % brew search go algol68g go-app-engine-32 gocr google-sparsehash jpegoptim pygo…