« IIJmioのSIMを1枚解約した | トップページ | 初心者に戻って、、 »

2014年1月25日 (土)

プログラム雑感、インデント幅

2014-01-25(土)晴れ/少し曇り

 プログラムのコーディングを行う際は、どの言語でも多かれ少なかれインデント(字下げ)を使用します。インデントでブロックを分かりやすくするわけです。そういう意味では、インデントが必須ではなくても、概ね使います。

 Pythonではインデントでブロック分けを行うので、インデントは必須で必ず使うことになります。この場合、過去に見たのでは、インデントにタブを使う方と半角スペースを使う方がいました。私も両方使ったことがありますが、現在では半角スペースを並べるのに統一しています。理由は、二つあります。
 一つは、統一しておかないと、うっかりと混在させてしまうことがあるからです。混在すると、リスト上同じに見えても動かなくなります。
 もう一つは、タブを使うとPC/エディタの環境によっては見え方が変わるからです。(タブ幅の設定が違ったりする場合)そのため、統一するなら半角スペースに、、と思ったわけです。

 で、今回、タブではなかったことで苦労しました。現在見直しているアプリでは、インデントが深くなると右の方へどんどん広がるので、1階層のインデント幅を半角2文字分にしていました。実は、半角2文字分というのは非常に接近しています。PCのエディタで見る場合(上にカーソル位置表示がある)や、1枚のリスト内で見る場合は良いのですが、シートが別れると、どこまでが同じブロック(同じインデント幅)なのか分からなくなります。

List01 1シート内だと大丈夫ですが、、。

 タブなら、エディタのタブ幅設定を変えてリストを印刷すれば済むのですが、半角スペースでは、そういかないわけです。小型スケールで紙の左端から行頭までの長さを測りながら見ていましたが大変なので、結局、行頭のスペース幅を一括変換処理するスクリプトを作成して、1階層のインデント幅を4文字分に変換しました。

List02  こちらなら何とか分かりそう、、。

 こんな事なら、アプリ作成を始めた頃のように4文字分で押し通せば良かったなとおもったり、タブの便利さも認識した日でした。まあ、変換スクリプトを作成したので、今後ともインデントは半角スペースを並べることにしましたが、、。(というより、今までのものとの整合性から、もはや変えられないですが、、。)
 

|

« IIJmioのSIMを1枚解約した | トップページ | 初心者に戻って、、 »

Python」カテゴリの記事

アプリケーション」カテゴリの記事

携帯電話」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/513620/59008477

この記事へのトラックバック一覧です: プログラム雑感、インデント幅:

« IIJmioのSIMを1枚解約した | トップページ | 初心者に戻って、、 »