golang で処理の高速化をするために goroutine/channel を使って並行処理にし、待ち時間を無駄にしないようにするのは言葉で表すのは簡単ですが、実際にパターンとして落としこむためには経験が必要だなと思うので、今回 Dispatcher-Worker として Job Queue を golang で実装する方法を紹介したいと思います。 この記事は mattn さんの Big Sky :: golang の channel を使ったテクニックあれこれ の次のステップとして読むことをオススメします。 mattn.kaoriya.net golang で作成したアプリケーションで多くのリクエストをアプリケーションが送受信する必要がある場合、高速に捌くために並行処理にして非同期化を図る場合を想定しています。 今回は get という関数でHTTPリクエストを実行して取得したデータのサ
Guavaのテストコードを読んでいたらTruthというtesting frameworkが使われていることに気づき、最新の個人プロジェクトで使ってみました。まだアルファ版ですし、自分でも使い続けるかどうか微妙なところですが、試用記録として利点をまとめます。 なお著者がアサーションフレームワークに求めるのは、大人数が関わるプロジェクトにおける「開発者の個性(経験、知識、趣味)に限らず、短時間で保守性が高く直感的なコード・エラーメッセージが書ける」ことです。異なる観点からこのプロダクトを見ると、また違った意見があるかと思います。 assertThat()が必要とされた理由 そもそもassertThat()はなぜ必要なのでしょうか。それはassertTrue(), assertFalse() などのメソッドが生むエラーメッセージが直感的でないからです。 Truthのウェブサイトにのっている例が非
備忘的なVimプラグイン入門。 最近やっとVim scriptを書き始めて、プラグインの形でもってGithubにて公開というところまで辿り着きました。 いろいろと足りない部分は多いんですが、それでも初のプラグインであり初のオープンソースです。 で、こういう「初めて」の頃の感覚や手順って、後々になると覚えていなかったりするのでまとめておきます。 プラグインのヘルプはまだ書いてないから、「出来上がって」はいないんですけどね。 事前準備 日本語版のヘルプを手に入れましょう。 ヘルプは必須です。これがなければ始まりません。 英語が読める人は英語でもいいと思いますが、ぼくはすらすら読めないので日本語版を入れています。 どこかで「日本語ヘルプが許されるのは初心者まで」というのを見た気がしますが、ぼくはまだ初心者なので問題ありません。 インストールにあたっては、今だとここが最新情報なのかな? HowTo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く