読者です 読者をやめる 読者になる 読者になる

Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

Go標準のJSONパッケージ

Go言語には標準でencoding/jsonというパッケージが付属しています。 以前の記事では、typeから変数を作って無理くりパースする形でやってましたが……。 shuzo-kino.hateblo.jp 実際のところ いまかいてます 参考もと JSONのパース/生成 - はじめてのGo言語

go-echoでGPSな固定JSONを返す

go-echoでGPSな固定JSONを返すサンプルです 実際のところ package main import ( "net/http" "github.com/labstack/echo" ) // 型の指定 type ( place struct { LAT float32 `json:"lat"` LON float32 `json:"Lon"` NAME string `json:"name"` } ) // 変数の…

go用の軽量WEB鯖echo

go用の軽量WEB鯖echo 実際のところ 導入はパッケージ $ go get -u github.com/labstack/echo最小構成はこんな感じ package main import ( "net/http" "github.com/labstack/echo" ) func main() { e := echo.New() e.GET("/", mainpage) e.Logger.Fatal(e.St…

GO言語を導入する

実際のところ OS X そのままズバリ、パッケージで導入しましょう。 この辺りは大分熟れたようで、昔のようにGOPATHがどうのこうのと心配しなくて良いです。 余計なトコで根性みせる必要はありません!Downloads - The Go Programming Language #NIX系、ある…

「docopt」を使えばgithubやherokuのCLIツールみたいなUIをドキュメント駆動開発で実装できる。

Julliaとか聞いたこともない珍しい言語もサポートdocopt/docopt.rb · GitHub と、Rubyも対応はしているのですが docopt has been confirmed to work with 1.8.7p370 and 1.9.3p194. If you have noticed it working (or not working) with an earlier versio…

オンラインREPL「http://repl.it/」が魔界技術すぎて辛い

ちょっとJavaScriptで遊びたいなーと検索をかけたところ…… オンラインREPL「http://repl.it/」を発見しました 使えるものの一例 JavaScript以外にも、色んな言語が実装されています。 一通り遊んでみた範囲では、軽い動作検証程度であれば十分用は成すようで…

Go製対話型フィルタリングツール「peco」

pecoはpytyon製ツールpercolを参考にgo言語で実装された対話型フィルタリングツールです。 使い方 通常のコマンドと同様、パイプで繋いで実行します。 $ ls | pecopecoが実行されると、クエリの入力画面がでます。 QUERY> IgnoreCase [97 (1/5)] 121025/ 121…

クロスプラットフォームな環境でpbcopy | pbpasteをしたいときはgocopy | gopasteを使う

gocopyおよびgopasteは、クロスプラットフォームでOS Xのpbcopy | pbpasteみたいな事をするGo-lang製コマンドです。 つかいかた $ cat sample.txt gaga gagagaga fafawegawebga awl;rgnjkbdfvawbeなんてファイルがあった場合、普通にパイプライン繋ぎで行け…

GO用の全部のせフレームワークRevelでWEBアプリをつくる

GO言語にも、Railsのような全部のせWEBフレームワークがあります。 導入 これもgo getで楽々導入です。 go get github.com/revel導入が完了すると、$GO_PATH/src以下にサンプルが展開されます。試しにチャットアプリを動かしてみます。 $ revel run github.c…

GOPATHがないとか言われたら

GOPATHを設定していない場合、ライブラリの導入時にエラーがでます この場合 $ ls -dF ~/とやってhomeを確認した上で export GOPATH='/Users/shuzo/src'とでもやっておけば大丈夫です。 URLは驚いた事に何でもよいらしく $ go help gopath The Go path is us…

Go getのためには、各種バージョン管理ツールが必要

とあるパッケージを入れようとした所、エラーがでました。 $ go get github.com/kr/godep go: missing Mercurial command. See http://golang.org/s/gogetcmd package github.com/kr/godep imports code.google.com/p/go.tools/go/vcs: exec: "hg": executab…

「Go Web 编程」でGo言語のWebアプリを学ぼう

「Go Web 编程」はGo言語でWebアプリケーション(Web 编程)を開発する書籍です。全文・画像共にCC BY-SA 3.0 License(いわゆるクリエイティブコモンズ)で公開されています。 書籍版もは2013年5月末に大陸中国で出版されたようす。 有志(?)による日本…

Redigo:GO言語上でredisを試す。

ライブラリを導入し $ go get github.com/garyburd/redigo/redis$ #{おこのみのエディタ} hello-go-redis.goとやって、以下のコードを入力します。 package main import "fmt" import "github.com/garyburd/redigo/redis" func main() { //INIT OMIT c, err …

%v記法を使うと変換で楽できる

$ cat v.go package main import "fmt" func main() { i := 0 fmt.Printf("%03v\n", i) fmt.Printf("%02v\n" ,0xff) fmt.Printf("%020v\n" ,"hello") } こんな感じです。 実行結果 $ go run v.go 000 255 000000000000000hello 数値なら10進数。

GO言語には標準でコーディング規則矯正ギプスが付属している

マスコットが一々神経を逆撫でするGO言語の話題です。GO言語には標準でコーディング規則矯正ギプスが付属しています。 その名も「fmt」...まんまですね。 実例 たとえば、こんな見るにも無惨なコードも $ cat hello.go package main import "fmt" func main(…