初めてのPerl Win32システム

[cover photo]
  • Randal L. Schwartz, Erik Olson, Tom Christiansen 著、有馬 三郎 監訳、石原 智浩 訳
  • 1998年11月 発行
  • 348ページ
  • ISBN4-900900-79-6
  • フォーマット
  • 原書: Learning Perl on Win32 Systems

この商品は絶版になりました


Perlは非常に移植性の高い言語です。UNIXで産声を上げましたが、現在ではいろいろなオペレーティングシステムに移植されています。また昨今のインターネットの普及にともないCGIスクリプトのための言語として脚光を浴びているのもPerlです。そうした背景によりWindows NTユーザからもPerlプログラミング環境を欲する声は高くなり、生まれたのがPerl for Win32です。本書はWin32上でPerlを学ぶための公式ガイドです。

監訳者まえがき
序文
この版の序文
はじめに

1章 Perl入門
        1.1 Perlの歴史
        1.2 Perlの用途
        1.3 入手可能なPerlについて
                1.3.1   ActiveState社のPerl for Win32
                1.3.2   標準版Perlの配布物
                1.3.3   WindowsNTとWindows 95
        1.4 サポート
        1.5 基本概念
                1.5.1   ドキュメンテーション
        1.6 Perlの世界をぶらり旅
                1.6.1   "Hello, world" プログラム
                1.6.2   質問をしてそして結果を記録する処理
                1.6.3   選択処理の追加
                1.6.4   合言葉を言い当てるための処理
                1.6.5   合言葉が複数の場合
                1.6.6   各人に別の合言葉を与える
                1.6.7   いろいろな入力形式を取り扱えるようにする
                1.6.8   他の人たちも公平に扱うようにする
                1.6.9   もう少しモジュール性を高める
                1.6.10  合言葉リストをプログラム外のファイルに移す
                1.6.11  ささやかながらセキュリティを確保する
                1.6.12  無効な合言葉を使ったら警告を発する
                1.6.13  カレントディレクトリに多数の合言葉ファイルを置く
                1.6.14  合言葉リストの一覧を表示
                1.6.15  古い合言葉リストを目立たせる
                1.6.16  最後の合言葉照合成功に関する情報をデータベースで管理する
                1.6.17  プログラムの最終形
        1.7 練習問題

2章 スカラーデータ
        2.1 スカラーデータとは
        2.2 数値
                2.2.1   すべての数値は同じ内部表現形を使う
                2.2.2   浮動小数点数リテラル
                2.2.3   整数リテラル
        2.3 文字列 
                2.3.1   シングルクォートで引用した文字列
                2.3.2   ダブルクォートで引用した文字列
        2.4 スカラー演算子
                2.4.1   数値演算子
                2.4.2   文字列演算子
                2.4.3   演算子の優先順位と結合性
                2.4.4   数値と文字列の変換
        2.5 スカラー変数
        2.6 スカラー演算子とスカラー関数
                2.6.1   2項代入演算子
                2.6.2   インクリメントとデクリメント
                2.6.3   chop()関数とchomp()関数
                2.6.4   スカラーの値を使った文字列置き換え処理
        2.7 をスカラー値として処理
        2.8 printによる出力
        2.9     未定義値
        2.10    練習問題

3章 配列とリストデータ
        3.1 リストや配列とはどういうものか
        3.2 リテラル表現
        3.3 変数
        3.4 配列演算子と配列関数
                3.4.1   代入
                3.4.2   配列要素へのアクセス
                3.4.3   push関数とpop関数
                3.4.4   shift関数とunshift関数
                3.4.5   reverse関数
                3.4.6   sort関数
                3.4.7   chomp関数
        3.5 スカラーコンテキストとリストコンテキスト
        3.6 を配列として処理
        3.7 配列の変数部分の置き換え処理
        3.8 練習問題

4章 制御構造
        4.1 ブロック文
        4.2 if/unless文
        4.3 while/until文
        4.4 do {} while/until文
        4.5 for文
        4.6 foreach文
        4.7 練習問題

5章 ハッシュ
        5.1 ハッシュとは
        5.2 ハッシュ変数
        5.3 ハッシュのリテラル表現
        5.4 ハッシュ関数
                5.4.1   keys関数
                5.4.2   values関数
                5.4.3   each関数
                5.4.4   delete関数
        5.5 ハッシュのスライス
        5.6 練習問題

