*

PHP初心者の私がCodeIgniterを勉強して感じた4つのメリット、2つのデメリット

公開日: : CodeIgniter, PHP

medium_7374193248
photo credit: Tc Morgan via photopin cc

PHPを本格的に始めて、いやプログラム自体を真面目に始めて約4ヶ月、どうもOsamuです。

やっとこさプログラミングってどんな感じなのか、どんな所に面白さを感じるのかという部分はモヤッとしながらも理解できてきた。そんな感じがしています。

さて、2014年の1月からプログラミング、PHPに触れ始めたのですが、最初に触れて今でも使っているフレームワークは「CodeIgniter」です。日本語だと「コード点火装置」。うん、やっぱこういうのは日本語訳しちゃイカンですね。

もう1つ触れたフレームワークがsymfonyなのですが、今のところ好みなのはCodeIgniterの方です。

さて、今回は4ヶ月がむしゃらにCodeIgniterを触り続けた私が感じた、初心者目線でCodeIgniterを勉強する4つのメリット、そして2つのデメリットをご紹介します。

PHP初心者やCodeIgniterに触れた事のないPHPプログラマーの参考になれば幸いです。

CodeIgniterを勉強して感じた3つのメリット

medium_7374235216
photo credit: Tc Morgan via photopin cc

メリット1. フレームワークとして学習する事が少ない

まず1つ目のメリットですが、学習するコストが非常に少ないという事です。CodeIgniterとして覚える事が非常に少なく、PHPを理解していればあなたの学習する時間と、脳みその容量コストは非常に少なくて済みます。

symfonyを批判するわけではないですが、symfonyに触れた時はまず覚える概念が結構難しかったのです。CodeIgniterはフレームワークに始めて触れるPHPプログラマーにも非常にやさしいと言えます。

これは特に初心者には嬉しい限りです。

メリット2. 構造がシンプル、直感的、エキサイティング!!

構造がシンプルです。シンプルすぎてそりゃもうエキサイティングです。

CodeIgniterはMVC(Model View Controller)を採用しておりますが、その流れが非常に分かりやすいのです。

又、具体的な説明はユーザーガイド日本語版を参照して頂くのが分かりやすいですが、個人的にURLの最初のセグメントがコントローラークラスであるこの構造が非常に分かりやすいのです。

どうゆう事かというと

example.com/arubeh

というURLがどこのコントローラークラスなのかというと、凄くシンプルで

applicationフォルダ内の、controllersフォルダ内の、arubeh.phpとを参照すれば良いのです。コレ、凄い、シンプルで、見やすくて、初心者には、最高!

メリット3. 日本でもユーザー会が定期的に開催されている

3つ目のメリット、CodeIgniterユーザ会が定期的に開催されているという点です。

例えば1回目の様子。そして2回目の様子。

スタンドアロンな周りにPHPプログラマーがいない方にも、仲間を得る集まりが開催されているのは嬉しい所です。

私もcodeigniterに始めて触れた時に、すぐ2014年2月に実施された3回目に参加しようと申し込みました(業務都合で参加はキャンセルしてしましました、関係者の方々申し訳ありません)

しかし、こういった機会があると分からない時に質問できる、逆に分かる時には助けてあげられる仲間が増えて非常に良いと思います。

私も次回は是非参加したい!

メリット4. 世界的には大人気のフレームワーク

2014年2月PHPフレームワークのトレンドを見ると、世界的に見てCodeIgniterの人気がまだまだ1位である事が分かります。

と、いう事はです。

困った時にGoogleで検索すると情報がたくさんあるって事ですね!私も詰まった時には色々と調べました。情報が多くあるのは初心者にはまず必要な条件ですね。

まぁ日本での人気はまぁまぁなので、海外に情報が多く存在している。という状況ではありますが。

CodeIgniterを勉強して感じた2つのデメリット

medium_2476839380

デメリット1. 日本の参考書が1冊しかない

世界的には1番人気のあるPHPフレームワーク。なのに、なのに、日本での参考書は1冊しかないのです・・・。なんでやねん!

又、私も最初の勉強の時に買って読みましたが、非常に濃密に書かれている本で素晴らしい内容なのですが、書かれている頃のバージョンが1.6.1で、現在の最新バージョンが2.1.4。そして2.1.4をインストールしてしまうと本の通り内容を進めていく事ができません。

『CodeIgniter徹底入門』に対するノートを活用する事で本の通り進めていく事ができますが、初心者には中々厳しいです。事実私は結構つまづきました。

Web上には英語、日本語と多くの情報はありますが、本で個人的に黙々と勉強したい方は最初戸惑うかもしれません。

デメリット2. 大型の開発業務に向かない

