サンプルコードPerl入門

3000-01-01

Perlプログラミング講座「サンプルコードPerl入門」

Perl

「ゼロ」から初めて、「Perl」のプログラムの実力がどんどん身につく、サンプル豊富なPerlサイト。「テキスト処理」ならPerlにお任せ。「正規表現」を覚えれば、「ログ解析」も自由自在。「プログラミング」の確かな実力を「サンプルコードPerl入門」で身に着けてみませんか。

  1. Perlプログラミング基礎の10講
  2. Perlでお手軽Web開発
  3. Perl辞典 - 構文・関数・モジュール・演算子・特殊変数
  4. Perl中級編
  5. Perl上級編
  6. Perlその他の情報
  7. 人気の記事
  8. 筆者のプロフィール紹介

1. Perlプログラミング基礎の10講

Perlでプログラミングをするための「入門」記事を紹介します。Perlを学習するにあたって、これだけは覚えておいたほうがよいというものをピックアップ。PerlプログラムはCGIで有名でWebサイトを作るのに適していますが、最初に基本的な文法をマスターしましょう。

1-1. インストール

まずはPerlのインストール。WindowsでもLinuxでもMacでも、Perlでプログラミングを始めるのは超簡単。WindowsならActivePerlをインストールするだけ。LinuxとMacなら、Perlがデフォルトで入っています。

1-2. 基礎文法

もうすでに「他の言語」を勉強しているという方にお勧めなのがこのコンテンツ。一読するだけで、Perlプログラムの基本のすべてがわかっちゃいます。「サンプルコードPerl」入門の人気記事です。

1-3. 正規表現

Perlの「正規表現」について解説します。Perlでは、正規表現が言語に組み入れられていて「文字列処理」が最高に簡単です。検索や置換は一瞬で終わります。

1-4. 配列

Perlの「配列」について解説しています。配列を覚えると「複数の値」を一度に扱うことができるようになります。

学べるテーマ

配列とは、配列の宣言と初期化、要素の参照と代入、配列の個数、繰り返し処理、配列操作関数、push、shift、unshift、pop、splice、並べ替え、sort関数、配列のリファレンス、リスト、grep、map

1-5. ハッシュ

Perlの「ハッシュ」について解説します。ハッシュは、他の言語でいうところの「連想配列」のことです。連想配列では、文字列をキーにして要素を取り出したり、保存したりすることができます。

1-6. サブルーチン

「サブルーチン」を使うと、複数の処理をひとつのまとまった処理にまとめることができます。

学べるテーマ

サブルーチンの役割、サブルーチン呼び出し、引数の処理、戻り値、エラー処理、オートロード、動的生成、括弧の省略規則

1-7. ファイル入出力
  1. ファイル入出力の基礎 - ファイルの読み書き

ファイル入出力

1-8. 文字列

文字列重要

1-9. 条件分岐と繰り返し

制御構造

1-10. 変数

Perlの「変数」について解説しています。Perlには「3個の変数宣言」と「3個の変数型」があります。大事なことなので、違いを覚えちゃいましょう。

2. Perlでお手軽Web開発

Perlで「Web開発」を行う方法を解説。Webサイト、Webアプリ、Webサービスを作成したい方にお勧め。

2-1. Mojolicious

Mojoliciousは「3行で超簡単にWebアプリ作成」ができるPerlの「Webフレームワーク」です。

学べるテーマ

Webアプリ基礎、パラメーター、テンプレート、フォーム、ルーティング、レンダリング、JSON、非同期I/O、Webサーバー、HTTPクライアント、URL作成

2-2. 「Kent Web」の「CGI」をMojoliciousで書く

「Perl=CGI」そんな風に思っていませんか。確かにCGIはちょいと古い。でもPerlはいつでも新しい。「もともとCGIで書いていたWebアプリがMojoliciousで今こんな風にかけるんだー」というサンプルをご覧ください。

学べるテーマ

掲示板作成、フォームの基礎、ページネーション、文字コード、CGIからMojoliciousへの移植、Eメール送信、cpanm

2-3. 実用的なWebアプリ「GitPrep」

「実際にどういう実用的なWebアプリが作れるの?」そんなときは、Mojoliciousで作られた「GitPrep」というWebアプリを一度ご覧ください。Perlの「最新のWeb技術」の集大成になっています。

学べるテーマ

Mojolicious、cpanm、 cpanfile、 ページネーション、セッション管理、ログイン管理、HTMLバリデーション、データベース、ORM、SQLite、インストーラブルWebアプリ、INIファイル、gitコマンド

3. Perl辞典 - 構文・関数・モジュール・演算子・特殊変数

Perlの「辞典」です。「Perlのソースコード読んでいたら、わからない『記号』や『関数』が多いなぁ。困ったなぁ」そんなときは、こちらへ。

3-1 構文

Perlの構文を紹介しています。

調べられる構文

条件分岐、if文、繰り返し処理、for文、while文、next、last

3-2. 演算子

「Perlの『演算子』って、調べるのに苦労するなぁ。結構いろいろあるしなぁ」そういうときはPerlの「演算子の一覧」から、調べると便利です。

3-3. 関数

Perlの「関数」について解説しています。「あの文字列をくっつけたり、検索したりする関数なんだっけなぁ。」そんなときは、ここへ。

調べられる関数

文字列処理、length、lc、uc、配列、map、grep、

3-4. モジュール

Perlの「モジュール」についての詳しい解説です。「Perlってモジュールがいいとか、CPANがいいとかいうけど、どんなのが実際あるの?」そういう疑問を持っているあたな、ここをご覧ください。

調べられるモジュール

Net::FTP、FindBin、lib

3-5. 特殊変数

Perlの「特殊変数」の一覧です。Perlで検索しづらい特殊変数。その一覧をまとめました。

