【レポート】
JavaOne TokyoのDay-0、Javaデベロッパにはおなじみの稚内北星学園大学 丸山不二雄氏が提供する「丸山先生レクチャーシリーズ」が開かれた。この最後に「定時退社のためにJava」という一風変わった名前のセッションが開かれ、米Sun Microsystems Technical Stuffの川口耕介氏が、デベロッパはいかにして幸せになるべきか、などについて語った。
川口氏もまた、Javaコミュニティには有名だろう。2005年度未踏ソフトウェア創造事業(いわゆる未踏ユース)において、筧捷彦PMにより川口氏の「スレッド冬眠技術を利用したイベント駆動によらないワークフローエンジンの開発」というプロジェクトが採択されている。また、Hudson、com4j、parse-ipr、parse-dot-classpath、args4jといったオープンソースソフトウェアの開発も行う。parse-dot-classpathやargs4jなどは実際に使っているデベロッパも多いのではないだろうか? 筆者もparse-iprとargs4jは頻繁に使用しており、手放せないコンポーネントのひとつだ。
さて、今回のセッションではJava開発において、いかに自動化を進めるか、デベロッパの手間をいかに減らすか、そしてこれらを実現するためにはどういった心がけが必要かについて語られた。
川口氏が「だめな例」として挙げたのは例えば以下のような状態だ
これらはそれぞれ貴重な時間を無駄にする例だという。もしこういうことをしているのであれば川口氏は「責任を転嫁する」「とにかく楽をする」ように心がけることで改善するべきとする。
たとえば、コーディング中のタイプミスなどにより、コンパイルして実行するとランタイムからエラーが吐かれたとする。しかし、こういったエラーは大概において何が原因でエラーになったのか的確に示していない。結局Googleなどでエラーを検索することで解決をはかるわけだが、同氏はこれが多大な時間の無駄だと指摘する。では、どうするべきかというと「動かないのは自分のタイプミスのせいではなく、JREのエラー文が的確ではないからだ」と責任を転嫁して、要求をJREのバグとしてファイルすべきという。こうすれば、自分だけでなく他人も後で楽をすることができるというわけだ。
同様のことが例えばAntを使ったビルドにおいてターゲット名を間違えてタイプしたときにもいえる。この場合はzshなどAntターゲットを補完してくれるシェルを使えばよい。「動かないのは自分のタイプミスのせいではない。タイプミスを指摘して直してくれない環境がわるい」というわけだ。
|
|
zshはAntターゲットなど入力の多くを補完してくれる |
汎用化も重要だという。コーディングでソースコードをコピーするというのは同じ実装を何度も行っているということになる。その実装をユーティリティクラスなどに汎用化することで省力化できるわけだ。
川口氏はこういった気持ちで無駄を省いているという。実際に上に挙げた同氏のプロジェクトでは省力化が多く図られている。ソースコードは公開されているので、是非ダウンロードして研究してみたい。会場の聴衆に対しても「時々立ち止まって考えよう」と、省力化を呼びかけていた。
| マイナビ、3月より書籍連動型のクリエイティブ・デザイン系セミナー開講 [12:00 2/10] |
| Linux Mint 12 KDE登場 [10:26 2/10] |
| Dell、重複排除により最大98%のデータ削減が可能なバックアップストレージを発売 [09:44 2/10] |
| 北大、「ポジトロン断層撮影法」による脳腫瘍の性質を診断する手法を開発 [09:40 2/10] |
| NICTなど、手術支援ロボット「da Vinci」の3D裸眼映像伝送実証実験を計画 [09:36 2/10] |
|
TVウォッチャーの芸能まるごと1週間 - メイサ&赤西結婚、花子妊娠に沸いた [17:10 2/10] エンタメ |
|
竹達彩奈、デビューシングル「Sinfonia! Sinfonia!!!」を4/11にリリース [17:02 2/10] ホビー |
|
一緒に住むのをためらってしまう相手のクセとは? [17:00 2/10] キャリア |
|
日産、スカイラインクーペ特別仕様車「55th Limited」を55台限定発売 [16:54 2/10] ライフ |
|
Behringer、「XENYX iX」シリーズにiPad用Dock搭載の3モデルを追加 [16:51 2/10] クリエイティブ |