# CodeIgniter ユーザガイド 日本語版 Version 2.0.1

ユーザガイドを検索

# CodeIgniter の簡単な紹介

## CodeIgniter はアプリケーションフレームワークです

CodeIgniter は PHP を使用して web アプリケーションを構築する人向けのツールキットです。一般に必要とされるタスクのための豊富なクラスライブラリだけでなく、 ライブラリにアクセスするためのシンプルなインターフェースと論理的構造を提供することにより、コードをスクラッチで書くのに比べ、開発プロジェクトをより加速させるのがゴールです。 CodeIgniter は与えられたタスクに必要とされるコード量を最小化することで、 創造的にプロジェクトに集中することができます。

## CodeIgniter は無料です

CodeIgniter は Apache/BSD スタイルのオープンソースライセンスですので、どんなものにでも利用できます。 詳しくは、ライセンス契約書をお読みください。

## CodeIgniter は軽量です

本当に軽量です。コアのシステムは、非常に小さなライブラリを少数だけしか使いません。大変多くのリソースが必要な多くのフレームワークと比べてシンプルです。 基本機能以外に追加で利用可能なライブラリは、必要に応じて、リクエスト時に動的に読み込まれます。したがって、 基本システムは非常にスリムで大変高速です。

## CodeIgniter は高速に動作します

非常に速いです。CodeIgniter よりもすぐれたパフォーマンスのフレームワークを探せるというなら、ぜひ探してみてください。

## CodeIgniter は M-V-C を採用しています

CodeIgniter はModel(モデル)-View(ビュー)-Controller(コントローラ)アプローチを採用しています。Model-View-Controller は、ロジックとプレゼンテーションのすぐれた分離を可能にします。 これは、最低限のコードだけでできたテンプレートファイルをデザイナーが利用して作業するようなプロジェクトで、特に優れたアプローチです。MVC については、 MVC の解説ページで詳しく述べます。

## CodeIgniter は簡潔な URL を生成します

CodeIgniter は簡潔で検索エンジンに親和性が高いURLを生成します。CodeIgniter は、URLに動的システムの代名詞ともいえる一般的な「クエリ文字列」 アプローチを使用せず、セグメントベースのアプローチを採用しています:

`example.com/news/article/`345``

注: 初期設定では URL に index.php ファイルが入りますが、簡単な .htaccess ファイルで削除できます。

## CodeIgniter は強力です

CodeIgniter は幅広い分野のライブラリから構成されています。 このライブラリを使えば、データベースアクセスや Email 送信、データの検証、セッションの維持、イメージの操作、XML-RPC データの取り扱いなどといった、 web 開発においてもっともよく必要とされるタスクを実行できます。

## CodeIgniter は拡張可能です

システムは、自作ライブラリ、ヘルパ関数、クラスの継承やシステムフックにより簡単に拡張することができます。

## CodeIgniter はテンプレートエンジンを必要としません

CodeIgniterには、オプションで利用可能なシンプルなテンプレートパーサが備わっていますが、利用は強制ではありません。 テンプレートエンジンは、ネイティブ PHP には単純にパフォーマンスでかないませんし、覚えなければならないテンプレートエンジンの構文は基本的な PHP より少し簡単な程度です。 たとえば、こんなPHPのコードを思い浮かべてみてください:

`<ul>
<?php foreach ($addressbook as $name):?>
<li><?=$name?></li>
<?php endforeach; ?>
</ul>`

これに対して、テンプレートエンジンで使われる擬似コードはこんな感じです:

`<ul>
{foreach from=$addressbook item="name"}
<li>{$name}</li>
{/foreach}
</ul>`

そうです。テンプレートエンジンの例は、ほんのわずか簡単になっています。しかし、実行する際に疑似コードを PHP に書き戻すため、パフォーマンスという代償を払うことになります。 Codeigniter はパフォーマンスの最大化というゴールのため、テンプレートエンジンの利用を必須としないようにしました。

## CodeIgniter は完全にドキュメント化されています

プログラマはコードを愛し、ドキュメントを書くのを嫌います。もちろん私たちも同じですが、 ドキュメントはコードそのものと同じくらい重要です。 ですから、私たちはドキュメントを書くことを義務付けました。非常に綺麗なソースコードにも、コメントが豊富に書かれています。

## CodeIgniter には、フレンドリーなユーザコミュニティがあります

私たちの コミュニティフォーラム には、たくさんのユーザが活発に参加しており、私たちのコミュニティは拡大しています。