6章 入出力の基本
        6.1 STDINからの入力
        6.2 ダイヤモンド演算子からの入力
        6.3 STDOUTへの出力
                6.3.1   printを使った通常の出力
                6.3.2   printfを使用した書式指定出力
        6.4 練習問題

7章 正規表現
        7.1 正規表現に関する概念
        7.2 正規表現の簡単な使い方
        7.3 パターン
                7.3.1   1文字を表すパターン
                7.3.2   パターンのグループ化
                7.3.3   パターンのアンカー処理
                7.3.4   優先順位
        7.4 マッチ演算子
                7.4.1   別の処理対象の選択処理(=~演算子)
                7.4.2   大文字と小文字を同一視する処理
                7.4.3   別の文字をデリミタに指定する
                7.4.4   変数部分の置き換え処理の利用
                7.4.5   読み出し専用の特殊変数
        7.5 置換
        7.6 split関数とjoin関数
                7.6.1   split関数
                7.6.2   join関数
        7.7 練習問題

8章 関数
        8.1 ユーザ関数の定義
        8.2 ユーザ関数の呼び出し
        8.3 戻り値
        8.4 引数
        8.5 関数のプライベート変数
        8.6 localを使用したセミプライベート変数
        8.7 ファイルレベルのmy()変数
        8.8 練習問題

9章 その他の制御構造
        9.1 last文
        9.2 next文
        9.3 redo文
        9.4 ラベルつきブロック
        9.5 式修飾子
        9.6 制御構造としての&&、||、?:
        9.7 練習問題

10章 ファイルハンドルとファイルの検査
        10.1 ファイルハンドルとは
        10.2 ファイルハンドルのオープン処理とクローズ処理
        10.3 パス名とファイル名の使い方
        10.4 閑話:die
        10.5 ファイルハンドルの使用法
        10.6 ファイルを検査する演算子
        10.7 stat関数
        10.8 練習問題

11章 フォーマット
        11.1 フォーマットとは
        11.2 フォーマットの定義
        11.3 フォーマットの呼び出し
        11.4 いろいろなフィールドフォルダ指定
                11.4.1  テキストフィールド
                11.4.2  数値フィールド
                11.4.3  複数行にわたって記述されるフィールド
                11.4.4  詰め込みフィールド
        11.5 ページトップフォーマット
        11.6 フォーマットに関するデフォルトの変更操作
                11.6.1  selectを使ったファイルハンドルの変更操作
                11.6.2  フォーマット名の変更操作
                11.6.3  ページトップフォーマット名の変更操作
                11.6.4  ページ長の変更
                11.6.5  ページ位置の変更
        11.7 FileHandleモジュール
        11.8 練習問題

12章 ディレクトリアクセス
        12.1 ディレクトリツリーに沿って移動する方法
        12.2 glob処理
        12.3 ディレクトリハンドル
        12.4 ディレクトリハンドルのオープン処理とクローズ処理
        12.5 ディレクトリハンドルの読み込み処理
        12.6 練習問題

13章 ファイルとディレクトリの操作
        13.1 ファイルの削除
        13.2 ファイル名の変更
        13.3 ディレクトリの作成と削除
        13.4 パーミッションの変更
        13.5 タイムスタンプの変更
        13.6 練習問題

14章 プロセス管理
        14.1 systemとexec
        14.2 バッククォートの使用
        14.3 プロセスをファイルハンドルとして使用
        14.4 プロセス操作のまとめ
        14.5 Win32::Processモジュール
        14.6 練習問題

15章 データ変換操作
        15.1 部分文字列の検索
        15.2 部分文字列の抽出と置換
        15.3 sprintf()を使ったデータの書式設定
        15.4 ソート処理(上級編)
        15.5 (演算子trによる)翻字処理
        15.6 練習問題

16章 システムの情報
        16.1 ユーザとコンピュータに関する情報の入手法
        16.2 バイナリデータのパックとアンパック処理
        16.3 ネットワーク情報の取得
        16.4 レジストリ
                16.4.1  レジストリの構造
        16.5 レジストリの値のオープンと読み取り
        16.6 レジストリへの値の設定
                16.6.1  その他のレジストリを操作
        16.7 練習問題

17章 データベースの操作
        17.1 DBMデータベースとDBMハッシュ
        17.2 DBMハッシュのオープンとクローズ
        17.3 DBMハッシュの使用法
        17.4 固定長ランダムアクセスデータベース
        17.5 可変長(テキスト)データベース
        17.6 Win32データベースインタフェース
        17.7 練習問題

