Perl に挑戦!

| コメント(0) | トラックバック(0) |

突然ですが、昨日から Perl を勉強し始めました。

なんとなく、CGI を作ってみたいと思いまして、

やり始めて、かなりC言語っぽいなぁという点と、ああ違うなという点があったのでまとめておくことにします。こう言うのは、早くしないと忘れてしまうので、

C言語 と Perl を比較して

  1. 変数の型がない
  2. 変数宣言が不要
  3. 特殊変数という物がある
  4. 関数ではなくサブルーチン
  5. 正規表現が充実している

今思いつくのはこれくらいですかね。他にも有ると思いますが、忘れました。

変数の型がない

C言語みたいに、厳しい型という物がありません。簡単に使うことが出来ます。

これは、長所なのか短所なのかよくわかりませんね。
長所としてみるなら、変数が簡単に使える。
短所として見るなら、変数にどんな値が入っているのか前文を見ないとわからない。

変数宣言が不要

これは、しなくても良いということです。しかし、しっかりと宣言する方がいいです。

特殊変数という物がある

$_ など特殊な変数があります。$_ はサブルーチンの引数などになります。

まだ慣れないので、使いにくいですが、Perl では、よくこれを使った書き方をするそうです。

関数ではなくサブルーチン

C言語では、引数と戻り値を厳密に指定した関数という物がありますが、Perl では、サブルーチンとして実装されています。

このサブルーチン、結構やっかいで、変数同様、曖昧です。
引数の個数、型、戻り値の有無、型が、サブルーチンの定義で指定できません。
なので、呼び出し時に間違って呼び出されるときなどが有ります。

マイナスな点だけではありません。プラス点としては、戻り値を2つ以上とることが出来ます。C言語では、配列や構造体を返しているような感じです。

正規表現が充実している

最大の特徴だと思いますね。文字列の探索、置換などが一発で出来ます。

また、正規表現だけでなく、文字列関連の操作が非常に強いです。

 

今、CGI を作っています。どんなCGIかは、明日公開します。8割ほどできました。現在、エラーチェック中です。

CGIで一番怖いのは、XSS(クロスサイトスクリプティング)やディレクトリトラバーサル攻撃、SQLインジェクション攻撃ですね。しっかりと、エラーチェックをすれば大丈夫なはず何ですが、どうしても漏れがでますね。

トラックバック(0)

トラックバックURL: https://www.letstryit.net/mt/mt-tb.cgi/75

コメントする

アーカイブ

カウンタ

Total
Today
Yesterday

IPv6 Ready

Powered by Movable Type 7.0

このブログ記事について

このページは、enjoypcが2009年5月19日 21:36に書いたブログ記事です。

ひとつ前のブログ記事は「Timidity++ を久しぶりに使ってみた 」です。

次のブログ記事は「豚インフルエンザ 滋賀県にやってくる そして 休校に」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