タグ

2013年1月10日のブックマーク (4件)

  • オブジェクト指向プログラミングの教え方? | システム設計日記

    技術者仲間で話していたら、4月入社の新人に、オブジェクト指向プログラミングをどうやって教えたらよいか?、という話になった。 想定している言語は Java。 ■動物・犬・モデルの説明から ■基用語の説明から:「カプセル化とは」「継承とは」... ■サンプルコードから: System.out.println( "hello world" ) ... どのパターンでもうまくいかなかったので、今度の新人研修では何か工夫したいね、という話。 結論から言うと「これだ」というアイデアがでたわけではないが、話の内容は、いろいろ興味深かったのでメモ書き。 Java はオブジェクト指向の言語なの? Java は、ある意味 C言語の仲間。ある側面はほとんど同じ言語。 ・int, long (プリミティブなデータ型) ・配列操作 ・if/for/return ここだけ見れば、C言語のまま。つまり命令型、手続き

  • "set -e"に関するメモ - Shohei Yoshida's Diary

    シェルスクリプトで #!/bin/sh set -e とすると、コマンド実行時に戻り値が 0以外になれば即座に終了 するという便利な機能があります。しかし diffコマンドのように 戻り値 0は差分なし、1は差分あり、それ以外はエラーみたいな 感じで戻り値を利用されると、diffの部分で処理が終了してしまう という問題があります。 #!/bin/sh set -e diff test/old.txt test/new.txt > test.patch echo "finish" のような場合, diff自体は成功しますが、それ以降が実行されず "finish"と表示されないということが起きます。 解決方法 コマンドを ifや whileの条件として書くことで、この問題を回避できます。 #!/bin/sh set -e if diff test/old.txt test/new.txt >

    "set -e"に関するメモ - Shohei Yoshida's Diary
  • 最近のバイナリハッシングをいくつかJavaで実装してみた - rubyu's blog

    去年の終わりから、バイナリハッシングを使った近似近傍検索をいろいろ調べていたのですが、ぼちぼち一段落したので、ひと通りまとめておきます。 バイナリハッシングとは。 個の 次元の点からなるデータセット で、元空間での近傍点を、類似したバイナリコードに関連づける技術。 要するに、実数ベクトルの検索をマトモにやるには、最近のデータは膨大すぎるのでお手上げ。なので、元空間での距離をなるべく保ったまま、バイナリコードに落としましょう。 そうすると、バイナリ一致か、1ビット違うか、2ビット違うか...と、捜索していくにしても、元空間のデータでやるより高速で、しかもストレージ容量を削減できるというわけです。 その ビットのバイナリコード を作るために、 個のハッシュ関数が使われる。 ハッシュ関数は と定義される。ここで、 はデータセット。 は射影ベクトル。 は閾値。 線形写像ベースのハッシングはシンプル

    最近のバイナリハッシングをいくつかJavaで実装してみた - rubyu's blog
  • EU:米国流のITビジネスのやり方は今後通用しなくなるかもしれない-個人データ保護が更に強化される見通し - Cyberlaw

    下記の記事が出ている。 U.S. Tech Firms Facing Stronger European Data Protection Measures New York times: January 8, 2013 http://bits.blogs.nytimes.com/2013/01/08/u-s-tech-firms-facing-stronger-european-data-protection-measures/ Facebook, Google and Microsoft may face more data-use limits, EU lawmaker says Washington Post: January 9, 2013 http://www.washingtonpost.com/business/facebook-google-may-face-more-da

    EU:米国流のITビジネスのやり方は今後通用しなくなるかもしれない-個人データ保護が更に強化される見通し - Cyberlaw