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

感情をぶつけると

感情が跳ね返る。それはリアルだろうが文章だろうが変わらない。

DOM Level 3

リリースされていたこと自体知らなかった。Document Object Model (DOM) Level 3 Core Specification Appendix G: Java Language Bindingシリアライズとデシリアライズにも対応していたのか。もうおなか一杯だな。

食品こそ

テストファースト、テストドリブンで作ってくれないかな。そうすれば過去に実施したはずの検査(今回は既に未認可の農薬)が漏れることなどはないと思うんだが。「薬くさい」に農薬検査せず=被害母子が食後指摘−中国製冷凍ギョーザ問題・生協追記: 食味検査は…

CookieHandler.getDefault()

Java 6では(正確にはJavaSE5以降)Cookieのサポートが改善されてアプレット(プラグイン上)又はJava Web Startでは、表題のメソッドで取得できるハンドラを使ってIEやMozira等のWebブラウザがサポートする持続、又はセッションクッキーを取得、設定することが…

コンポーネントをフォーカス遷移順に並べる

バリデーションネタ。 JFlame上のGUIコンポーネントに関してバリデーションを実施する場合、以下の2通りで実施する必要がある。 個々のGUIに対して行うバリデーション JFlame上の全てのGUIに対して行うバリデーション 前者はフォーカスの遷移やキーストロー…

作譜とプログラミング

作譜という言葉そのものをプログラミングと同じ意味で使ったりするが、楽曲のスコアを書く作業ってのはもろプログラミングだよな。 ノーテーションが決まっている ある程度適当に書いても動いてしまう よく使うパターンがある 時間軸に対して並列で動く 長け…

JTable - セルレンダラに依存せずセルの色設定を行う

JTableはセルの描画の諸元をテーブルセルレンダラ(以降セルレンダラ)に任せており、通常はJTableに設定されたテーブルモデル(AbstractTableModel)が扱う型によって内部でデフォルトのセルレンダラが使用される。よって、セルの描画をカスタマイズする場合の…

UIDefaults

自分でGUIを設定、描画する際、例えば色を設定する場合はその絶対値を指定してしまうとルックアンドフィールの変更に対応できなくなってしまうので、UIManagerを通して取得したシステム値(というか、スタイル/テーマといった方が解りやすいか)値をセットして…

TableCellEditorのバリデーションとイベント

例えばJTextFieldやJComboBox等の文字列を入力することのできるコンポーネントの場合であれば、バリデーションを実施するのはフォーカスの遷移時と、データがキーボード等で入力される時である。それぞれ、FocusListener、KeyListenerのイベント通知か、Docu…

RMIで公開されたオブジェクトが破棄される時を知る

先日書いたエントリRMIでいいじゃないかは、たくさんのブックマーク登録を頂いたようでちょっとびっくりしている。 これは温故知新ということもあろうが、それよりもRMIの最新の仕様に関して、私も含めて知らなかった開発者が多いことの証明でもあったのでは…

JTableとオリジン

JTableのセル座標系のAPIは(行、列)であり(Row, Col)となる。Microsoft系は伝統的に(Col, Row)なので、判っていても混乱する。 まあ慣れの問題なのだが、何故差異が出るのだろう。ベクトルなら{行:列}であり、そこからきているのか? でも表ならば「列:行」だ…

というよりは..霰に近いかな。お陰で濡れずに済んだけど。 って、明るくなったら雨に変わると思いきや雪本降りになってるし。こりゃJRとか遅れるぞ。関東在住の通勤の方はいつもよりもお早めに家を出ることをお勧めします。(ってここで書いても意味ないか)

RMIでいいじゃないか

ここで何度も採り上げてきた話題として、複数のクライアントアプリケーション間でオブジェクトを共有するという要件があった。C#では.NET Remotingで書いていた機能をJavaでどう実現するかというのが肝だった。以前には同様にRMIで実装するつもりでいたが、…

CookieサポートとJSDKドキュメント

J2SE5からブラウザに依存した持続Cookieのサポートが追加されているなんて、全然知らなかった。 なので配備ガイドとともにメモ。Java 配備ガイド - Java 6 ドキュメント cookie サポート - Java 配備ガイド - Java 6 ドキュメント相変わらずUTF-8エンコーデ…

