次のコマンドを使用して、perl コードをテストしています。
perl -MB::Lint::StrictOO -MO=Lint,all,oo -M-circular::require -M-indirect -Mwarnings::method -Mwarnings::unused -c $file
perl バージョンが 5.10 未満のシステムでは、uninit も使用しています。
私は Perl::Critic と Perl::Tidy も使用しており、好みに合わせて適切な rc ファイルをセットアップしています。
これらのモジュールは、私が最初に perl を学習したときに学んだいくつかの悪い習慣を打破するのに非常に役立ちました。
私が混乱したときにまっすぐで狭いところに戻ってくるモジュールやプラグマは他にありますか?
テストの使用、およびモジュールの Test::* ファミリといくつかの優れた書籍が指摘されています。この新しい情報により、テストとコード スキル構築の関係について、いくつかの前提を再考する必要がありました。これらはすべて高く評価されており、すでに研究され、使用されています。
It seems to me that these are two separate parts of a whole. 'perl -c', Perl::Critic and Perl::Tidy all help during the process of writing code and before execution of code. Devel::Cover, Devel::NYTProf and Tests happen during and after execution of code.
Good development dictates an iterative process, so tests will be run, and code developed over and over, but we still have this separation.
It appears to me that the focus in the answers have been on the 'during and after execution' of code. Again, this is very appreciated. Can I assume that I have the 'writing and pre-execution' part down pretty well then? At least, insomuch as the pragmas, modules and utilities are concerned.