2007-01-01から1年間の記事一覧

Tortoise

便利だがアンインストールすることにした。 今ひとつ不安定なことと、エクスプローラやFileVisorでSVN管理されている深いフォルダ階層を開く際に待たされる時間が当社比体感100倍位なのが我慢できなかった。 なんだかんだいってJavaもC#もEclipseのSubversiv…

代替困難

現状判っている、.NETからJavaへの移植で困難になるだろうと思っているのは以下の2点。 プロセス間通信 クライアントデータ(オブジェクト)の共有 いずれもプロセス間での話なのでJavaの場合はJVM間ということになる。 実装してもいないのに困っているという…

Cannot create a generic array of T

public interface IPredicate { boolean evaluate(T input); } public static final T findAll(T[] array , IPredicate match) { ArrayList temp = new ArrayList(); for (T t : array) { if ( match.evaluate(t) ){ temp.add(t); } } × T[] result = new T[…

ジェネレータとジェネリクス

プロパティ構文なんていらないから、中途半端なJavaのジェネリクスをなんとかしてほしいな。私は恥ずかしながら.NETで初めてジェネリクスを使ったのだが、最初はパラメタライズされた型というのがなんとも解らなかったが、慣れるとこれほど便利なものもない…

But Not for Me

But Not for Meが聞きたい。 My Favorite Things - John Coltrane(Atlantic ) Ahmad Jamal at the Pershing: But Not for Me(MCA) 何故聞きたいのかが解らないのだが、聞きたいのだ。

SendMessage後のWin32LastError

WM_COPYDATAを扱うために、C#で以下のようなコードを書いているのだが最後のMarshal.GetLastWin32Error()の戻り値がが0x00000002とか0x00000005で戻るケースが発生していることに最近気が付いた。 [DllImport("user32", CharSet = CharSet.Auto, SetLastErro…

24Hルール

開発者として自らに課しているルールの一つに「24Hルール」というのがある。これは、拙作のソフトウェアを使っているプロジェクトのプログラマからバグ(と思われる現象)を報告された場合、どんなに忙しくても一日以内にアクションを起こす、というものだ。大…

java.util.loggingで採取するログの書式を変更する

java.util.loggingで採取するログの書式はlog4jのように設定ファイルに書式文字列を書くのとは違い、フォーマッタクラスを使用する。 フォーマッタクラスは通常$JAVA_HOME/jre/libの下に存在するプロパティファイル"logging.properties"に記述する。(Javaオ…

泣いたら負け

Animal Crossing Is Tragic - YTMND(音楽付き) どうぶつの森をプレイし続けたお母さん(漫画/邦訳)- Game*Spark

java.util.logging

JSDK1.4から追加されたこのパッケージ、実は使うのが始めてだったりする。対象としているSwingアプリケーションではlog4jを使うのは止めようとしているのだが、そうなると使うのはこれしかないよな。 設定をどこから読み取らなければならないのか、こんなこ…

何が嬉しいかって

.NETでもVisual Studio 2008からはそうなるらしいが、Javaに戻って有り難いと感じるのは好きなときにSDKのソースコードを読んで、デバッグできることだ。これほどためになることもない。

Eclipse vs NetBeans

NetBeansも随分と使いやすくなったもんだと喜んでいたのもつかの間、ちょっとコードを書き始めればやはりエディタ部分はまだまだEclipseのほうが使いやすい。また、Windows上での文字の見易さで言えばEclipseは圧倒的だ。 Eclipse 3.3 NetBeans 6.0Rc1 両者…

面倒な部分

ロジック自体は内容を確認した上でJavaでどのように実現するかを考えながら書き直すので仕方が無い(というか、これはリファクタリングにもなる意義のある作業だ)が、関係の無い部分、特にコメント等をいちいち書き直していくのが意外に面倒だ。 JavaからC#へ…

損した気分

前にC#ネタでジェネリクスの型パラメタだけが違うクローズ型のスタティックフィールドは共有されるのかという内容のエントリを書いたが、Javaでは期待通りの結果にならないので注意が必要だ。前回のエントリのサンプルコードをJava用に書き換えてみる。 publ…

得した気分

C#で書いたクラスをJavaに書き換えている最中だが、 StringBuilder sb = new StringBuilder(); これはJavaでもそのまま通るのだった。クラス StringBuilder - JavaTM 2 PlatformStandard Ed. 5.0J2SE5からはJavaにも加えられたこのクラスはStringBufferの非…

時が解決すること

Javaでの開発に際していろいろと前向きな事を書いたが、開発の主体が.NETからJavaに戻った時、一番最初に思ったことは ああ...XMLのパースに何使おうかな であった。Javaでサーバサイドの開発をしていた頃はパーサの主流はDOMかSAXだったが、DOMはやたらとメ…

中途半端

に似ていると混乱の元だ。前にも書いた記憶があるが、ジェネリックなメソッドの戻り値の型制約、C#では //C# T Method() where T : MyClass { } だが、Javaではこう書く。 //Java T method() { } 同じ意味なんだけどな。あと、Javaではジェネリクス型は内部…

たかが順序、されど順序

interface A { getA(); setA(A a); getB(); setB(B b); getC(); setC(C c); } このようなインタフェースがあったとして、Eclipse3.3で新たにクラスを生成した後に「実装されていないメソッドを追加」すると、実装されたメソッドの並びは次のようになってしま…

準備

.NET WindowsForms用に書いたフレームワークをポーティングするに当たって、Javaの環境に幾つか新しいものを加えることにした。 NetBeans IDE 6.0 同IDE、6.0ではGUIビルダであるMatissetが新たなレイアウタであるJ2SE6のGroupLayoutを駆使するようになった…

気分一新

そもそもこの日記の題は、その時の仕事の都合で筆者がJavaと.NETの間を振り回される様からつけたものだが、どうやら次は暫くJavaの仕事になりそうだ。今までは.NETそれもWindowsForms用のフレームワークを書いてきたが、今書いているDAOを一区切りとして、今…

イベントドリブンの落とし穴

WPFは知らんが、WindowsFormで一番やっかいなバグの原因の一つがこれだ。 主にコントロールが持つ振舞いとWindows Messageの仕様によって、プログラマの意図しない順序でイベントが発生してアプリケーションが予想しない動作をしたり、再現困難な異常動作を…

天体望遠鏡

昨日、今日のような綺麗な星空を見ていると欲しくなる。と同時に今住んでいる所では周りが明るすぎて星を見るには適さないということも痛感。 わざわざ寒い中、車を飛ばして山へ星を見に行く人々の気持ちが少し解る。

DAOで使うカスタム属性(その2)

[HasMany] - 1:Nのリレーションを宣言やはりこれは止めようかな。一回のクエリで取得する結果セットの構造を変える(マージ)必要があるしな。

星空

昨日の夜は雨がしこたま降ったせいか、空気が澄んで早朝は満天の星空だった。気分いいなぁ。

DAOで使うカスタム属性(アノテーション)

途中、何度も「S2.DAOを使えばいいじゃない」という誘惑が入るがめげずに実装中。今まで独自で書いてきただけに、一箇所だけS2ファミリを使う訳にはいかないのだ。(ちょっとだけ後悔している)[Entity] - エンティティを宣言 [Column] - DBの列(カラム)を宣言…

プロパティの適所

アクセサ以外のプロパティは必要か少し考えてみたが、私が最近あまり必要と感じていなかったのはコンポーネント、特にデザイナでポトペタするGUIコンポーネントを書くことが無かったからだろう。コンポーネントを簡単に書けるのはプロパティに因るところが大…

殺到

ワンセグ受信アダプタ DSテレビ - NITENDO DS申し込みが殺到したため、11/20発売分の申し込みは締め切ったそうだ。むべかるかな。

限定的な販売サイトにおける過負荷対策

予定されていた予約販売が先日始まった。 ワンセグ受信アダプタ DSテレビ - NITENDO DS上記リンクから飛べる販売サイトは、そのURLとエラーページからして恐らくは「Apache + Tomcat + Struts(?)」で構築されたと思われるのだが、面白かったのが過負荷時の…

アクセサ以外のプロパティは必要か

Delphiでその便利さに驚き、Javaで提供されていないことを嘆き、C#で使えることに感激したプロパティ(Property)だが、C#でプログラミングする場合、最近ではフィールドをカプセル化するためのアクセサにしかプロパティを使おうとしない自分がいる。プロパテ…

降臨

先日は柴田芳樹氏の書籍に関して言及したのだが、先ほどご本人からコメントを頂いた。 コメントの時間を見るとやはり早朝であったので、相変わらず早起きを徹底されているのだろう。