サポーターズ CoLab 勉強会の資料です。 2018/01/25 https://supporterzcolab.com/event/259/ ※タイトルを「【PHP7 実践編】事例で学ぶ CakePHP と Laravel の徹底比較」と改めています。 2017/09/13 https://supporterzcolab.com/event/137/ Read less
この記事は、CakePHP3 Advent Calendar 2016 25日目の記事ではありません。 まとめ Controller/Componentにビジネスロジックを書かない カスタムfindを活用しよう 1テーブル1モデルではなく、場面によってモデルクラスを増やそう Modelless Form / Tableless Modelを活用しよう beforeSave/afterSaveは諸刃の刃 Behaviorにビジネスロジック書くのもあり View層ではView Cell/View Blockを活用しよう CRUDプラグインお勧め この記事を書いた動機 CakePHPにおいてビジネスロジックに該当するものをComponentに書くという記事を見かけるたびに、それはアンチパターンじゃないのと感じている日々。 ビジネスロジックをどこに書くべきか、共通処理をどこに書くべきかというのを、
タイトルは若干釣りです。 CakePHPにはマイグレーションツールとして、CakeDC/Migrations(CakePHP2)や、Phinxベースのcakephp/migrations(CakePHP3)があります。 とても有用ですし、CakePHP Bakerはみんな知っているツールです。自分もずっとお世話になっていました。 ただ、ちょいちょい困ることもあったので、最近はRidgepoleを使い始めています。 Ridgepole github.com Ridgepoleはクックパッド社で利用されているというマイグレーションツールです。 techlife.cookpad.com Ridgepoleは最大の利点が、1つのSchemafileを管理するだけでスキーマのべき等性を担保してくれるということです。 RidgepoleはDSL自体がRailsのActiveRecordと同じだというこ
CakePHP3 公式ページに掲載されているブックマーク・アプリケーションのチュートリアルをやってみました。CakePHP3 はモデルのデータを配列じゃなくてオブジェクトで取得できたり、Composer が標準で対応されたりとさらに便利になっています。 ブックマークチュートリアル – CakePHP Cookbook 3.x ドキュメント Bookmarker Tutorial – CakePHP Cookbook 3.x documentation 公式のチュートリアルと違う方法で進めた箇所もありまして、例えばデータベースのテーブル作成にマイグレーション機能を利用している点などです。本格的な開発時にはマイグレーションを使うのは必須になりますので。 CakePHP 3 を使うためのシステム要件は以下をチェック。 インストール・システム要件 – CakePHP Cookbook 3.x ドキ
2. 長谷川智希 とも き @tomzoh とむぞう 開発系趣味 その他趣味 Webサイト開発, iOSアプリ開発 レンタルカートレース, 電子工作(mbed), … TOMZOH お仕事 スマホアプリ受託開発 Mgr デジタルサーカス(株) 副団長CTO 東京都港区南青山(表参道) Facebook CakePHP iOS 3. 長谷川智希 とも き @tomzoh とむぞう 開発系趣味 その他趣味 Webサイト開発, iOSアプリ開発 TOMZOH お仕事 スマホアプリ受託開発 Mgr デジタルサーカス(株) 副団長CTO レンタルカートレース 東京都港区南青山(表参道) Facebook CakePHP iOS
CakePHPという、1つのフレームワークの中での、1つのとらえ方については 他の方の回答が参考になると思いますが、一歩引いて一般的にMVCとサービスというのがどういう関係にあるのか、それぞれの言葉の意味という点で回答します。 質問ではMVCについて、次のように書かれています。 コントローラはユーザからの要求に対して必要な処理を抽出し、 ビューは結果などを伝えるために表示するもの、 モデルはコントローラから要求される処理をまとめておくものだと認識しています。 この分類はそんなに間違っているということはありません。しかし、実際「コントローラから要求される処理」にはいろいろな種類のものがあります。たとえば、 DBに情報を保存する/DBから情報を取得する メールを送信する アップロードされた画像ファイルのサムネイルを作成する があります。これらの何がモデルで、何がビジネスロジックで、何がサービス
一部の方には事前にお話していましたが、わたしも共著で執筆に参加した「CakePHPで学ぶ継続的インテグレーション」という、CakePHPを使って継続的インテグレーションを実践するながれを解説した書籍が9/19にインプレスから出版されます! CakePHPで学ぶ継続的インテグレーション 作者: 渡辺一宏,吉羽龍太郎,岸田健一郎,穴澤康裕,丸山弘詩出版社/メーカー: インプレス発売日: 2014/09/19メディア: 単行本(ソフトカバー)この商品を含むブログを見る 既にインプレスさんのサイトやAmazonにも掲載されています。まだ、書影が反映されていませんが、予約受付中です!是非ポチッとお願いします(^^。 今年頭頃のミーティングから約9ヶ月、途中本業が忙しくなかなか執筆がすすまなかったりもしましたが、なんとか書き上げることができました。今回、初めて僕自身の企画+執筆のとりまとめをすることに
CakePHPでRESTful APIを作って、Backbone.jsのデータの永続化をサーバサイドで行う方法をメモしておきます。RESTful APIは、FuelPHP等、その他のPHPフレームワーク、Ruby on Rails等でも簡単に作成することができますので、各々好きなものを選択してください。ここでは、CakePHPを使った例を示します。 ここで制作したアプリケーションは、以下よりダウンロードできます。 Backbone ToDos with CakePHP RESTful API – GitHub 開発環境開発環境は以下の通りです。それぞれ執筆時点での最新バージョンを用いました。 ソフトウェアバージョン
4月22日追記。細かい表現、データの追記、リンクを修正しました。Laravel の作者による Laravel 4 とSymfony 2 の比較はこちらの記事をご覧ください。 2013年においてもっとも注目すべき PHP フレームワークとして Laravel を挙げる。 執筆時点で Laravel の知識はほとんどないが、新しいプロジェクトでありながら、英語圏においてさまざまなチュートリアルが書かれおり、熱烈なファンを獲得したと見られる。ほかの PHP フレームワークの開発プロジェクトが抱えている将来の課題を考慮すると、Laravel を学ぶ価値はあると考えられる。 4月21日の時点で GitHub のスターの数は3971であり、2000年代後半からプロジェクトが存在していた CakePHP(3741) および Zend Framwork 2 (3905)を超え、PHP フレームワークとして
はじめに CakePHPで何らかのオブジェクトを操作する場合、対象となるオブジェクトの種類やどこからアクセスするかによって方法が異なる場合があり、それ以前にそもそもインスタンス化されていないことを知らずにアクセスしようと無謀な挑戦を試みたりすることがあります・・・よね?自分の経験上、始めたばかりの時はここで躓くことが結構多く、今でも分からずに調べることが多いですし、あまり使っていないと同じ事を何度も調べたりもしてしまいます。このエントリは、あるオブジェクト「に」あるオブジェクト「から」アクセスする方法について調べたものの備忘録です。 初心者のかたはどうぞ「 初心者の方へ 」にまず目を通してください。 内容は適宜追加・修正される可能性があります。 すべてCakePHP2系の情報です。1系の情報が今後追加されることはありません。 可能な限り公式ドキュメントへのリンクを張っています。日本語訳のあ
CakePHP Advent Calendar 2012の15日目の記事です。 昨日は@lifegoodさんの「Phing を利用して CakePHP を継続的インテグレーション」でした。 僕も最近Jenkinsでテストの自動化をしたんですけども、設定ファイルで結構苦労したんで、早速参考にしたいと思います。 最近はCakePHPをガシガシ触っているわけではないので、新しいネタがなかなか無いのですが、普段自分がCakePHPをセットアップしている時にやっているもろもろのことをまとめてみたいと思います。 CakePHPの管理はGitで Composerでインストール作法が今後メインになっていく様な流れを感じますが、会社で普段からGitを使っているのもあり、Gitで管理してます。 基本的にCakePHPのコア部分はgit-submoduleで管理してます。 まずはgit-cloneしてソースを持
前職を退職してもう半年以上経ってしまいました。おかげさまで、レガシーなコードとのバトル等色々お仕事しています。 さて、先日のPHP Matsuri2012での@ryuzeeさんの発表を聞いて、開発環境や手法を改善するべく、今月から始まったプロジェクト用の環境を構築しています。 CakePHPは最新で! CakePHPの最新stable版は 2.2.3 ですが、既に 2.3.0-beta が公開されています。幾つか2.3.0-betaの機能で使いたかったものがあったのと、今回のプロジェクトのリリース時期が来年の5月という事もあって、2.3.0-beta を使って開発をしています。来年の5月なら2.3.0Stable版がリリースされるんじゃないかとの読みです(^^;さて、どうなるでしょうかw? 出来る限り公開されているPluginを使う 前職の職場では、ある程度蓄積された自前のPluginがあ
PHPフレームワークの速度比較では、HelloWorldを表示するのみの単純なアプリを用いた計測を元に比較表が作られることが多いです。特に後発のフレームワークは分かりやすい特徴付けとして速度をアピールする傾向にあるため、その比較表を元に N倍速いというアピールをしています。 PHPフレームワークを使うということは、DBまで絡めたWebアプリを作ることがほとんどなため、HelloWorldアプリの比較よりは、DBからレコード取得して表示するまでの処理速度を比較したほうがより現実に近い指標になると思います。特にCakePHP1系ではDBのデータ取得も独自ドライバになっていますし、モデルの処理も重いのでそこまで含めて他と比較したほうが良いと思ってます。 今回はDBから1レコード取得して表示するという簡単なアプリで各フレームワークの速度を評価しました。フレームワークに備わっているViewキャッシュ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く