Thursday, November 24, 2011 3:37:48 PM
Java, Excel
オリジナルのフレームワークと、オリジナルのソース生成ツールの続きです。
今回は、どちらかというとフレームワークによる制約についてです。
利用できないクラス … JDK のクラス全部。
フレームワークで String・Integer といった値クラスの独自版を定義していて、それを使いなさいという話(フレームワーク外の変数は、プリミティブの int と boolean だけが作れます)。そのくせ、独自クラスのメソッドには、独自Integer ではなく int を扱いものがあったりして、ツール上に書く「処理内容」に独自Integer と int との相互変換がたびたび発生してます。
文字列リテラルはツール上の「処理内容」に書くことはできますが、ソース生成時に独自String への変換メソッドに囲まれて出てきます。。。
ちなみに、この独自クラス群、すべてインターフェースと実装クラスに分かれていて、表向き「実装を差し替えられる」ようになっていたりします。DI コンポーネント群ならまだしも、値クラスの差し替えが必要になる状況って・・・?
Tuesday, November 8, 2011 4:41:02 PM
Excel, Java
前のエントリで「北府中」と書きましたが、2月からの大炎上プロジェクトは9月1日に離脱して、いまは北府中で別のプロジェクトに関わってます。
入ったときの工程は外部設計の終了間近で、10月から内部設計~単体試験を順々にこなしていってます。
・・・1ヶ月ちょっとたって炎上の予感がします。いろんな意味で。
今回のプロジェクトは、(どっかで見たことのある)「自働化」をコンセプトにあげていて、Java だけれど自前で Java を書くなというスタンス。オレオレ感のあるフレームワークと、Excel VBA ベースのツールから Java コードを出して、原則それに手を加えることなく、Eclipse のプロジェクトに登録すれば、情報システムが完成!! という代物です。
そして、いつものうたい文句:「コードの品質をそろえることができます!!」「Java の知識がなくても、開発をすることができます!!」
代わりに、Java (に限らず、プログラミング全般)の知識がある人にとっては、拷問級のツールを使わされることになりました。
いろいろビックリ仰天な制約があって、書き出したらすごく長くなってしまったので、小出しにします。1つめは・・・Excel VBA に詳しい人は「そうだよなぁ」って言いたくなる制約。
ツールから Java コードを出す、といっても結局オレオレ言語のコードを Excel 上に書いているに過ぎません。だだ少し賢く(!?)て、オレオレ言語のコードを入力したそばから、コード中のエラーを赤字にしたり、正常の場合は右隣のセルに、コードを日本語化した文字列を書き込むようになってます。Excel VBA では、Range オブジェクトの更新系処理を呼ぶと Undo バッファがクリアされるので、結果的に・・・
ツール使用中はUndo ができないという、すごい仕様になってます・・・。
オレオレ言語のメソッド呼び出しの引数を、1つのセルに改行区切りで全部書き込む・・・というところもあり、すごく神経使います。
Wednesday, September 21, 2011 9:58:00 AM
東京メトロの氷川台で台風通過待ち・・・。
「15:00に帰れ」命令が発令され、
15:20分ごろに北府中駅に着いた途端に、
「北朝霞~西浦和間で風速が規制値を超えた」と武蔵野線が止まり、
「一本だけ西国分寺まで走らせる」と聞いてホームに下り、
西国分寺→新宿→新宿三丁目まで来て、
「和光市からならタクシーでもいいかな」と思っていた矢先、
氷川台で力尽きた感じです。。。
とうでもいいですが、
「当駅で台風の通過を待ちます」
「台風が遅れてます、今秩父を出発したとのことです」
みたいな放送してくれると、急行待ちみたいで面白そうだなと。。。
・・・暇です。。。
Saturday, March 26, 2011 4:35:00 PM
仕事がハマってます。
豊洲の仕事が一段落して(いない気もする)、2月から武蔵中原で大炎上している仕事に加わりました。
参画当初はバグを出しまくる方の人になり、1ヶ月ほどでバグを直す人に回るという、いつもどおり(?)火消しの法則が発動し、「がっつり書き換えたい」欲を押さえながら修正してます。
ハマりの王道、「仕様が文書化されていない」をやらかしてしまっていて、設計書はあるけれどもその妥当性を判断できるのがほんの一握り(人数比で2.5%くらい)という状態。
ただこれは序の口で、今回一番失敗していると思ったのは、ソフトウェアアーキテクチャとかコーディングポリシーとかいった部分。
対外的にはリッチクライアントといっているらしいですが、作ってる方から見るとただの C/S で、
- 画面: C#, .NET Framework 3.5
- サーバ: Java SE 6, TERASOLUNA for Rich
- DB: Oracle (そういえばバージョン聞いてない…)
という構成。
サーバ側は XMLHTTP を受けてビジネスロジックを回して DB をいじくるだけなので、そんなに難しくなく(といっても言いたいことはたくさんあるんですが)、問題は画面側。
1つの画面に項目を詰め込みすぎてイベントハンドラが多いのにも関わらず、各ハンドラ内で他項目の表示/非表示制御・有効/無効制御をしてしまっていて、複雑かつバギーなコードができあがってます。ある画面は結合試験2ヶ月やってても未だにバグが収束してなく、、、自分も見る羽目になり、、、そのために土日返上です。。。
Thursday, November 11, 2010 4:51:33 PM
12月5日に「2010 東武ファンフェスタ」をやるらしいです。その中に気になる一言が。
また車両撮影会では,鉄道ファンに大人気の日光線特急「スペーシア」車両や丸形前照灯の通勤車両(8000系8111編成)なども展示します.
8111F を南栗橋に展示!?
・・・ということは、その何日か前には、秩父鉄道を経由して回送されて、でもって、その後東上線に帰ってくることはない!?
・・・と思ってた矢先、志木降りたときに、翌朝の始発小川町行きとして留置しているのが 8111F ってことに気づいて、Galaxy S のカメラで撮ってみました。

カメラ初起動でズームアウトの仕方がわからずに焦って、ちょっと構図がおかしくなってしまいました...。ボリュームキーでズームイン/アウトできることを知ったのは、これを撮ってから約30分後... orz