3-6. 豆知識
  1. Perl豆知識 - 知っておくと便利な豆知識
3-7. FAQ
  1. Perl FAQ - Perlでよくある質問に答える
3-8. 特徴
  1. Perlとは - Perlの特徴について

4. Perl中級編

Perlの「一歩進んだテクニック」を解説。「基礎編」が終わった後にチャレンジしてみよう。

4-1. 多次元データ構造

「配列」「ハッシュ」「リファレンス」を覚えた後は「多次元データ構造」にチャレンジしてみましょう。「多次元データ構造」を覚えるとプログラミングでできる幅が、とっても広がりますよ。

4-2. ビット演算

Perlで「ビット演算」を行う方法を解説しています。いざとなれば、ビット操作もできるんだ。

4-3. コーディングルール

「ソースコード」を書くときに使う「コーディングルール」を紹介します。「Perlは、表現の幅が広いから、ある程度のコーディングルールがあったほうがいいな」。現場の「コーディングルール」作成の参考にもできます。

4-4. 例外処理

Perlの「例外処理」について解説します。「えっ、Perlに例外処理なんてあるの!?」と思われる方はけっこういるかもしれませんね。Perlにも立派な例外処理機構があるんです。

4-5 コマンドライン引数

Perlにおける「コマンドライン引数」の処理の仕方を解説します。「ファイル名を指定してプログラムを実行したいんだけど、どうしたらいいの?」そういうときは「コマンドライン引数」です。

4-6. デバッガ

Perlの「デバッガ」について解説します。うまく使いこなせると、あなたの開発効率を2倍にも3倍にもあげるデバッガは覚えておくと便利です。

4-7. 現代的なPerlの記述方法

「現代的なPerlの記述方法」を紹介しています。Perlは後方互換性を保つため、古い書き方でも記述できちゃいます。でも、保守性を考えると、よりより書き方を知っておいたほうがいいね。

4-8. 未分類
  1. Perlオブジェクト指向入門 - オブジェクト指向の入門
  1. Perlのスコープを理解する - スコープという概念を学習
  2. Time::Piece - 日付と時刻を扱う
数値計算
モジュール基礎オブジェクト指向
日付・時刻
文字コード
ファイル操作

5. Perl応用

一歩進んだ「Perlの応用」的な機能を紹介します。これができれば、あなたも「Perlマスター」だ!

5-1. 自動試験

Perlで「自動試験」を記述する方法を解説します。「自動試験って何っ? 試験自体が『プログラムで書ける』ようなことを聞いたんだけど本当?」本当です。マスターすれば、試験が「超絶に楽」になるよ。

5-2. ソケット

Perlで「ソケット」による通信を行う方法を解説します。

5-3. プロセス間通信

Perlの「プロセス間通信」について解説します。

5-4. ワンライナー

Perlの「ワンライナー」について解説しています。ワンライナーとはコマンドラインで「一行実行」ができるPerlの機能のことです。sedやawkコマンドを利用する感じで、利用できます。

5-6. データベース

Perlで「データベース」に接続する方法を解説。MySQL, SQLite,Oracle, Access, SQL Serverなど多くのデータベースに対応しています。

「DBIx::Custom」というモジュールを利用して、簡単にデータベースにSQLを実行できる方法を解説。

5-7. 統計・解析

PDLというモジュールを使ってPerlで「統計・解析」を行う方法を解説。

5-8. XS

PerlでC言語やC++をバインディングするためのXSの入門。

学べるテーマ

XSモジュールの作成、SV、 AV、 HV、Makefile.PL、ExtUtils::MakeMaker、型変換、ダイナミックリンクライブラリ、XSUB、h2xs、、C言語、C++

5-9. Perl言語実装

Perlコアの言語実装についての研究記事です。

6. その他のPerl情報

6.1 リリース情報

Perlのリリース情報です。「えっ、Perlっていまだにリリースが活発なの?」そうなんです。Perlは1年に一回、5月〜6月ごろに、リリースが行われています。新規機能追加、パフォーマンス改善など盛りだくさん。

6-2. 読み物

読み物

6-3. リンク集

Perl関連の「リンク集」です。

リンク集

サイト分類

勉強会、イベント、公式サイト、海外サイト、掲示板、ブログ

7. 人気の記事

  1. Perl「基礎文法」最速マスター一番人気
  2. 「現代的なPerl」の記述方法
  3. 実践で役立つPerl「正規表現」
  4. Perlの「配列」と「ハッシュ」を自由に扱う
  5. Perlでよく使用する「関数」「標準モジュール」一覧
  6. 「日本語」などのマルチバイト文字列を適切に処理する

A. 著書情報

木本裕紀「Perlでプログラミングをするのが面白くって仕方ない」

Perlの「オープンソース」活動に26歳のときから「10年間」取り組んでおり「ライフワーク」としている。

代表的な著作は「業務に役立つPerl(技術評論社)」「かんたんプログラミングCGI/Perl(技術評論社)」。雑誌「Software Design」で、連載経験も。

プロフィール情報

趣味、経歴、好きな食べ物、好きなテレビ番組、学歴、夢、GitHub、Facebook、Twitter、Qiita、CPAN、E-mail

「Perlが ”好き” ”楽しい” ”面白い”方、Twitterでつながりませんか?」

B. 書籍

執筆させていただいたPerl関連の「書籍」です。

もっと自在にサーバを使い倒す 業務に役立つPerl

もっと自在にサーバを使い倒す 業務に役立つPerl (Software Design plus)

かんたんプログラミングCGI/Perl 木本裕紀著

かんたんプログラミング CGI/Perl

サーバ/インフラエンジニア養成読本 基礎スキル編

サーバ/インフラエンジニア養成読本 基礎スキル編 (Software Design plus)