NetBeansサイド
FuelBeans 25 : もっとコード補完を
更に、コード補完を考えましょう。まだまだ、やれることはあります。
さて、前回はPHPDoc(ument)の@varを利用し、コアクラスのインスタンスを文字している変数に対してコード補完を行う方法でした。
PHPDocはもともと、ドキュメントの自動生成のための仕組みです。他の言語で使われ初め(Javaでしたっけ?Cか?)それが便利なため、今や殆どの言語に似たようなドキュメント生成補助プログラムが存在しています。
コメントとして、そのプログラムのドキュメントを書いてしまおうというものです。それ以前は、別にドキュメントを用意しておくのが当たり前だった時代なんですね。(プログラムコードのレベルの話ですが、今でもそんなところ残っていますよ。古い人がやり方を変えられないところは特にそうです。まあ、金融関係でお金扱うところでしたら、厳密ですからしょうがないでしょうけれどね。あと、省庁関係とかは書類主義ですから、特に残っていそうですね。韓国の政府はペーパーレスでは世界一らしいです。この点は、日本も追いついてもらいたいですね。)
FuelPHPを利用するならば、Validationクラスはよく利用します。テンプレートエンジンを利用せず、FuelPHPのビューを直接利用する方ならば、Viewクラスも利用しますね。
そうしたコアクラスのコメントを書き換えてしまえばいいんです。コードを書き換えるのではなく、コードのコメントを書き換えます。
コアのクラスを読んでみると、関数に対するコメントの入り方はいい加減で、入っていたり、いなかったりです。引数の数と、コメントがあっていないなんてザラです。
さすがに全部に対して、以下の作業を行うのは面倒ですので、よく利用するクラスだけにしましょうね。
では、やり方です。
これで、@varをいちいち記述しなくても、IDEは$val = クラス名::forge();と書けば、そのクラスのインスタンスであると、理解できますので、$val->で補完が効きます。
@paramも記述しておけば、PHPの組み込み関数のように、引数の型を表示してくれるようになります。
まあ、はっきり言えば、開発元がきちんとコメントを書いていてくれれば、こんな手間を掛ける必要はありません。しかし、物によっては引数や、返り値の型が一つとは限りませんので、書けない部分もあるとは思います。しかし、多くの関数では、ただ書いていないだけです。手抜きですね。
と言いながら、心が痛いのは、私も書いていないのです。 :D NetBeansの使用にブランクがありまして、しかもしばらくプログラミングしていなかったので、/**で自動的にコメント生成してくれるとは、つい昨日まで知らなかったのです。(正確に言えば、読んだことはありましたが、実際に使ったことはなかったので、覚えていませんでした。)これを見つけたのも、試しに実行していく過程で気が付きました。
まあ、自分のコード入力を助けるためにも、きちんと書いておくことをお勧めします。関数が完成したら /**でEnterです。そんな手間ではありません。
PhpStromは関数の戻り値と@renterの指定が異なっていると、注意を促してくれるそうです。NetBeansはそこまでは出来ず、補完時に利用出来るだけですが、それでも便利です。
| FuelBeans 24 : 徹底的にコンプリーション< 前 |
|---|
| < 前 |
|---|