18章 CGIプログラミング
        18.1 PerlとCGI
        18.2 CGI.pmモジュール
        18.3 コンテキストの中のCGIプログラム
        18.4 最も単純なCGIプログラム
        18.5 CGIを介したパラメータわたし
                18.5.1  キー入力の量を減らすために
                18.5.2  フォームの生成
                18.5.3  その他のフォーム要素
                18.5.4  参照
                18.5.5  ちょっと変わった呼び出しシーケンス
        18.6 ゲストブックプログラムの作成
                18.6.1  Perlを使ったオブジェクト指向プログラミング
                18.6.2  CGI.pmのオブジェクトについて
        18.7 CGIプログラムのトラブルシューティング
        18.8 PerlとWeb:CGIプログラミングを越えて
                18.8.1  特別な仕様に基づいたWeb出版システム
                18.8.2  PerlISとPerlScript
        18.9 さらに詳しく知るには
        18.10 練習問題

19章 OLEオートメーション
        19.1 OLEオートメーション入門
        19.2 オートメーションオブジェクトの作成
        19.3 オートメーションオブジェクトの使用法
                19.3.1  Data-Accessオブジェクト
        19.4 VARIANTデータ型のオブジェクト
        19.5 簡単な助言と技法
                19.5.1  Visual Basicを使用したサンプルプログラムからの翻訳
        19.6 練習問題

付録A  練習問題の解答
        A.1     「2章 スカラーデータ」
        A.2     「3章 配列とリストデータ」
        A.3     「4章 制御構造」
        A.4     「5章 ハッシュ」
        A.5     「6章 入出力の基本」
        A.6     「7章 正規表現」
        A.7     「8章 関数」
        A.8     「9章 その他の制御構造」
        A.9     「10章  ファイルハンドルとファイルの検査」
        A.10    「11章  フォーマット」
        A.11    「12章  ディレクトリアクセス」
        A.12    「13章  ファイルとディレクトリ操作」
        A.13    「14章  プロセス管理」
        A.14    「15章  データ変換操作」
        A.15    「16章  システムの情報」
        A.16    「17章  データベースの操作」
        A.17    「18章  CGIプログラミング」
        A.18    「19章  OLEオートメーション」
付録B ライブラリとモジュール
        B.1 プログラムの共有
        B.2 ライブラリ用語
        B.3 標準モジュール
                B.3.1 プログラミング一般:機能が多方面にわたるもの
                B.3.2 プログラミング一般:エラーの処理とログ機能
                B.3.3 プログラミング一般:ファイルへのアクセスとその操作
                B.3.4 プログラミング一般:入出力処理のためのクラス
                B.3.5 プログラミング一般:テキスト処理と画面インタフェース
                B.3.6 データベースインタフェース
                B.3.7 数学
                B.3.8 World Wide Web
                B.3.9 ネットワークとプロセス間通信
                B.3.10 CPAN(総合的Perlアーカイブネットワーク)へのアクセスの自動化
                B.3.11 時刻とロケール
                B.3.12 組み込み関数へのオブジェクトインタフェース
                B.3.13 開発者向け:自動取り込み機能と動的な取り込み機能
                B.3.14 開発者向け:言語の拡張機能とプラットホーム開発の支援
                B.3.15 開発者向け:オブジェクト指向プログラミングの支援
        B.4 CPAN:標準ライブラリよりも優れたライブラリ
        B.5 Win32拡張機能
付録C ネットワーククライアント
        C.1 ネットワーク
        C.2 簡単なクライアント
        C.3 Webgetクライアント
付録D 言及しなかった項目
        D.1 何を説明していなかったのか
        D.2 完全なプロセス間通信
        D.3 デバッガ
        D.4 コマンド行
        D.5 他の演算子
        D.6 山のように存在する関数
                D.6.1   grep関数とmap演算子
                D.6.2   eval演算子(およびs///e)
        D.7     あらかじめ定義されているさまざまな変数
        D.8     *FREDを使用した記号表の操作
        D.9     正規表現の追加機能
        D.10    パッケージ
        D.11    埋め込み機能と拡張性
                D.11.1  セキュリティの問題
                D.11.2  switch文やcase文
                D.11.3  直接的な入出力:sysopen、sysread、syswrite、sysseek
                D.11.4  Perlコンパイラ
                D.11.5  データベースのサポート
                D.11.6  複雑なデータ構造
                D.11.7  関数ポインタ
        D.12 最後にひとこと
索引
訳者あとがき

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]