にしし ふぁくとりー(西村文宏 個人サイト)

Presented by Nishishi via Movable Type. Last Updated: 2015/09/22. 13:23:36.

Perlで必須の記述 use strict と use warnings

Perlはずいぶん柔軟性の高い言語だと思います。それがメリットにもなったりデメリットにもなったりするわけで、また、書きやすかったり難しかったりするわけですが。そんなPerlでプログラムを書く上で、とりあえず記述しておくべき2行があります。

use strict;
use warnings;

最近は私も、Perlで何か書くときには必ず上記の2行を加えているのですけど、昔はこんなもん知らなかったので(^^;)、当サイト上で公開しているスケジュールCGIには、そんな記述は存在しません…。^^;;; 修正したいとは思うのですけどね。ずいぶんスパゲッティーなプログラムになっているので、全体を修正するのがなかなか大変。

「動きさえすればいい」と思っていたわけではないのですが、それでも、「この日までに完成させたい」という思いもあったりして、なかなか強引に書き進めてあるので、ずいぶん大変なソースになってます。^^; そもそも関数の分け方に明確な基準がないので、複数の関数に分割すべき処理が1つになってたり、別に1つの関数で良さそうな内容が複数の関数に分割されてたりします。^^;;;

「1カ所からしか呼ばれてない関数」は全部呼び出し元に含めんかい!という指摘がどっかであったような気もするのですが。そんな関数も結構多いと思います。^^;;;

とまあ、いろいろ問題はあるのですけども。それらが use strict と use warnings でいきなり解決したりするわけではないのですが(^^;)、それでも、種々の問題を未然に防ぐために、 use strict と use warnings は記述しておいて、表示されるエラーを全部つぶしておくのは大切なことです。というか、Perlでプログラミングする際の基礎のようですね。^^;

Perl/CGI辞典 - 土井 毅さん著 - にて use strict が推奨されていない件について(@iandeth.)
via Perl の話をまとめた(@naoyaのはてなダイアリー)

とりあえず、これから何かPerl使ってCGIでも書いてみましょうか、と思う人で、use strict とか use warnings の役割がなんなのか知らない場合は、とりあえず先にその意味を調べてみる方がいいんじゃないかと思います。

…ところで。

@niftyのWebスペースでは「use」が使えない、という話を聞いたことがあるんですが。とすると、「use strict」と書いただけでも、@niftyでは動かないんですかね?

コメント

>とりあえず、これから何かPerl使ってCGIでも書いてみましょうか、
>と思う人で、use strict とか use warnings の役割がなんなのか知らない場合は、
>とりあえず先にその意味を調べてみる方がいいんじゃないかと思います。
こんなこと書くぐらいなら、ここでその意味を書いたらいいんじゃないかと思いますが、いかがでしょうか。

投稿者 Anonymous : 2008年10月05日 22:53

>こんなこと書くぐらいなら、ここでその意味を書いたらいいんじゃないかと思いますが、
>いかがでしょうか。

こんなコメント書くくらいなら、その時間でその意味を調べたらいいんじゃないかと思いますが、いかがでしょうか……?

投稿者 Anonymous : 2008年10月06日 02:14

「use ~」はまだ動作が保証されてないので、
使うにしても疑いは捨てないようにしましょう。

変数の名前の数が増えすぎると、ある日突然、
宣言なしで変数を使っても怒られなくなります。

バージョンによって再現されたり、されなかったり・・・。
一番いいのは、「use ~」を使いつつ、
当てにしなくても良い書き方をしたらよいのでは?

投稿者 Anonymous : 2008年12月11日 19:23

↑こんなコメント書くくらいなら、その時間でその意味を調べたらいいんじゃないかと思いますが、いかがでしょうか……?

調べる時間がもったいないので、

ここで書いておいて欲しいですね。もったいない。

投稿者 Anonymous : 2011年08月31日 10:12

> 調べる時間がもったいないので、

自分の時間は惜しむのに、ブログ主には時間を使って説明しろと要求する自己中心的さに気付かない人がたくさん居るんだなあ。

投稿者 Anonymous : 2011年09月01日 00:00

自身で調べる労力は惜しまないべきだと思います。

時間がもったいないというコメントも失礼です。
ブログは自己満足でいいと考えています。
ですがこのサイトが参考にされていることも事実です。
感想だけでなく意味を説明できるようになることも技術者として必要かと。。

とかいいつつ私もuse strict;warnings;とはと考えてこちらまで来た人間ですので説明できないのですが。。

投稿者 Anonymous : 2013年05月19日 01:10

コメント数: 6件

コメント投稿欄 この日記に対するコメント投稿を歓迎します。

保存しますか?



※本文中にURLは書けません。(書くと投稿が拒否されますのでご注意下さい。)

※投稿内容は、実際にページ上に掲載される前に、管理者によって確認される設定にしている場合があります。その場合は、投稿後にその旨が表示されます。たいてい1~2日以内には表示されるはずですので、気長にお待ち願います。m(_ _)m

トラックバック

このエントリーへのトラックバックURLを表示するにはここをクリック
※スパム防止のため、トラックバックURLは別ウインドウで表示します。(JavaScriptが有効でないと表示されません。)

このリストは、次のエントリーを参照しています: Perlで必須の記述 use strict と use warnings:

» 「use strict」に対応させる簡単な改造方法【perl】 from 地方の中規模印刷会社で苦悩するWebデザイナー改めWebディレクターの日記
色々なところでperlのプログラムはuse strictを使うようにという記事を見かける。 □Perlで必須の記述 use strict と use warn...

トラックバック時刻: 2009年02月09日 17:16

--- 当サイト内を検索 ---