戻るボタンの実装方法

Androidで戻るボタン(BackKey)を押した際の挙動でハマったので、その実装方法を記載します。   [前提] 画面の作りは、Fragmentを利用。 Fragmentの切り替えは普通にこんな感じで実装。 mFragmentManager.beginTransaction()             .replace(R.id.container, myFragment).commit(); [ゴール] 戻るボタンを押した際に、一つ前のFragmentを再度表示したい。 [問題] 戻るボタンを押すとActivityがバックグラウンド実行状態に移行してしまう。(ホームボタンが押された時と同じ挙動をする。) [解決法] 1.BackStackへの追加 ネットで情報を調べて見ると、次のFragmentをcommitする前にBackStackへ現在のFragmentを追加する必要があるとのこと。 mFragmentManager.beginTransaction()             .addToBackStack(null) // ここでBackStackに追加している。             .replace(R.id.container, myFragment).commit(); これで解決するかと思ったが、以前として同じ挙動のまま。

phpフレームワークの選定

さくらインターネットさんでレンタルサーバーをお借りしてこのblogを作り始めました。 当初はblog中心だと思い、wordpressが動けばいいと思っていましたが、やはりウェブアプリを作りたい。   ウェブアプリ開発の定番といえばRuby on Rails。これを使いたいと思っていろいろ調べてみましたが、 ・レンタルサーバーのRubyはバージョンが1.8 →古い。1.9/2.0系との互換性が高くない。 ・gemによるインストール時にパーミッションエラーが発生する →共用サーバの制限上仕方ないか?方法を探すも、なかなか情報がないため諦めることに。   PHP フレームワークの人気度について調べてみたところ(http://www.sitepoint.com/best-php-frameworks-2014/)、最近はLaravelが25.85%と大人気のようです。 少し前まではCakePHPが流行っていたような印象でしたが、今では4.51%とかなり落ち込んでいることにびっくりしました。   ということで、Laravelについて今後blogでも取り上げていこうと思います。  

Javaで実践する契約プログラミング(Design By Contract/DbC)

一般的な契約プログラミングについてはWikipediaに記載がありますが、簡単に言うと、クライアント(メソッドのユーザ)とサプライヤー(メソッドの提供者)がそれぞれ守るべきことを定めるというものです。 あるメソッドを呼び出すときに、クライアント側は事前条件に定められたことを守り、サプライヤー側は事前条件が満たされているときに不変条件・事後条件が満たされていることを保証をします。 この方式を「具体的にJavaで実装するとこうなる」というものをまとめてみました。