🤯 Introducing Traffic Inspector - Observability right from the ngrok dashboard. Learn more ->
![ngrok - secure introspectable tunnels to localhost](https://cdn-ak-scissors.b.st-hatena.com/image/square/ca02c869207e36d7602e38b57a36442d08358407/height=288;version=1;width=512/https%3A%2F%2Fcdn.prod.website-files.com%2F63ed4bc7a4b189da942a6b8c%2F66857e35669ffc5b744f4ded_feature-homepage-new-1-min.png)
Go を使うとサーバーとアプリケーションの境界が無くなり、アプリケーションサーバーを書けるようになります。 それは良いことなのですが、アプリケーションを書く人が、従来サーバーを書く人が設計していた機能を理解して実現できないと、運用できないサーバーができあがる結果になってしまいます。 例えば Apache は、 master, worker プロセスが分離していて、設定変更を反映させるときなどは新しい worker を作ってから古い worker を殺すことで、サービスを一瞬も止めずに worker を再起動していました。これを graceful restart と呼びます。 Go で 1024 以下のポートを Listen するアプリを作る で触れたとおり、 Go はプロセス管理システムを作るのには少し向いていない面がありますし、せっかくアプリケーションプログラマーが簡単にサーバーを書ける
Package github provides a client for using the GitHub API. Usage: import "github.com/google/go-github/github" Construct a new GitHub client, then use the various services on the client to access different parts of the GitHub API. For example: client := github.NewClient(nil) // list all organizations for user "willnorris" orgs, _, err := client.Organizations.List(ctx, "willnorris", nil) Some API me
homebrew の Go用のレシピ を見た人は、その中にこんなオプションが定義されているのに気がついたかもしれない: option 'cross-compile-all', "Build the cross-compilers and runtime support for all supported platforms" option 'cross-compile-common', "Build the cross-compilers and runtime support for darwin, linux and windows" Goはクロスコンパイルが可能なようにビルドしておけば、簡単に他の環境で動くバイナリを作ることができるようになっているらしい。 Goがダイナミックライブラリに依存しない実行バイナリを作るという特徴と併せて考えると非常におもしろい(そして、使える)機能だと思
Go Conference 2013 SpringのハンズオンでA Tour of Goやったけど目で読んでも頭に入ってこないのでメモりながらやった。 ちょっとしたまとめページになったのでさらっとよんで感触をつかむときには役に立つかもしれないけど、結局は演習などでコード書かないと身につかないことがわかったので時間をつくってちゃんとやった方がいいと思う。 Packages すべてのプログラムは package で構成される プログラムの処理は main パッケージの main 関数で始まる 他のパッケージは import で取り込める import "websocket"のwebsoketはcode.google.com/p/go.net/websocketを指している Imports import は括弧でグループすることができる
golang - Go言語における埋め込みによるインタフェースの部分実装パターン - Qiita [キータ] http://qiita.com/tenntenn/items/e04441a40aeb9c31dbaf golang はインタフェースがマッチしているかどうかにより処理を切り分けられる。 package main import "fmt" type Person struct { FirstName string LastName string } func (p *Person) Name() string { return p.FirstName + " " + p.LastName } func main() { person := &Person{"Taro", "Yamada"} fmt.Println(person.Name()) } メソッドを保持しているのであれ
構造体 Go言語には、クラスがない。そのため、代わりに構造体(struct)を使い、その型にメソッドを設けることで似たような振る舞いをさせる。 package main import "fmt" type Person struct { FirstName string LastName string } func (p *Person) Name() string { return p.FirstName + " " + p.LastName } func main() { person := &Person{"Taro", "Yamada"} fmt.Println(person.Name()) }
engineer at singularity 6 working on palia, @jordanorelli on twitter. • Ask me anything How to use interfaces in Go Before I started programming Go, I was doing most of my work with Python. As a Python programmer, I found that learning to use interfaces in Go was extremely difficult. That is, the basics were easy, and I knew how to use the interfaces in the standard library, but it took some pract
最近はgolangがアツいらしい。ちょうどRebuild: 15: After Google Reader, DIY Blogging, The Go language (typester)でtypesterさんがgolangについて触れていたのを聞いて、試しに触っていたがなかなか便利であることがわかった。 golangの印象としては go get、go runにgo build、そしてgo testが便利 go fmtのようなコード整形ツールがついてくるのは嬉しい (ただ、インデントがハードタブなのはちょっと時代遅れな気がする) 標準packageが充実しているのが頼もしい golangのマスコットキャラクターであるGopherがかわいい (Gopher人形欲しい) といった感じ。 ←かわいい golangの入門ということで、skkservを実装してみる。skkservというのは、ほとん
history 13/3/31 Tag について追加 intro Go を触ってて interface を用いた設計がまだまだよくわかってなかったので、一旦まとめることにしました。 Go には明示的な継承の機能は無く、 interface も例えば Java のそれとはかなり毛色が違うので、(Class ではなく) Struct の設計に結構癖があると感じます。 Go の interface は言語設計的にもかなり尖っていて、 Go という言語を強く特徴付けていると同時に、 Go 言語自体の開発者たちもこの機能をかなり重要視しています。 例えば、 Go の開発者の一人である Russ Cox 氏によれば Go's interfaces―static, checked at compile time, dynamic when asked for―are, for me, the most
http://da-data.blogspot.jp/2013/10/experience-with-epaxos-systems-research.html Go言語についての記事をまとめていて困るのが、特にHacker Newsでは熱狂的な賛成派と執拗な反対派が感情的に戦っていて、Go言語の何がいいのかはわかるが、まだ改善すべき余地のあることが実際どれほどの支障になるのかについては、議論からは判別しづらいことです。 カーネギーメロン大のDavid Andersonが、分散アルゴリズムEPaxosをGo言語でインプリしたときの経験について”Huge Positive” “It proved a huge win” としていながら、苦労したポイントを挙げています。このような具体的な事例がもった蓄積していくと参考になるのではないかと思います。 Go言語による開発で苦労したのは、Zookeep
画像周りの動作が意味不明かつ使い辛いので移転しました。 go言語のテスティングフレームワークについて — さにあらず
Sample code snippets of Golang(Go language). Go is a great language but it lacks sample codes. I hope this blog may be helpful to you. You can embed interfaces in a struct. package main import "fmt" type Mover interface { Move() } type Car struct { Mover } But, what is embedded interface? Let’s add some more fields to Car and print it with %v. type Car struct { price int Mover speed int } func mai
とりあえず issues 関連は出来てるので、これを使うコマンドラインプログラムを書いた。 $ go get github.com/mattn/go-redmine/godmine 名前は中二病っぽいけど「godmine」という名前にした。 使い方は、例えば issue の一覧であれば $ godmine issue list もしくは $ godmine i l issue の登録は $ godmine issue create "なんてこった" "大変だ!" みたいにするか $ godmine issue append で起動するテキストエディタ(環境変数EDITORを参照しunix改行コードが扱えるテキストエディタのみ使用可能)で ### Subject Here ### ### Description Here ### 上記の部分を書き換えて保存終了する。 設定ファイルは ~/.c
以前から携帯から IRC する手段として mobirc を使ってきたのだけど、使ってるサーバのリソースが少なすぎてちょくちょく困ってました。 「これ、Go言語で書いたらパフォーマンスも出るし、使用リソースも減るし万々歳じゃね?」というアホの一つ覚えみたいな動機で作り始めました。 mattn/gomirc - GitHub https://github.com/mattn/gomirc mobirc とほぼ同等の機能が動きます。 複数ネットワーク クリッカブルリンク 画像インライン表示 新着件数表示 ログイン機能 iPhoneビューも付いてます。 あと、バックログ機能が付いてましてサーバを再起動したい場合は CTRL-C すると backlog.json というファイルに最新100件のバックログが保存されます。 config.json は以下の様に記述します。 { "irc": [ { "n
はじめに こんにちは、Go界のジャック・ニコルソンです。連休最終日の10/14に日本マイクロソフトさんの品川オフィスをお借りしてGo Conference 2013 autumnを開催してきました。 Go Conference 2013 autumn - connpass GoCon/2013autumn.rst at master · GoCon/GoCon · GitHub 新幹線を使って参加された方もいて、大変うれしかったです。次回はまた半年後の春頃に開催したいと思っています。GoConでは絶賛発表者を募集しておりますので「何か作った」「突っ込んで調べてみた」という方がいたらご連絡ください。また次回もLTをしようと思うので、こちらはもっと気軽な感じで参加してみてください。 発表者スライド LT 植木とGo (@nuki_pon) Goでプログラミング言語(の途中まで)を作ろう (@e
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く