Laravelがルーキーとしてでてきてから勢い良くシェアを拡大しているのがわかります。続いてSymfony、Codeigniterの人気があることがわかります。CakePHPは他のフレームワークにおされて徐々にシェアが下がってきており、FuelPHPはシェアが低い状態が続いています。 そんな感じだったように記憶しています。, たしかバージョンは1.1。

発注ラウンジは、システム開発の発注に必要な様々なノウハウや発注ナビで実際に開発された発注者様のインタビューなど、発注担当者様のための情報発信サイトです。, 「ケーキ」というユニークな名が付けられたCakePHPは、PHP言語の数あるフレームワークの中で世界的に人気があります。本記事では、プログラミング言語におけるPHPの基本情報から、CakePHPの特徴まで詳しく解説します。, ・ベストマッチな発注先が見つかる・たった1日のスピード紹介・ITに詳しいコンシェルジュがサポート・ご相談~ご紹介まで完全無料, そもそもPHP(Hypertext Preprocessor)とは、プログラミング言語の一種で、カナダ人のプログラマである、ラスマス・ラードフ氏(Rasmus Lerdorf)によって開発されました。言語の特徴として、PHPはWebページやWebアプリケーションの作成に特化している言語です。特に、ショッピングサイトやSNSのように、見る時間帯やタイミングによって内容が変化する「動的なWebサイト」の作成に向いています。検索エンジンやポータルサイトとして馴染み深いYahoo!や、世界的なSNSサイトとして知られるFacebookも、PHPを使って作られた代表的なサイトです。, PHPは、習得難易度の高い言語である「C言語」の設計を踏襲する形で作られているものの、C言語よりもコードや文法がわかりやすく入力も容易であることから、初心者にも覚えやすい言語として人気を集めています。「自社のショッピングサイトを作りたい」、「ホームページにお問い合わせフォームを付けたい」と考えている企業担当者にとっては、PHPを扱える開発企業やエンジニアの存在が役立つことでしょう。PHPの詳細はこちらの「PHPとは?プログラミング初心者向けにPHPの基礎知識を解説!」をご覧ください。, 出典:CakePHP – Build fast, grow solid | PHPフレームワーク, CakePHPとは、先に挙げたPHP言語を使用したオープンソースのフレームワークのことです。フレームワークは、言わば「開発を助ける機能の詰め合わせ」のことで、CakePHPにもWebアプリケーションやWebページを簡単に制作するための機能が数多く搭載されています。CakePHPは、サーバ設定や動作環境の整備がほとんど必要ないうえ、日本語の学習サイトが豊富に存在するので、導入の手軽さと学習のしやすさには定評のあるフレームワークです。, 2005年に登場したフレームワークながら、令和になった現代でも細かなアップデートが行われており、CakePHPの人気の高さが伺えます。ちなみにCakePHPの「Cake」とは、お菓子のケーキのことであり「ケーキを焼くように簡単に開発できるから」という意味で名付けられています。CakePHPのロゴやオフィシャルサイトでも、ケーキのデザインがふんだんに取り入れられており、制作者のユーモアセンスが溢れるフレームワークと言えるでしょう。, CakePHPの主な特徴として、「MVCアーキテクチャ」で構築されたフレームワークである点が挙げられます。これは、以下の3つの機能を基本設計とするものです。, CakePHPのWebアプリケーションは、このMVCアーキテクチャの概念で設計されています。それぞれの機能が独立しているため、エンジニアごとに担当を決めて分業がしやすく、機能の拡張や仕様変更にも対応がしやすいメリットがあります。このMVCアーキテクチャは、「Ruby on Rails」のような開発のしやすさに重点を置いたフレームワークに採用されることが多く、CakePHPもRuby on Railsの概念や設計を参考に作られています。, CakePHPには、bake機能と呼ばれる開発速度の向上に役立つ機能が搭載されています。これは、上記のMVCに関わるファイルを作成する機能で、対話形式の質問に答えるだけで、プログラムの自動生成が行われます。この機能により、MVCの基礎部分であればソースコードを書かずに作成することも可能です。ちなみに、bakeは「焼く」という意味で、CakePHPの由来である「ケーキ」にちなんで、機能名にも洒落た名前が採用されています。このほかにも、CakePHPにはテキストボックスやラジオボタンのようなフォーム関連のタグを自動生成する「フォームヘルパー」や、テーブルレコードの追加や削除などを行うマスタ画面の作成に役立つ「スキャフォールド(scaffolding)」など、bakeのように開発の手間を省くための機能が搭載されています。, CakePHPには、オフィシャルページから参加できるコミュニティが存在します。このコミュニティには、国内のみならず世界中のCakePHPエンジニアが参加しており、情報交換や不具合の報告、CakePHP専用のカンファレンス参加予約に至るまで、多彩な用途に使用されています。, 冒頭で述べた通り、PHPは「動的なWebページ」の作成に特化したプログラム言語です。CakePHPで作られるページも、以下のように動的なWebサイトやアプリケーションが多くなっています。, PHPは、会員情報の登録ページや商品の購入ページが必要なECサイトの作成に向いています。知識や技術の売買ができる、スキルのフリーマーケットサイト「ココナラ」も、CakePHPを使って作成されたWebサイトとして有名です。このほか、イベントやセミナーなどの告知と募集を行う集客サイトの作成にも、動的なページ作成に長けたPHPを使って構築することができます。, グループウェア(Groupware)とは、社内で情報共有やコミュニケーションを行うためのツールです。電子掲示板や会議室の予約機能、ドキュメント共有機能などを搭載するためには、PHPのようなプログラム言語が重宝されるでしょう。システム開発を担う企業の中には、グループウェアのような業務管理システムを開発するフレームワークに、CakePHPを用いるケースも少なくありません。, 世界的に使用されているブログ作成ソフトこと「WordPress」は、PHPで開発されたサービスとして知られています。WordPressで作られたサイトのカスタマイズやプラグインの作成には、PHP(またはHTML)の知識が必要となることがあります。WordPressを扱うブロガーやアフィリエイターにも役立つでしょう。, ただし、PHPやCakePHPは開発の手軽さに優れる反面、プログラムの処理速度が遅いデメリットがあります。比較的規模の小さいWebサイトやアプリケーションを作るのに適していますが、大規模なデータを扱う場合においては不向きであることを留意しておきましょう。, PHPのプログラム言語で使用するフレームワークは、機能の拡張性に優れるLaravel(ララベル)や、処理速度の速さに定評のあるCodeigniter(コードイグナイター)など、バリエーションに富んだフレームワークが数多く存在します。令和の現代においては、Laravelがシェアを伸ばしつつありますが、国内人気や汎用性の高さに関しては、CakePHPが依然として人気を集めています。もしも企業担当者の方が、ECサイトやグループウェアの開発を検討している場合、フレームワークとして実績のあるCakePHPを使ってアプリケーションを作ってみてはいかがでしょうか。, 運営会社 | 利用規約 | プライバシーポリシー | 掲載のご案内(開発会社様はこちら) | ご要望・ご質問・ご解約, Copyright (c) hacchu navi Inc. All Rights Reserved, PHPは、習得難易度の高い言語である「C言語」の設計を踏襲する形で作られているものの、C言語よりもコードや文法がわかりやすく入力も容易であることから、初心者にも覚えやすい言語として人気を集めています。「自社のショッピングサイトを作りたい」、「ホームページにお問い合わせフォームを付けたい」と考えている企業担当者にとっては、PHPを扱える開発企業やエンジニアの存在が役立つことでしょう。PHPの詳細はこちらの「, CakePHP – Build fast, grow solid | PHPフレームワーク. 無料でできるプログラミング学習サイトおすすめ19選【2020年最新】 ・ビューをサポートするコンポーザー, 現在PHPのフレームワークのなかで最も利用者多いのはCakePHPとLaravelを比較しました。, 日本国内での一番人気はCakePHPで、二番人気はLaravelとなっていますが、CakePHPの利用者は減少傾向にあるので、今後はLaravelが一番に人気になるかもしれません。, PHPは日本ではPHPの案件やエンジニアの求人数が最も多く、人気の言語です。LaravelはPHPのフレームワークですので、PHPがこのまま人気であり続ける限り、そのフレームワークも便利なものが人気を擁します。Laravelが世界で急激に人気が急上昇しているのはLaravelが便利であるという故です。, 日本でもCakePHP人気からLaravelへ移行されていくでしょう。また、この先、Laravel以上に便利なフレームワークが登場するまではLaravelの人気も右肩上がりになると思います。, Laravelを独学で勉強する場合他のフレームワークやプログラミング言語と同様に学習サイトや、書籍を購入して行うのが一般的です。ですが、一説によるとプログラミングを独学でする人の90%が挫折すると言われています。学習サイトや書籍での学習が難しかった場合、週1,2回プログラミングに通って勉強する。しかし、プログラミングは英語などと同じように、毎日学習しなければ身につきません。, LaravelはPHPのフレームワークですので、もちろんPHPに関する勉強から始める必要があります。PHPは主にWebアプリケーションの作成に使われており、Webアプリケーションを作り上げるためには、HTML/CSSなどについても学ぶ必要があります。これらは長期的にダラダラと勉強するよりも短期間で集中的に勉強した方が伸びます。, 留学をすれば、初心者であっても短期から長期に渡り、プログラミングのことだけを考えて、勉強に集中できるので使えるスキルを身につけることができます。プログラミングの学習に一番重要なことは継続することです。最低一日45分でも、1か月は継続する覚悟なくてはなりません。, インドIT留学のMISAOでは超格安の値段で、インド人講師からほぼマンツーマンの本場のプログラミングレッスンを受けれます。また、生徒のほとんどがプログラミング初心者ですが、意識の高い生徒が多く、毎日9:00-23:00までコードを書いています。インドという環境もいい意味で遊びの誘惑が少ないため、勉強するには最高の環境です。もし留学に興味を持たれましたら、下記リンクから是非、お問い合わせ下さい。 近年日本のみならず世界で急激に人気が出ているWebフレームワークがLaravel(ララベル)です。PHPのフレームワークのなかで今、最も世界中から注目されています。現在はまだまだマイナーなフレームワークですが、海外の普及率がダントツで伸びています。日本でも今後、ユーザー数が伸びていくでしょう。そんなLaravelについて初心者向けに紹介していきます。, LaravelとはオープンソースのPHPで書かれたWebアプリケーションフレームワークで、「簡単なWebアプリケーションを自動である程度のところまで作ってくれるフレームワーク」といえます。そのため、データベースの構造を考えたり、While文の書き方を考えたりする必要がなく、初心者にとっても取り組みやすくなっています。, MITライセンスの下でリリースされており、そのソースコードはGitHubにホスティングされていて、GitHubでのスター獲得数がPHPフレームワークの中で最も多いなど、人気のフレームワークの1つとなっています。, Laravelの名前は『ナルニア国物語』に登場するナルニア国の王都、ケア・パラベルにちんでいるという面白要素も含んでいます。, Laravelは処理スピード重視ということではないため、他のフレームワークに比べてスピードは遅いですが、コードが書きやすく、また、見通しがよく、開発がしやすいように作られているのが特徴です。フレームワークとしてのクセもなく、学習コストも低いので、初心者にとっても習得しやすいフレームワークです。, その他以下のような特徴があります。 私が約1年前に書いた記事の続きを書くことにしたのは次の質問を受けたからです。. その経験を通してプログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。 好きなフレームワークは?と聞かれればCakePHPと即答します。 →フェイスブックはこちら, 現役生徒500名以上が在籍する弊社のプログラミング学習プランをあなたに合わせて最短1分で診断します。, Webプログラミングの必須言語!PHPが学べるプログラミングスクールおすすめ15選.

