エラーを起こさせるって 何故?
エンジニアはエラーが出無いとコードが動く事を期待しますが、思ったように動かない事が
当たり前です。 書いた様にしか動かないから...
注意して書いているのですが、いまだに凡ミスをやらかす事があります。
チーム開発の現場では他のメンバのミスでレビューが流れてしまったりと
言うことがあったのですが、
一人で黙々とコードを書いていたりする場合でも、ミスは結構痛いです。
コンパイラディレクティブなんてものが無い時代はエラーをわざと起こさせて未実装部分を
判るようにしていましたが、これには
明示的な規則がないため、他人に判りづらい、本当のエラーが隠れてしまう事があり
他のメンバには奨められませんでした。
XojoのPragma
Documentのサイトを見て頂けると判るのですが、Xojoにもいくつかの便利な機能が
あります。
Pragma Error と Warnning
ここではPragma Errorを説明します。
Documentの説明では
Used to generate a compile error manually, preventing your project from compiling.
Useful for reminding you of code you have to update.
A String is required to describe the error.
AIさんに訳してもらうと
プロジェクトのコンパイルを妨げるように、手動でコンパイルエラーを発生させるために使用します。
更新が必要なコードを思い出させるのに役立ちます。
エラーの内容を記述するために、文字列が必要です。
これだけだとよく解らないのですが、実際には
#Pragma Error "This Event NOT IMPLEMENT yet"
としておくとコンパイル時に
Window1.Canvas1.Paint, line 3
This Event NOT IMPLEMENT yet
#Pragma Error "This Event NOT IMPLEMENT yet"
とエラーが起こって注意してくれます。
同じような物にWarningがありますが、こちらは警告を発するだけなので、
Project -> Analyze xxxx等の操作が無いと目立つ事がありませんが
必ず付けるようにすると、Analyzeで浮かび上がってくるので安心です。
Pragma Unused
これはメソッド/関数の引数やローカル変数を使用しないと宣言して、Analyze時の
レポートを削減します。
変数ごとに1行が必要です。
#Pragma Unused areas
ローカル変数にも使用する事が出来ますが、注意が必要です。
ローカル変数は宣言済みの物に限ります。
Var i, theContainCount, j As Integer
#Pragma Unused theContainCount
比較的大きなプロジェクトではレポートも結構な量が書き出されます。
引数に関しては積極的に使っていますが、ローカル変数は使わない方が賢明です。
でわでわ
Happy Programming with Xojo.