GC

-XX:+PrintGCTimeStamps -XX:+PrintGCDetails -verbose:gc何故だかしらんが、OLDとPerm領域のチェックをする羽目に..

今日は

雪降るかなぁ。と思ったら予報は変わって今日は曇りか。でも寒い。

IMEで変換中の文字か否かを判断する

GUIにおいて入力可能なコンポーネントで桁数制限をかけたり、桁数到達を判定したり、クリップボードからの文字貼付けを監視したりするのは常套の実装であり、C#ではKeyPressイベントの捕捉とネィティブウインドウによる特定のメッセージ捕捉で実現していた。…

Nimbus Look-and Feel

Java SE 6 Update N(元のConsumer JREプロジェクト)で導入される新しいルックアンドフィールである"Nimbus"を試してみた。 Nimbus - A New Look-and-Feel for Swing以下、アプリケーションのルックアンドフィールを "Windows" -> "Metal" -> "Nimbus"と変え…

com.sun.management.jmxremote

jconsoleからローカル(同一のPC)javaアプリケーションにアタッチする実験をしていたのだが、会社のPC(Windows XP)では出来ていたはずのアタッチが自宅のPC(Windows Vista)ではできない。(jconsoleのJVMの一覧には列挙されるが接続すると永久に待ち状態)最初…

禁煙3年目前

煙草吸わなくなってもうすぐ3年になる。健康に良いしお金の減りも鈍くなるしで良いこと尽くめだが、唯一つ困ったことがある。 喫煙していた時と違い定期的に席を立たなくなったためついつい仕事の根を詰めてしまうのか、最近肩凝りが酷いのである。あまりに…

ClientProperty

最近は文句ばかり書いているが別にSwingの全てが気に入らないわけではない。完成度が高いだけに、設計の古さや、複雑さなどのちょっとした所が気になるのだ。例えばJComponentクラスのClientPropertyが何気に便利だ。これは内部に持っているテーブル(正確に…

Sun to Acquire MySQL

Sun to Acquire MySQL SunがMySQLを買収!。びっくり。

EventListenerList

レベルの低い話。 異種のイベントリスナを格納できるリストとして用意されている表題のクラスだが、使い方を誤解してやらかした。 protected EventListenerList listenerList = new EventListenerList(); public void addValidationListener(IFooEventListen…

界面と表層

まず1つは、異なる界面をリファレンスのフラットな空間に配置していることが問題に見える。これはパッケージの使い方の問題だ。そこで、界面を分離する。 Javaのメタプログラミング - L'eclat des jours 丁度今、私自身がSwingを俯瞰していることもあり、激…

寒ぅぅぅ

今朝は耳がちぎれそうだぞ。

書式引数

JSDK1.4以前はMessageFormatクラスを使うしか無かったのだが、C#と同様にStringクラスからスタティックに呼ぶことのできる同名の書式化メソッドが出来たからもう大変。序数の規定の指定がそれぞれMessageFormat.format ...{0}, {1},,, String.format ...%1$s…

Windows XP

PC

をインストールしているPC(DELL PRECISION)には Service Pack 3 RCをインストールしたが、目下のところ非常に安定している。何度か日記で書いてきたが、何年も私を悩ませてきた、アプリケーションウインドウがが最前面に出てくる際に再描画でO/Sごと固まると…

使ってみて判ること

C#とJavaは似たような物だと思っていたが、実際にそれぞれを使ってソフトウェアを書くことをある程度経験してみると、似ていると思っていた両者はかなり違いがあることが判る。そして、その違いを実感できるのは両方を実際に使ったからこそだ。こればかりは…

会議にノートPCを持ち込む奴

の多くは会議の議題とは関係ないことをしていることに気がついた。※ 最初は議事録を書いているのかと思ったが、議事録を書いている人が何人もいる訳が無い。 メールの返事書き 商談情報の閲覧 他の会議のための準備 会議中、自分が発言する場以外は皆PCを見…

We are the Robot

JavaにはRobotクラスというキーボードやマウスオペレーションを人間の代わりに実行してくれるクラスがある。本来はテストの自動化のために用意されたらしいのだが、非常に便利なのでそれだけの用途では勿体無い。例えばWindowsのクリップボード操作(切り取り…