Webシステムの開発のためのプログラミング言語として登場したPHPですが、現在も多くのサービスやシステムを生み出しています。, そして、その開発を更に開発しやすくするために数多くの「フレームワーク」が存在しています。そんな多くのフレームワークの中でも、, こういった悩みをお持ちの方に向けて、CakePHPとLaravelをシェア率やメリット・デメリットなどについて比較しきます。, フレームワークとは、PHPでWebアプリケーションやシステムなどを開発する際に土台として機能してくれるソフトウェアのこと。様々な開発で一貫して活用できるソースコードなどを組み合わせて作られた、骨組みのようなもののことをいいます。, 本来フレームワークを使わずにシステムなどを構築していくと、膨大な量のプログラムを記述する必要が出てきます。しかしフレームワークを活用することで、プログラム記述量を大幅に削減できて作業工数を下げることが可能。, また、経験の浅いエンジニアでも一定のセキュリティが担保されるのも、フレームワークを利用する大きなメリットです。PHPで開発を行うときは、フレームワークを是非使うようにしましょう。, PHPフレームワークでよく比較されることの多い「CakePHPとLaravel」ですが、どこも的を得た回答が出ているサイトや情報はなかったので、現役エンジニアの筆者が実際に使ってみた感想も含めて違いをレビューしていきます。, CakePHPは、なんと言っても開発スピードの速さが魅力。しかし、規約に少しでも逸れた柔軟なことをしようとすると、縛られることが多いです。その反面、開発者の入れ替わりや開発規模の拡張に対しては実装に一貫性が出るので、比較的容易に行うことができます。, Laravelは先ほども記載したように、なんと言っても柔軟性が高いです。また、便利なメソッドやライブラリが豊富にあるので、例えば一つのシステムを構築するにしても複数の実装方法が存在するのも特徴の一つ。, では、次からはCakePHPとLaravelのフレームワークそれぞれについて詳細に特徴やメリットデメリットをみていくことにしましょう。, CakePHPはオープンライセンスで、MITライセンスとして提供されています。このMITライセンスは提供されたソースコードを自由にカスタマイズして利用することが可能なライセンスです。, 特徴としては「MVCモデル」が採用されており、役割分担させて高速で開発を進められること。また、現在も開発が進められているフレームワークで、今後の発展にも期待できます。今後の活躍から目が離せませんね。, CakePHPを使いこなすにはPHPのスキルはもちろん必須ですが、WebアプリケーションやWebシステムの開発がメインになるので、HTML/CSSやJavascriptの知識も必要です。いくつものスキルが必要になりますが、CakePHPではそれら全てをうまく取り入れられており、より便利に開発を進めることができます。, では、そんな一見万能に見えるCakePHPのメリットやデメリットに、どのようなものがあるのかをみていきましょう。, 簡単にあげるだけでもこんなにたくさんのメリットがあります。CakePHPは高速に一定のセキュリティが担保されたプロジェクトを、あまり経験のない方でも比較的手軽に開発できるのが最大のメリットですね。それ以外にも初心者でも理解しやすいという点もCakePHPの強みです。, また、これからCakePHPを勉強される方や、学習を検討されている方も安心して欲しいのが、CakePHPには活発なコミュニティが存在していること。もしわからないことや第三者の意見が欲しくなった場合には、コミュニティを経由して意見を募ったりすることもできるので、安心して開発や勉強を進められます。, ここまでの話を聞くと、一見良いことだらけでデメリットなんてないのではないかと思う方も多いでしょう。しかし、CakePHPのデメリットは主に下記の通りです。, 基本的には冒頭でもお話しした、「規約が厳しい」という点。規約が厳しいということは、誰がプログラミングしても規約通りにコーディングされるため、一貫性が出てコードの可読性も向上します。その反面、柔軟なカスタマイズ性に欠けるというデメリットにもなってしまうのです。, もし当初計画していたプロジェクトに、「追加である機能を追加したい」「こんなことも実装したい」といった要望が増えてくると、CakePHPだと対応に時間がかかってしまうこともあり得ます。そのため、最初の設計段階からしっかりと計画を立て、どのくらい拡張性があるのかや、コストなどとのバランスを保ってフレームワークを慎重に選ぶ必要があります。, Laravelは、CakePHPよりも後発で開発されたフレームワークです。主に大規模な開発に10年以上の実績を残しているPHPのフレームワーク「Symfony」をベースに作られているため、しっかりとしたものと言えます。, Laravelはまだ新しいフレームワークということで、バージョンアップが頻繁に行われています。そのためどんどん新機能が増えてきており、できることが増えたり、今までやっていたことがより簡単に実装できたりしています。, また、LaravelはPHPフレームワークとしてはまだまだ新参者ですが、その人気度は鰻登りに上がっており、2016年ごろにはそれまでずっと人気度1位だったCakePHPを抜いたほど。コミュニティも活発に動いているため、初心者にとっての参入障壁も低いのも大きなメリットの一つです。, 処理速度が遅いという点に関しては、それほど気にするレベルではありません。そのプロジェクトがよっぽど大規模で細かいところまで気にしなければならない場合や、よっぽど無駄の多いコーディングをしない限りはそれほど気にしなくて良いでしょう。, ただ、複数人でプロジェクトを進めてソースコードを複数人が触る際には注意が必要です。これは、Laravelの柔軟性の高さ故の問題。, 人によっては同じ処理でも全然コーディングの仕方が変わることもあるため、大きめなプロジェクトの場合やコーディングに携わる人が複数人に渡る場合は、コーディング規約やルールを先に決めておくのがおきましょう。そのルールを守ることが今後の運用に大きく関わってくるので、注意が必要です。, 先ほども少し話題にしましたが、CakePHPとLaravelを人気率で比較してみましょう。まずは下記の画像をみてください。, 過去5年間のGoogleトレンドでCakePHPとLaravelを比較してみました。見て分かる通り、2016年ごろからCakePHPをLaravelが追い抜く形になり、その後はLaravelがグングン伸びています。CakePHPよりも後発のLaravelですが、現在では名実ともにLaravelの方が上をいっていると言っても過言ではないでしょう。, これをみても分かるように、現在のPHPフレームワークでは圧倒的にLaravelが人気。実際に求人などをみてもPHPのフレームワークはLaravelをスキルの利用条件に入れている企業が増えています。, 私も実際にエンジニアとして様々な案件に携わっていますが、少し前に開発されているWebサービスなどはCakePHPが使われており、新規開発や最近開発されたプロジェクトに関しては、圧倒的にLaravelが利用されていると実感しています。, では最後に結局CakePHPとLaravelはどっちの方がおすすめなのかを確認してみます。判断する基準は様々ですが、主に使いやすさやカスタマイズ性、運用していくうえでの柔軟性などから比較していきます。, 結論から言うと「Laravel」が圧倒的におすすめ。理由はたくさんありますが、順番にみていきましょう。, これについては開発するチームによってはメリットにもデメリットにもなる可能性があるのですが、LaravelではPHPのソースコードを配置するディレクトリ(名前空間)の場所は基本的に自由です。もし既存のディレクトリの変更や新規ディレクトリの追加などを行う際には、無理なく簡単に実装できます。, それに比べて、CakePHPでは既存のディレクトリ構成を変更するのはフレームワークの特性的に無理があります。もちろん無理やりやろうと思えば不可能ではありませんが、フレームワークの規約違反になるため現実的には実行不可能です。, そのため、柔軟に実装の変更ができないCakePHPよりも自由に変更する余地のあるLaravelの方が、今後もし何かあったときのための拡張性を考えるとおすすめとなります。, バリデーション処理を記述する場所が異なります。CakePHPではバリデーションの処理をMVCのモデルに記述するのですが、Laravelではコントローラーに記述します。, CakePHPで行うバリデーション処理をモデルに記述するメリットは、その記述したバリデーション処理を意識することなく使い回すことができること。しかし実際に現場に入ってみると、バリデーション処理を意識することなく使い回すことなんてあまりありません。, このようなバリデーション処理の記述場所が違うということはCakePHPとLaravelの違いのなかで、一番影響のある点ですね。, Webアプリケーションの開発をしていると、意外と面倒な処理の中に「ファイルのアップロード処理」があります。CakePHPではファイルやディレクトリの操作ができるFileクラスやFolderクラスが用意されていますが、アップロードされたファイルを処理するインターフェースは用意されていないので、その辺りがとても不便。, Laravelはファイルストレージ用のインターフェースが公式で用意されているので、数行でアップロード処理ができるのはもちろんのこと、パラメーターやプラグインを活用することでローカルストレージからクラウドストレージに切り替えることも簡単です。, 何度も言いますが、CakePHPは規約が厳しく独自の概念も多く存在しています。規約をしっかり覚えて正しくコーディングすることができればかなり早く開発を進めることができまが、独自の概念が多すぎて他のフレームワーク への応用ができない場合がとても多く、フレームワーク自体の応用が非常に難しいです。, やり始めこそCakePHPの方が習得コストは低いですが、やりたいことが増えてくるとそのカスタマイズ性なども含めて、Laravelの方が学習コストが低くなります。, 先ほどと少しかぶる内容になってしまうのですが、CakePHPはその厳しい規約や独自の概念と複雑なコアコードにより、コアコードに悩ませれます。その反面Laravelでは柔軟に様々なアプローチ後行えるため、コアコードもLaravelの方が規約が少ない分可読性は高いです。, 今回は、Webアプリケーションなどの開発の際に使われるプログラミング言語である、PHPのフレームワーク「CakePHP」と「Laravel」について、それぞれどのような良いところや悪いところがあるのかを解説し、結局どちらがおすすめなのかを比較しました。, 行う開発・プロジェクトがどのような内容で、今後どのような運用をしていくかなどによって向き不向きは変わってきますが、単純なフレームワークとしてのポテンシャルや柔軟性を比較。また、人気率などのトレンドでの比較などもしてみた結果、Laravelの方が現在のトレンドでは優位な位置にいることがわかります。, この記事を見て、今後の運用で上手に使い分けていけば、エンジニアとしての手腕もアップします。是非どんなプロジェクトにはこのフレームワークが良い!と根拠もつけて提案できるように、その基準にしてみてください。, 当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。