ブログトップ 記事一覧 ログイン 無料ブログ開設

サンプルコードによるPerl入門 〜 Perlで楽しくプログラミングを学ぼう 〜

3000-01-01

サンプルコードによるPerl入門 - 目次

 サンプルコードを中心としたPerlの入門サイトです。 Perlを使ったWebサイトの作り方も解説しています。関数やモジュールなPerlの便利な機能の解説も行っています。(スマートフォン、タブレットの場合のPCサイト表示はこちらから行うことができます)

Perl基礎 - Perlの基礎を覚えよう

 Perlの基礎について解説します。Perlのインストール、基本的な構文、配列、ハッシュ、正規表現、ファイル入出力、オブジェクト指向などを学ぶことができます。


  1. コマンドプロンプト- コマンドプロンプトの使い方
  2. Perlとは - Perlの特徴について
  3. Perlインストール - Perlのインストール方法
  4. Perl基礎文法最速マスター - Perlの基礎をすばやく学習
  5. 現代的なPerlの記述方法 - Perlの現代的な書き方
  6. 実践で役立つPerl正規表現 - Perlの正規表現で頻繁に利用するテクニック
  7. 配列とハッシュを自由に扱う - ハッシュと配列の扱い
  8. サブルーチンの作成 - サブルーチンの作成方法
  9. Perlのスコープを理解する - スコープという概念を学習
  10. ファイル入出力の基礎 - ファイルの読み書き
  11. Perlオブジェクト指向入門 - オブジェクト指向の入門
  12. デバッガの手引き - デバッガの紹介
  13. Perl豆知識 - 知っておくと便利な豆知識
  14. Perl FAQ - Perlでよくある質問に答える

Mojolicious入門 - PerlでWebサイトを作ろう

 Mojolicious入門 〜 PerlでWebサイトを作ろう 〜
Perlを学ぶ楽しい方法のひとつはWebサイトを作成してみることです。Webサイトを作成できれば、インターネット上で自分でサービスを公開することもできます。

 MojoliciousはPerlでWebサイトを作る場合の代表的なフレームワークです。Mojoliciousを使えば、簡単にWebサイトを作成することができます。Ruby on Railsを知っている方は、これのPerl番だと考えていただけると想像しやすいと思います。

Perl書籍

 Perl関連の書籍の紹介です。「サンプルコードによるPerl入門基礎編」「簡単プログラミング Perl/CGI」と「もっと自在にサーバを使い倒す 業務に役立つPerl」は僕が書いています。

Perl応用

 基礎を学び終えたら、関数とモジュールについて知るのが、上達の近道です。よく使用する関数や、モジュールについて解説しています。またデータベース操作についても学ぶことができます。

  1. よく使用する関数一覧 - よく使用する関数の紹介
  2. Perlモジュール徹底解説 - モジュールについての詳しい解説
  3. Validator::Customリファレンス - HTMLフォームのバリデーション
  4. SQLiteで学ぶデータベース操作の基礎 - SQLiteとDBIを使ったデータベース操作
  5. DBIx::Customリファレンス - データベースに便利にアクセス
  6. PDLによる統計解析 - PDLモジュールを使った統計解析
  7. Perlその他の情報

Perlリファレンス

Perl逆引き辞典

 逆引き辞典です。やりたいことをさがせます。簡単なサンプルつきです。

コメントデバッグコマンドライン引数配列
ハッシュサブルーチンモジュール数値演算
ビット演算文字列文字コード正規表現
ファイルとディレクトリファイルとディレクトリ(UNIX系OS)ファイル入出力制御構造
変数情報取得日付と時刻開発環境構築
特殊変数プラグマワンライナーPerlとMySQLの連携
自動試験プロセス間通信ソケットオブジェクト指向

Perlその他

CentOS・Red Hat Linux実践テクニック

Perl以外の技術情報

2014-07-29

PerlプログラマのためのC言語入門

 僕は、今少しXSというC言語によるPerlの拡張を書く必要がある場面に遭遇しかけています。XSを書くためには、ばっちりC言語を理解していないといけないのですが、僕の知識はあやふやなので、アウトプットをかねて、C言語入門を書きたいと思います。

 C言語は、あらゆる意味で自由な言語です。メモリのアドレスに直接アクセスできるので、デバイスドライバなども記述することができます。また、C言語を使うと、きわめて高速なプログラムを作成できます。その代償として、あらゆる意味でめんどくさいですけれども。

 2014年のYAPCでは「Perlプログラマのための○○入門」という話題が結構ありますけど、それにあやかって、「PerlプログラマのためのC言語入門」を書いてみたいと思います。

C言語入門

2014-07-28

C言語の開発環境のインストール | PerlプログラマのためのC言語入門

 C言語のソースコードを実行するには、コンパイラと呼ばれるツールが必要になります。この開発環境をインストールするのは、現在ではとても簡単になっています。

Linuxの場合

 Linuxの場合は、gcc,makeと呼ばれるツールが、すでに入っていると思います。次のコマンドを実行して、インストールされていることを確認してみてください。

# gccのバージョン確認
gcc -v
# makeのバージョン確認
make

