prog
Revel で、どのパスにアクセスされても同じコントローラで対応する方法を試す。
Play Framework で、どのパスにアクセスされても同じコントローラで対応する方法を試す。
Revel の元ネタは Scala/Java 向け Web アプリケーションフレームワークである Play Framework なのだそうだ。 ということで Play Framework のプロジェクトも新規作成してみる。
メモ。
週末に、以下のような質問 (問題?) を受けた。 Java 8 で作った Web アプリがある。parallelStream を使って重い処理を並列で行えるよう実装していたが、起動してからしばらくすると (しばらくリクエストを受け付けると) アプリが固まることがわかった。アク…
予習と復習。
Spring Boot には、設定ファイルや環境変数から値を取得して、Bean にセットしてくれる便利機能がある。 が、マニュアル通りにやったつもりなのに値がセットされなくて、しばらくハマった。 原因は、setter を定義していなかったこと、だった。
ZeroMQ の The Guide に載っている Binary Star の Python 版サンプルコードを、Ruby に移植してみた。 移植というか、Ruby と ffi-rzmq の書き方にあわせて直したつもり程度なので、真の意味で Ruby 的かどうかは自信がない。
メモ。
メモ。
あるオブジェクトが GC で回収されるまで待つにはどうしたらいいのだろうか。 普通はそんなことしなくていいように書くのがベストだが、どうしても必要な場面というのもある。WeakReference を使った機能のテストケースを書きたい場合とか。
メモ。
FTP サーバと通信したいとき、Java と Perl だったらどっちが早いんだろう。
Perl では整数を扱うことができるが、とても大きな値 (あるいはとても小さな負の値) になると、自動的に浮動小数点数に切り替わる。 では、整数のまま扱える値の範囲はどこからどこまでなのか。
とある Linux の環境に、Perl 5.10.1 が入っている。ここにある Perl プログラムを入れようとして困った。cpan シェルを使って、Log::Dispatch と Log::Dispatch::FileRotate を入れようとしたら、エラーが起きてインストールできなかったからだ。
Java 7 で追加された try-with-resources は C# の using ステートメントに倣った構文だが、まったく同じというわけではない。 C# の using ステートメントは下記のページで説明されているように try/finally の糖衣構文であって、それ以上でもそれ以下でも…
Perl は幼児レベルしかわからないので、今日も人に質問されてわからなかった。 「サブルーチンに文字列を渡した後、サブルーチン内で substr を使って部分文字列を取得しようとしています。この場合、文字列をそのままサブルーチンに渡すのではなくリファレ…
Java の標準 API でよく知られている注意点のひとつに、「WeakReference 自体は強参照されるのでメモリリークしないように注意せよ」というのがある。 知っている人にとっては昔から既知の話題なんだけど、知らないと罠にはまってしまいがちなポイントでもあ…
ないわー。なんで Log4j 2.0 使ってないの?
以前の日記で TouchDevelop が Windows 8 に対応するようだ、と書いたけど、スマンありゃぁ間違いだった。www.toyfish.blog
Apache Commons IO は、入出力に関するユーティリティを集めたライブラリで、かつてに比べれば存在感が薄れているとはいえ、現在でも広く利用されている。 しかし、そんなライブラリの中にも、使用すべきでないものがある。closeQuietly という名前でオーバ…
以前の記事で「TouchDevelop の Windows 8 対応がいつ来てもおかしくない」と書いたが、どうやら現実になるようだ。www.toyfish.blog Microsoft Research が予告動画を公開している。なぜかスパイ大作戦的な BGM。 TouchDevelop - something new is coming h…
Windows Phone 7.5 では、Microsoft Research が公開している TouchDevelop というアプリで、「スマフォでお手軽プログラミング」ができる。Windows Phone の次期バージョンである Windows Phone 8 は、デスクトップ OS の Windows 8 と共通のカーネルを使う…
Java でファイルに書き込みを行う方法は、大きく分けて 2 つある。ひとつは java.io.FileOutputStream を使うもの、もうひとつは java.nio.FileChannel を使うものだ。 このうち、FileChannel は後から追加されたクラスであり、僕はなんとなく「性能を上げた…
ただの思いつきメモ。
例えば、Jenkins でテストが失敗して、原因がディスク空き容量不足だったとする。サーバ上で df コマンドを実行したくなるが、わざわざ ssh や telnet でサーバにログインするのはめんどくさい、という場合。 Jenkins の管理メニューからスクリプトコンソー…
10 月 26 日付で、Oracle サイトの下記ページが更新されていた。これによると、Java SE 7 は 2014 年 7 月に EOL、つまりサポート終了を迎えるようだ。 Oracle Java SE Support Roadmap http://www.oracle.com/technetwork/java/eol-135779.html [2012-03-04…
Java 7 では、入出力ストリームやDB接続のクローズを簡単・確実に行えるようにするために、ARM (Automatic Resource Management) が追加された。元ネタは C# の using ブロックと IDisposable インタフェースで、Java 独自の新発明というわけではないんだけ…
時々、「JDK サポート期間」とかで検索して、僕の書いた古い記事にたどり着いている人がいるようだ。でも、2008 年のものなので、今となっては情報が古すぎる (当時は、2008 年中に Java 7 が出ることになってた)。 僕自身も「あれ? 今はどうなってるんだっ…
IS12T で Marketplace をのぞいていたら、TouchDevelop というアプリがあった。端末上でプログラミングができる「てのひら開発環境」だ。 Microsoft の研究機関である Microsoft Research が開発したもので、スマートフォン上で動かすことを前提に、タッチパ…