サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
パリ五輪
tetz42.hatenadiary.org
ふと、「Javaのinterfaceのメソッド起動は遅いかもしれない」と思って調べてみました。 まずは動作テスト メソッド起動よりループの方が遅いのか、普通にループさせてテストしても差がでませんでした。 なので、下記のようなテストコードを書いて検証。 ※ JVMは1.6.0_27でテストしました。 interface IFoo { void foo(); } abstract class AbstractFoo { public abstract void foo(); } class Foo extends AbstractFoo implements IFoo { @Override public void foo() {} } public class VirtualVSInterface { public static void main(String[] args) { // ↓
Singletonパターンってあるじゃないですか。 ↓みたいな感じのヤツ。 public class Singleton { private static final Singleton singleton = new Singleton(); public static Singleton getInstance() { return singleton; } private Singleton() { } } このSingletonパターンで、インスタンス生成時に例外が発生するケースについて考えてみたんですが、どうもよく分からなくなってきてしまいました。 とりあえず纏めて置きますので、分かる方がいたら突っ込みをお願いしたいと思います。 背景 例えば上の例で、コンストラクタを↓みたいに書き換えて、 private Singleton() { throw new RuntimeExcept
Google App Engineで何かと話題になってたランキング問題。 appengine ja night #8(ajn8)に参加された方ならご存知のように、既にid:koherentさんがSkiplistというアルゴリズムを使って解決しています。 参考:http://d.hatena.ne.jp/koherent/20100425/1272176872 そのほかにも、id:bufferingsさんの実装例もあります。 参考:http://d.hatena.ne.jp/bufferings/20100225/1267121912 id:bufferingsさんのとほぼ同じアイデアを自分でも思いついてたんで、ちょっとslim3使って実装してみました。 http://tetz-lab.appspot.com/ranking/ 事前に乱数で10万件の点数データを入れてあります。 って、何を今
2週間ほど前に、急遽SAStruts+Seasar2+S2JDBCの現場のヘルプに呼ばれました。 ところがテツさん、Seasar2はおろかDIコンテナ自体やったことなくて、大急ぎで勉強する羽目になりまして。 今も勉強しながら作業しているんですが、そんな中ふと「あれ、Slim3でもDIっぽく作れるのでは…?」という考えが浮かんできました。 思い立ったら早速検証! まずは、DI(Dependency Injection)についてのおさらい 例えばとあるメソッドを public int getCount(){ Foo foo = new Foo(); Bar bar = new Bar(); return foo.getCount() + bar.getCount(); } みたいに作ると、Foo#getCount()はDatastoreにアクセスしていて、Bar#getCount()はURLフ
このページを最初にブックマークしてみませんか?
『tetz42.hatenadiary.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く