Windowsの場合

 Windowsの場合は、実行環境がインストールされていませんが、ActivePerlを使っている場合であれば、cpanコマンドを実行したときにMinGWという開発環境が、自動でインストールされます。Strawvery Perlを利用しているときは、最初から開発環境がインストールされていると思います。

 ActivePerlを使っている場合は次のコマンドを実行してみて、MinGWをインストールしてみてください。

cpan

 インストールが終われば「gcc」と「dmake」というコマンドが実行できるようになっていることを確認してみてください。

# gccのバージョン確認
gcc -v
# makeのバージョン確認
dmake -V

gccはコンパイルを行うツール

 gccとは、C言語のソースファイルをコンパイルして、実行できるプログラムにするツールだと覚えておいてください。

makeはコンパイルを自動化するツール

 Linuxではmakeというコマンド、Windowsではdmakeという名前になっていますが、これからの解説では、makeとだけ書きますので、Windowsの場合はdmakeに置き換えて読んでください。

 makeとは、コンパイルを自動化するためのツールです。C言語のソースファイルを書いているとたくさんのファイルをコンパイルする必要があります。さらに、実行ファイルにするためには、コンパイルされた複数のファイルを結びつけるリンクという作業をする必要があります。

 これらの作業を自動化してくれるツールがmakeです。

 これでC言語をコンパイルして、実行できる環境が整いました。


PerlプログラマのためのC言語入門

2014-07-27

XSファイルの名前を変更する方法

 h2xsを使って、XSモジュールを作成すると、名前空間に「::」が入っていると、XSファイル名は、「末尾の名前.xs」というのになる。

 たとえば「Some::Module」という名前でh2xsを使ってXSモジュールを作成すると、XSファイル名は「Module.xs」となる。これは少し気持ちが悪い。

 自由なXSファイル名をつけるには、Makefile.PLの中で、XSファイル名を指定する必要がある。

 たとえば「SomeModule.xs」という名前でXSファイルを作成したければ次のように記述する。コメントのついている「XSオプション」と「OBJECT」オプションの部分だけ見てほしい。他の部分は自動生成されたところです。

use ExtUtils::MakeMaker;

WriteMakefile(
    NAME              => 'Rstats::Element',
    VERSION_FROM      => 'lib/Rstats/Element.pm',
    PREREQ_PM         => {},
    ($] >= 5.005 ?
      (ABSTRACT_FROM  => 'lib/Rstats/Element.pm',
       AUTHOR         => 'A. U. Thor <kimoto@sakura.ne.jp>') : ()),
    LIBS              => [''],
    # XSオプション
    XS     => {'SomeModule.xs' => 'SomeModule.c'},
    DEFINE            => '',
    INC               => '-I.',
    # OBJECTオプション
    OBJECT => 'SomeModule$(OBJ_EXT)'
);

 XSオプションで「SomeModule.xs」を「SomeModule.c」という名前にすると指定します。これはXSファイルをC言語ソースファイルに変換するxsubppへの命令になります。

 ただしこれだけではだめで、コンパイル対象のC言語ファイル名(これはオブジェクト名によって記述)も記述する必要があります。それを、OBJECTオプションで指定します。「$(OBJ_EXT)」の部分は、makeの特別な変数のようなもので「.o」に置換されます。

 このように記述すると「SomeModule.c」がコンパイル対象になります。ややこしいですね。

2014-07-05

Validator::Custom 0.23のリリース - 新しいルールの記法、制約関数の簡単な呼び出し

 Validator::Custom 0.23をリリースしました。今回のリリースでは、新しいルールの記法を追加しました。また制約関数の簡単な呼び出し方法を追加しました。

新しいルールの記法

 従来は、ハッシュと配列でルールを記述していましたが、今回からは、オブジェクトを使って、ルールが記述できるようになりました。タイピングミスがしにくくなり、どこで間違っているかを確かめやすくなりました。

use Validator::Custom;
my $vc = Validator::Custom->new;
 
# データ
my $data = {id => 1, name => 'Ken Suzuki', age => 19};
 
# ルールの作成
my $rule = $vc->create_rule;
 
# idのチェック - 整数、エラーメッセージを設定
$rule->require('id')->check(
  'int'
)->message('id should be integer');
 
# nameのチェック - 空白でない、長さが1から5,メッセージをを設定
$rule->require('name')->check(
  ['not_blank' => 'name is emtpy'],
  [{length => [1, 5]} => 'name is too long']
);
 
# ageのチェック - 値は任意、デフォルトは「20」
$rule->optional('age')->check(
  'int'
)->default(20);
 
# バリデーション
my $result = $vc->validate($data, $rule);

制約関数の簡単な呼び出し

 既存の制約関数を使って新しい制約関数を簡単に記述できるようになりました。「$_」という変数から、制約関数を呼び出すことができます。たとえば、空白あるいは整数という制約関数を作る場合は以下のようにかけるようになりました。

# 空白あるいは整数
$vc->register_constraint(
  blank_or_int => sub {
    my $value = shift;
    
    return $_->blank($value) || $_->int($value);
  }
);


ニュース