Perl/実務に使える Perl

Smart::Comments で効率よく開発とデバッグを行う(2ページ目)

プログラムのデバッグ(不具合修正)は、まずはどこで何が起こっているかを書き出す事が重要です。デバッグ用の書き出しもプログラミングの一部ですが、開発時に書き出したものを運用時に消すのはなかなか面倒なものです。この面倒な作業を簡単に行えるモジュール Smart::Comments の使い方を紹介します。

井上 みやび子

執筆者:井上 みやび子

Perlガイド

運用時に必要なコメントを残す方法

ところで、デバッグ出力には、開発時だけ確認のために出力したいものと、運用時にも出力したいものがあります。例えば、ループ処理の状況は運用時にも表示したいけれど、変数内容の出力は開発時のみでよい、といった使い分けです。この場合、「#」の数で出力するコメントを選ぶ事ができます。

Smart::Comments モジュールを use する時に以下のように指定する事で、いくつ「#」があるものを出力するかを指定可能です。なお、出力されるコメントに前置される「#」の数は、プログラム内の記載に関わらず常に3つです。

use Smart::Comments; # 「#」が3つ以上続くコメント全て
use Smart::Comments '###'; # 3つのみ
use Smart::Comments '####'; # 4つのみ

開発時に、「運用時にも出力したいコメントは『#』4つ」等と決めておけば、開発後は「use Smart::Comments;」を「use Smart::Comments '####';」に切り替える事で必要なコメントのみを残す事ができます。

ただし、Smart::Comments モジュールの使用はかなりパフォーマンスに影響しますので、速度が重要なプログラムや、運用時コメントはごくわずか、という場合は完全に use をコメントアウトして別途手書きで出力をする事も検討して下さい。

また、Smart::Comments での出力をしたくないコメントは、「#」1個または2個のみで記載して下さい。

Smart::Comments モジュール利用の注意点

Smart::Comments モジュールでは出力時に計算式の評価を行っていますので、コメント出力時に変数の値を書き換えるような記載をすると処理が狂ってきますので注意して下さい。


### $valname
### $valname++ : $valname++
### $valname
この出力は以下のようになり、コメント出力により値が書き変わってしまった事が分かります。
### $valname: 32
### $valname++ : 32
### $valname: 33
また、このモジュールは便利なのですが、ドキュメントと実際の動作が異なる場合が多々ありますので、実際に試しながらゆるゆると使ってみて下さい。
【編集部おすすめの購入サイト】
楽天市場で Perl 関連の書籍を見るAmazon で Perl 関連の書籍を見る
  • 前のページへ
  • 1
  • 2
※記事内容は執筆時点のものです。最新の内容をご確認ください。
※OSやアプリ、ソフトのバージョンによっては画面表示、操作方法が異なる可能性があります。

あわせて読みたい

あなたにオススメ

    表示について

    カテゴリー一覧

    All Aboutサービス・メディア

    All About公式SNS
    日々の生活や仕事を楽しむための情報を毎日お届けします。
    公式SNS一覧
    © All About, Inc. All rights reserved. 掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます