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

時計を捨てて過ごしたい

空から10億円降ってくることを夢見ながらシステムエンジニアやってます。

デジゲー博2016行ってきました

気付けば2ヶ月以上放置していました。
家でプログラミングやらなくなったのは大きいなあ…。
デスクトップPCに買い替え&デュアルディスプレイ環境にしたい。

デジゲー博行った感想をかるーく話したいと思います。

続きを読む

漫画レビュー「伝説の勇者の婚活」

携帯からお試しで投稿してみます。
10分そこらで書ければ出勤退勤で1日2記事書けなくないのですが…。

続きを読む

5巻以内で連載中のオススメラブコメ漫画

エンジニアだし技術記事縛りにすべきかと思ってたんですが、
ネタ切れが早かったので、趣味の記事もバンバン書くことにしました。
無くは無いんですが、記事にする程かと言われると…な具合の内容なので。

ということで、今回は

  • 連載中である
  • 単行本の発売が5巻以内である
  • ブコメディ系統

に絞って漫画を紹介します。

続きを読む

本郷三丁目のボードゲームの交流会に参加してきました

(恐らく不要かと思われますが、一応交流会の名前は伏せます)
8/7(日)に本郷三丁目で開催された、ボードゲームの定期交流会に参加してきました。
その体験レポートを軽く書きたいと思います。

続きを読む

「それはオレの魚だ!」が予想外に面白かった

表面と裏面から「あまり面白く無さそうだ…」と思っていてスルーしていましたが、
実際遊んでみたらかなり盛り上がったので、ちょっと感想を語ります。

続きを読む

仕事中に音楽を聴くこと

実家の仙台に帰省中です。
こちらは昼はそれなりに暑いのですが、夜は冷房いらずでかなり快適です。
帰省中は都内のイベントに参加出来ないのが悲しい所ですが…。
夏コミに一度行ってみたかった。

続きを読む

初心者向けボードゲームのススメ

ボードゲーム未経験の知り合いと一緒にプレイしたボードゲームを紹介します。
ボードゲームに興味があるけど…」
「知り合いに布教したいけど…」
といった方への参考になれば幸いです。

続きを読む

いろんな書き方

    // Killer.kill(Survivor)で条件を満たす人間を殺す
    caseA()
    {
        Survivor survivor = new Survivor("alice", "bob", "carol");
        Killer killer = new Killer(str -> str.contains("c"));
        killer.kill(survivor);
    }

    // Survivor.killed(Killer)で条件を満たす人間が殺される
    caseB()
    {
        Survivor survivor = new Survivor("alice", "bob", "carol");
        Killer killer = new Killer(str -> str.contains("c"));
        survivor.killed(killer);

        assertThat(survivor.getSurvivors(), is(ImmutableList.of("bob")));
    }

    // Survivor.survival(Survivor, Killer)で生き残った生存者を持つ新たなSurvivorを作成する
    caseC()
    {
        Survivor survivor = new Survivor("alice", "bob", "carol");
        Killer killer = new Killer(str -> str.contains("c"));
        Survivor nextSurvivor = Survivor.survival(survivor, killer);
    }

Survivorは生存者の名前を保持し、Killerは条件を満たす(この場合は名前に"c"が含まれる)人間を殺す役割を持ちます。
とりあえず思いついた例を3つ挙げてみました。

この程度の前提条件でもいろんな書き方が出来るのがプログラミングの面白さだと思っています。

関数インターフェース

public class Main
{
    public interface Converter<T>
    {
        T convert(T target);
    }

    public static void main(String[] args)
    {
        Converter<String> converter = target -> "[" + target + "]";
        System.out.println(converter.convert("hoge"));
    }
}

そういえばこんな書き方出来るんでした。
最初見た時けっこう戸惑いました。