┏━━━━━━━━━━━━━━━━━━━━━━━━━━■
┃ ■┃
●┃● ● オ ブ ジ ェ ク ト 倶 楽 部 ■ ┃
┃ ■ ┃
┗━━━━━━━━━━━━━━━━━━━━━━■━━━┛
No.112 2005/10/12
■ I N D E X
┃
┣【Topics】新JUDEコミュニティサイトのドメイン名投票のお願い
┣【お知らせ】オブジェクト倶楽部イベント開催決定!
┣【設計】ソフトウェアのお言葉[9] - 机上デバッグ
┗【アンケート】気になるシステム業界 ホントのところ
〇━━━━━━━━━━━━━━━━━━━━━━━━━━━T o p i c s━
〇 新JUDEコミュニティサイトのドメイン名投票のお願い
〇 〇━━━━━━━━━━━━━ ━━・
この度、JUDEユーザーの皆様が利用できるコミュニティサイトを立ち上げるこ
とになりました。そこでなんと、ドメイン名を皆様の投票で決定します!
ぜひあなたの一票をお願いします。
投票期間:10月12〜18日
http://www.ObjectClub.jp/community/JUDE/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━1 s t ■━
■
┗【お知らせ】オブジェクト倶楽部イベント開催決定!
「オブジェクト指向」をソフトウェア開発に採用する事は、もはや特別な選択
ではなくなっています。しかし「オブジェクト指向」を採用するだけで、ソフ
トウェア開発の成功率は高くなるのでしょうか。プロジェクトを成功させるた
めには、「オブジェクト指向」だけではなく、いくつかの「成功のカギ」が必
要なのではないでしょうか。
「プロジェクト・マネジメント」、「開発プロセス」、「技術者の教育」、
「顧客との意志疎通」、「ファシリテーション」などなど。
5回目を迎える今回のオブジェクト倶楽部イベントのテーマは、「プロジェクト
を成功させる7つのカギ」です。実際にプロジェクトを成功に導いた「カギ」を
参加者全員で共有していく事を目的としています。
今回のイベントでは、みなさんの成功体験を参加者全員で共有するために、新
しい情報共有方法を用いることも検討しております。
ご参加いただいた皆さんが、成功への多くのカギ束をポケットに持ち帰る、そ
んなイベントになるよう企画を練っております。ご期待下さい。
日時:2005年12月16日(金)
場所:国立オリンピック記念青少年総合センター http://www.nyc.go.jp/
参照:http://www.ObjectClub.jp/event/2005christmas/
詳細は、追ってご紹介いたします。(オブジェクト倶楽部運営事務局)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━2 n d ■━
■
┗【設計】ソフトウェアのお言葉[9] - 机上デバッグ
こんにちは、天野勝です。
今回のお言葉は「机上デバッグ」です。テスト駆動開発(TDD)に対する意見に
「ソースコードをじっくり眺めないで、本当に理解しているのか」「昔はソー
スコードを印刷して動きを追ったのに、それをしないのはけしからん」「そん
なにエラーを出して、どうやってエラー数をカウントするのか」というのをよ
く耳にします。その意見の裏には「机上デバッグという文化がないがしろにさ
れてきていることへの憂い」が隠れているように感じられます。「机上デバッ
グ」というこのお言葉を、今回も筆者の独断と偏見で、解釈、解説してみます。
○机上デバッグとは
話をすすめる前に、まずは言葉の定義をさせてください。本稿では「机上デバッ
グ」という言葉を、印刷されたソースコードを机の上に広げ、プログラムの動
きをソースコード上で追いかけながらバグを見つけて、修正案を検討すること
と定義します。一人で作業するか、複数人で作業するかは問いませんが、設計
書に含まれるバグを追跡するのは、範囲外とします。
なお、机上デバッグに対する言葉は、「マシンデバッグ」です。
○なぜ机上デバッグを推すのか
机上デバッグを推す人の、代表的な意見を挙げてみます。
(1)今までと違った視点でソースコードを見ることができる
(2)ソースコードを追うのが楽。ディスプレイは小さい
(3)むやみにコンパイルしないで落ち着いて考えられる
(4)勉強になる
他にもいろいろな意見があると思いますが、これら4つについて、その効果を考
察してみます。
○机上デバッグは有効か
「今までと違った視点でソースコードを見ることができる」については、確か
に効果はあると思います。たとえば、ディスプレイのフォントと、印刷のフォン
トが異なると、それだけで見え方が違って、バグを発見できることがあります。
その昔、全角の文字幅が、ディスプレイ上では半角2文字分、プリンタでは半角
1.5文字分になるという環境がありました。その環境で印刷したときのずれによっ
て、全角スペースが入り込んでしまっていたのを発見できたこともあります。
余談ですが、ソースコードの印刷を待っている間にバグの原因に気づいたこと
もあります。ぼーっとした瞬間に、ふと解決策を思いつくことってありますよ
ね。煮詰まったら、気分転換をするというのは有効な方法ですね。
「ソースコードを追うのが楽。ディスプレイは小さい」についても、一理ある
と思います。が、最近この意見には疑問を感じるようになってきています。最
近は、ディスプレイの解像度も上がり、それなりに画面も広くなってきました。
紙に印刷したソースコードと比べれば一度に見渡せる範囲は狭いでしょうが、
筆者は充分な広さになっていると思います。それでも狭いというならば、プロ
グラムのつくりに問題があるのではないでしょうか。メソッドがむやみ大きく、
それにともないローカル変数でありながら、スコープが広くなっていないでしょ
うか。呼び出し先が、処理のイメージがつかないような名前になっているのか
もしれません。
また、エディタの機能が向上してきているので、その力を活用しない手はあり
ません。膨大な紙の山から呼び出し先を見つけるのは一苦労ですが、エディタ
の機能を使えば検索も簡単ですし、リファクタリング機能を活用して、理解し
やすいコードにするのも、さほど苦にはならなくなってきています。
「むやみにコンパイルしないで落ち着いて考えられる」については、一長一短
でしょう。確かにコンパイル、実行、コンパイル、実行と繰り返していると、
あまり考えていない場合もあるかもしれません。だからといって、机上デバッ
グをしていても、考える時間を取れているかは分かりません。「ソースコード
を追うのが楽。ディスプレイは小さい」とも関連しますが、コンピュータを活
用すれば楽にできるようなことに、時間をかけているだけかもしれません。積
極的にCPUをデバッグに参加させましょう。
「勉強になる」も、その効果はあると思います。しかし、勉強のために机上デ
バッグをするというのはいきすぎではないでしょうか。また、ソースコードを
見るならば、印刷されている必要もありません。筆者も先輩が書いたコードを
読んで、成長してきたと思います。しかし、バグっているコードがためになっ
たとは思っていません。エレガントで、ソースコードを読めば動きが手に取る
ように分かる、そんな素敵なコードが、筆者を成長させたと思っています。勉
強のためにソースを読むのは必要なことだと思いますが、デバッグの時に読む
のではなく、コードレビューの場で読んだほうが勉強の効果は高いでしょうし、
精神的にも健全だと思います。
○最後に
このように、机上デバッグについて、いろいろと考察してきました。机上デバッ
グそのものを否定するわけではありません。開発環境が進歩しているのですか
ら、デバッグの行い方も進歩して当然です。その時点で一番良いと思われるデ
バッグ方法が、いつも机上デバッグだけということにならなければいいなと思
います。TDDで開発を行っているならば、マシンデバッグをし、煮詰まったとこ
ろで机上デバッグしてみると良いでしょう。
そもそもバグがなければ、机上デバッグする必要がないわけです。デバッグ手
法も大事ですが、デバッグしなくても良いプログラムを作るためにはどうする
か、について考えることも大事ですよね。(天野勝)
_______________________________________________________________________
この記事への評価にご協力をお願いします。
URLをクリックして、「ご協力ありがとうございました」のメッセージがご使用
のブラウザに表示されれば投票完了です。
良かった:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=L001-8&choice=0
普通:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=L001-8&choice=1
イマイチ:
http://www.ObjectClub.jp/community/object_ml/estimate?vol=L001-8&choice=2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━3 r d ■━
■
┗【アンケート】気になるシステム業界 ホントのところ
今週は「どのような通勤スタイルですか?」のホントのところ。クールビズの
季節が去って、ウォームビズの季節になりました。みなさんは、どのような格
好で通勤されているのでしょうか。みなさんの通勤スタイルを教えてください。
常にスーツです。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=0
スーツが多いです。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=1
スーツではないけどかっちり目。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=2
常識範囲でカジュアルです。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=3
なんでもアリです。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=4
それは秘密です。
http://www.ObjectClub.jp/special/kininaru/vote?vol=78&choice=5
ちょっと語らせて!
editors@ObjectClub.jp まで詳細を!!
アンケート結果はオブジェクト倶楽部サイト上にて公開します。お楽しみに。
なお、前号「システム業界人はリュックがお好き?」の結果は公開中。ぜひご
覧下さい。
⇒http://www.ObjectClub.jp/special/kininaru/vol77/PlonePopoll_results2
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
■
┗編集後記
こんにちは、編集人です。私の記憶が正しければ、10月10日体育の日は、毎年
晴れが続いていたような気がします。たまたま、晴れている地域に私がいただ
けなのかもしれませんですが。今年の体育の日、私のすごした地域では、残念
ながら雨がしとしと降っていました。
秋と言えば、高く澄み渡った青空ですよね。毎日その青空を眺めていたいです。
天高く我肥ゆる秋。空の高さに関わらず、私は肥えていくようです。。
今週の強引な一言
*** 賢者は長い耳と短い舌を持つ(ことわざ)***
人の話を聴いていますか? 最後まで、聴いていますか? 相手の発言をさえ
ぎって、自分の主張したいこと、自分を弁護することに時間をかけても、産ま
れるのは妥協と、欺瞞だけですよ。
(さとみ)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━--■--●--■
● ご意見、ご感想は ⇒このメールに返信ください
〇 配信中止、アドレス変更は ⇒http://www.ObjectClub.jp/community/object_ml/help/
〇 免責事項、過去の記事は ⇒http://www.ObjectClub.jp/community/object_ml/
■ 発行:オブジェクト倶楽部 ⇒http://www.ObjectClub.jp/
■ 編集代表:平鍋 健児
Copyright (c)2003-2005 オブジェクト倶楽部. All Rights Reserved.
powered by Eiwa System Management, Inc.