2009-01-01から1ヶ月間の記事一覧

ReturnとThrowの使い分け

いままで意識はしていなかったけど、クライアントに何かしらの反応を期待する場合はretuenを、クライアントに反応を期待しないですっ飛ばす場合にthrowを使うという風に使い分けているっぽい。なんで、この使い分けを前提にした場合はreturnとthrowのフロー…

れすぽんしびりてぃ

何らかの状態を残すと何故、SingleResponsibilityに反するのか、そこがよく理解できていません。 加えて、「ガード節による入れ子条件記述の置き換え」というリファクタリングを適用すると、 メソッドの動作仕様には変化ないのに、なぜ、SingleResponsibilit…

「コードで説明する」の一番単純なパターン

いまいち「コードで説明する」が理解されていない様なので単純な例で説明してみます。「コードで説明する」の目的は頭の中にかかるコストを低く抑えることです。 // コード1 if (x == a || x == b) {...} // コード2 someStateの中身はx == a || x == bと想…

カプセル化・情報隠蔽・データ抽象化

http://d.hatena.ne.jp/satoshis/20090126/p2うーん、「カプセル化・情報隠蔽・データ抽象化」の定義なんて見たことがないのですが、ソースがどこなのか気になりますね。Wikipedia:カプセル化Wikipediaだと「情報の隠蔽」じゃなくて「データの隠蔽」になって…

実際問題として

途中でreturnに頼らなくてもコードは書けて、困ることはない。 途中でreturnしてるせいでややこしすぎて困ったことがある。 だから途中でreturnしない。ってだけなんだけどね。自分か人が困るようなコードは僕の趣味じゃない。

途中でreturnの続き

http://d.hatena.ne.jp/Isoparametric/20090122/1232633359あー、やっぱり。予想通り「ながら」処理の典型的なのが出てきました。「ながら」処理というのは複数の事を一度に実行しようとする実装です。「ステータスを変更する必要があるかどうか?」を判断し…

メソッドの途中でreturnとか

ふつーに考えてリファクタリングトリガーでしょ。つまり良くないコードの典型。http://d.hatena.ne.jp/Isoparametric/20090121/1232545998Scalaだと再帰を多用するので複数のreturnを書いたりするけど、Javaだと1 Method 1 returnでやってる。途中でreturnし…

JavaDBのインストール先

いろんなサイトを見るとJDKのインストール先は"JDKのインストールディレクトリ/db"になってるけど、jdk1.6.0_11の下にはdbディレクトリがない。いつからかはわかないけど、"C:/Program Files/Sun/JavaDB"にインストールするようになったらしい。うーん、そん…

NTTの間抜けなDM

うちのアパートはどうやらマンションタイプのフレッツ光にしてるらしく、かなりの頻度でNTTからDMがやってくるんですが、これがすんごい間抜け。DMなのでアンケートやら申込用紙と返信用の封筒が同封されているんです。ここまではいい。問題は紙の方は普通に…

メイヤー本の続き

やっとで200ページを超えました。800ページって先が長すぎです(涙で、まだ途中なんですがオブジェクト=インスタンスなんて記述が出てきてちと引いてます。確かにインスタンスの無い世界がオブジェクトの世界じゃないってのには同意できるけど、オブジェク…

IntelliPointを入れてスクロールボタンを(間違って)押したら...

いきなり画面が切り替わってタスク選択画面に!重なってる画面も表示してくれるし選びやすくてかなり便利ですよ!タスクバーを消してしまうと何が不便ってタスクの切り替えがAlt+Tabだけになっちゃうんですが、上の機能を使うとかなり楽チンにタスクが切り替…

年末年始の成果。

年末年始は・・・クロノトリガーを途中までやって放置。IntelliJ IDEA試してみた。github使ってみた。IntelliJ IDEAはScalaサポートを期待して試してみたけど・・・エディタが行頭で←を押しても前の行末移動してくれないのが辛すぎて結局Eclipseでいいやって…