調べてみると多くのプログラマーの方がブログでも書かれている事なのですが、CodeIgniterは大型の開発に向かないとよく指摘されています。

上記でも紹介したsymfonyは大型開発に向いたフレームワークのようです。

しかし、大型に向かないとは言っても、個人的にはベンチャー企業や個人で作るシステムには全く不自由を感じておりません。

恐らくCodeIgniterは自動的に何かを作成してくれる機能がなく、自分たちで全てがんばってプログラミングしていく。という部分が大型開発に向かないと言われる要因なのかな。と感じております。

おります。が、現状使っていて不満は感じておりません。

総合的に考えると初心者が勉強するPHPフレームワークとしては最適

medium_2218075860
photo credit: Scott Beale via photopin cc

CodeIgniterは4ヶ月程勉強してみて、最適なフレームワークかな。と強く感じております。

まず

・勉強コストが少ない
・直感的に構造が理解しやすい
・情報がたくさんある(本は1冊しかないけどね)
・日本のユーザー会が存在している

という点は初心者には心強いでしょう。

「プログラミング始めてみたい・・・」「PHPやってみようかな」「PHPはある程度わかったけど、フレームワークってやつに手を出してみるか」

というそこのあなた!CodeIgniterに是非触れてみては如何でしょうか。

お問い合わせはこちら!

関連記事

GREEN_NO20140125500

phpでexif_read_dataを使ってexif情報から撮影日を取得する

写真には画像データ以外に撮影日が取得できます!それがexifデータで、phpではexif_r

記事を読む

small__364815092

codeigniterのヘッダー、フッターはhookでなくloadで対応する

photo credit: mrlerone via photopin cc  

記事を読む

medium_2264763977 (1)

PHPでMicrosoft Translate APIの翻訳機能を使ってみる

photo credit: Robert Scoble via photopin cc レ

記事を読む

large__2433102356

codeigniterはセッション情報をクッキー保持するので、複数台構成でもセッション保持してくれる

サービスが拡大していくと、いずれサーバの複数台構成にしなければならなくなる状況になります。

記事を読む

NKJ56_ICjidoukaisatu500

自動改札機のようにfuelphpでormのModelを自動作成する方法

  自動改札機をみたときに、fuelphpのORMのモデルを自動化させたい!

記事を読む

small__6757040007

codeigniterで、PC版とスマフォ版のテンプレートを自動で振分ける方法

  スマフォ版とPC版のテンプレートを切り替えるために、毎回コントローラでユ

記事を読む

What have I done!?

codeigniterでIE8において別Windowで開くとセッションが切れてログアウトしてしまう

codeigniterで作成したWebサービスをアクセスしているときに、別Windowで開く

記事を読む

phpCon_logo

PHPカンファレンス2015参加後記(PHP7は何が変わったか?)

PHPカンファレンス2015に行ってきましたので、後記を作成してみました。発表内容についての説明より

記事を読む

small__9257451603

codeigniterで共通のヘッダーフッターの読み出しはCI_LoaderをextendsしたMY_Loaderで実装する

codeigniterで共通のヘッダー、フッターを読み込むときは、CI_Loaderクラスを

記事を読む

medium_389294731 (1)

【Codeigniter】$this->db->where() の第3引数にfalseを指定した時の解説

photo credit: trekkyandy via photopin cc PHPに

記事を読む

お問い合わせはこちら!

Comment

  1. 毘政 より:

    始めまして。

    >恐らくCodeIgniterは自動的に何かを作成してくれる機能がなく、自分たちで全てがんばってプログラミングしていく。という部分が大型開発に向かないと言われる要因なのかな。と感じております

    CakePHPだと、cssやJavaScriptを集める”view blocks”とかあるんですが、確かCodeIgniterには、無いですよね。
    symfonyには”スロット”とかいう機能もあります。
    この部分を読みまして、納得いたしました。
    ちょっとスッキリしました。(´・ω・`)

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

お問い合わせはこちら!

35643
SourceTreeで差分ファイルを抽出

GitのクライアントでSourceTreeを利用する時、コミットの差分

2536_normal_1392167345_phpstudy
第104回 PHP勉強会に参加しました!

昨日「第104回 PHP勉強会@東京」に参加し、メイン発表をしました。

laravel_dev
Windows10にLaravel開発環境を構築

本記事は筆者のノートパソコンにLaravelプロジェクトの開発環境を構

1463577479_XAMPP
複数のXAMPPインストール

Windows環境でPHP開発をする際にXAMPPをインストールするこ

Laravel
Laravel 5.1 プロジェクト作成(インストール)

本記事ではLaravel 5.1 LTSを利用して開発するためにLar

→もっと見る

  • AWS構築 - クラウドアドバイザー
PAGE TOP ↑