【PHP】フレームワーク CakePHP 3ホール目【本命】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/03/14(金) 15:16:00ID:HF9x5ODX10分で作るCakePHPアプリ for Windows
http://p4life.jp/cake/
マニュアル日本語化
http://www.cakephp.jp/doc/
日本語フォーラム
http://cakephp.jp/modules/newbb/
あとこのへんとか(初心者向けTIPS)
http://www.avatarfinancial.com/pages/cake/
CakePHP入門リンク集
ttp://pub.studio15.jp/2007/11/13/cakephp-links/
【PHP】フレームワーク CakePHP 2ホール目
http://pc11.2ch.net/test/read.cgi/php/1194976228/
【PHP】フレームワーク CakePHP
http://pc11.2ch.net/test/read.cgi/php/1163850802/
0412nobodyさん
2008/03/28(金) 11:10:07ID:???いい質問には、マナーをもって接するが
ろくでもないレスばっかりだからな
0414nobodyさん
2008/03/28(金) 11:14:01ID:???訂正を促すのが良い返答の仕方だよ。
0415nobodyさん
2008/03/28(金) 11:14:44ID:q/btZ3WHやってみなきゃわからないじゃんw
0417nobodyさん
2008/03/28(金) 11:57:59ID:anJTbKapもちろん速度を重視しなくてはならない場面ならば専用メソッド内でSQLを書きます
しかし、上記の様にシンプルなアソシエーションすら動作が怪しいとなると
フレームワーク自体に手を出して最適化させた方がコスト的にベターかなと思います
>>403
複雑なアソシエーションのパターンが出来上がってる時はView使った方がいいですね
今ふと考え付いたのですが、結合済みの仮想テーブルを作って、それを元に
CakePHP側のモデルを構築するアプローチは面白いかもしれません
#仮想テーブルへの更新作業はDB依存のため怪しい臭いはしますが
0418nobodyさん
2008/03/28(金) 12:20:53ID:???負荷を考えるならフレームワークやめろ
CakePHPなんてのは、どうでもいいクライアントに高速納品するための道具てことに気づけよバカ
0420nobodyさん
2008/03/28(金) 12:43:39ID:???> 結合済みの仮想テーブルを作って、それを元にCakePHP側のモデルを構築する
view作ればって言ったのはそういうこと。
面白いかどうかはおいといて、現状の打開策としてはアリかなと思うわけです。
> 仮想テーブルへの更新作業はDB依存のため怪しい臭いはしますが
このDB依存は仕方ないと割り切ればいいんじゃないかな。割り切れるところだと思うし。
0422nobodyさん
2008/03/28(金) 12:53:20ID:???やってくうちに想像しない難点が沢山でてくるよ
0424nobodyさん
2008/03/28(金) 13:04:47ID:???最適化したいならCIスレにいって、このスレからでていけや
0426nobodyさん
2008/03/28(金) 13:34:05ID:???どのフレームワークでも同じこと。
CIでもSymfonyでもRubyOnRailsでも同じだよ。
特にCIは最悪だね。いろんな意味で。
ここではすれ違いだから言わないけど。
0428nobodyさん
2008/03/28(金) 13:44:02ID:???> しかし、上記の様にシンプルなアソシエーションすら動作が怪しいとなると
シンプルではないよ。
CakePHPでもその他でもそうだけどO/Rマッピングというのは
従来の表形式の使いづらいリレーショナルデータベースを
高レベルに扱いやすく使えるようにするもの。
リレーショナルデータベースを基本に設計されたものではなく
より理想的なオブジェクト指向風なデータ構造をもとに設計されたもの。
だからいろんな取り出し方ができる出来る柔軟性がある。
たとえば、behaviorでデータ挿入・取り出し時に色んな処理をかませられる。
そういう柔軟性を持たせながらシンプルなSQLに置き換えるのは容易ではない。
不可能な場合すらある。
なんでもかんでもパフォーマンスを気にして無駄なものを作るのは
初心者のやること。一日働いて3万円人件費をかけるのなら、
その3万円でスペックをあげたほうが総合的に考えてメリットが
高いという時代だから、今は。
0429nobodyさん
2008/03/28(金) 13:50:03ID:???データベースを使う場合、貧弱だよな。
あれならSQL直書きした方がいいってほどメソッドがアホらしいしw
なによりビヘイビアが無いのが一番痛い。
0430nobodyさん
2008/03/28(金) 13:50:47ID:???なんでもかんでもパフォーマンスを気にして無駄なものを作るのは
初心者のやること
サイトリニューアルなど
既存ユーザーが多数いる自社製品ならパフォーマンスを意識する
0431nobodyさん
2008/03/28(金) 13:52:21ID:???マシンスペックを上げろ
0433nobodyさん
2008/03/28(金) 13:55:17ID:???0436nobodyさん
2008/03/28(金) 13:56:12ID:???パフォーマンスはたいして変わんないんだけどなw
0437nobodyさん
2008/03/28(金) 13:57:04ID:???ユーザーが増えると重くなるのはどれでも一緒ですが?
働いていない人は、人件費というコストを計算に入れないからなぁw
まあ、がんばれやw
0439nobodyさん
2008/03/28(金) 13:57:57ID:???0440nobodyさん
2008/03/28(金) 13:58:21ID:???脱却に意味があるというのに、今時SQLなんて低レベルなことやるかよw
0442nobodyさん
2008/03/28(金) 14:00:15ID:???今のCakePHPなら
だったらCIでSQL直書きが最高よ
0443nobodyさん
2008/03/28(金) 14:03:25ID:???重くなりかたが異なってくるんですが?
1回で済む処理を2回のクエリで行ってるとアクセス数が増えたときにクエリ発行数が大きく変わることがわかんない?
ほんとにプログラマなのか?まぁ、がんばれや
0444nobodyさん
2008/03/28(金) 14:05:37ID:???mixiでは”高負荷に耐えるためにJOINを使っていない”んだよ。
http://www.google.co.jp/search?hl=ja&rlz=1T4GGIH_jaJP221JP221&q=MIXI+MYSQL+JOIN+%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3&lr=
0445nobodyさん
2008/03/28(金) 14:07:29ID:???使えていますが? JOINが使われないってだけでしょうが。
パフォーマンスに問題が無い場所で、
複雑なSQLを、SQLを書かずに作れる(買いても作れる)CakePHPと、
SQLを書くのと同等の手間をかけなければならないCIでは
どちらが優れているかは言うまでも無く、CakePHPですね。
0447nobodyさん
2008/03/28(金) 14:09:13ID:???0451nobodyさん
2008/03/28(金) 14:14:14ID:???0454nobodyさん
2008/03/28(金) 14:20:13ID:???0455nobodyさん
2008/03/28(金) 14:21:44ID:???0459nobodyさん
2008/03/28(金) 14:25:14ID:???データベースを分割してJOINが使用できなくなった。
負荷を考えるのなら、JOINなんかするより、
マシンに投資してデータベースを分割(当然マシンも増えているはず)して
アプリケーションで行ったほうがいいということです。
0461nobodyさん
2008/03/28(金) 14:31:33ID:???0462nobodyさん
2008/03/28(金) 14:37:17ID:???データベース部分は、SQLの単語(selectやfromやwhere)を
それぞれメソッドに置き換えて実行しないといけない。
なんとビックリw
だから糞。
0463nobodyさん
2008/03/28(金) 14:38:23ID:???$this->db->select('title')->from('mytable')->where('id', $id)->limit(10, 20);
$query = $this->db->get();
0464nobodyさん
2008/03/28(金) 14:38:41ID:???ただ、「マシンに投資してデータベースを分割(当然マシンも増えているはず)して」が始めからできるわけじゃないんだよね。
だからSQL発行数も含め、パフォーマンスには常に気を遣うわけで。
mixiが今はソフトウェア側でパフォーマンスを気にしてないかっていったらそんなことはないし。
>>460
パフォーマンスの話してるよ。何言ってんの?
もう面倒だからお前いいよ。
0465nobodyさん
2008/03/28(金) 14:40:13ID:???最適化して、あとは楽で速いコーディングをすればいいじゃんか。
パフォーマンスの基礎だよ?
0466nobodyさん
2008/03/28(金) 14:41:27ID:???これいいね。わかりやすい構文だ
CakePHPの
find(null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,)
これに比べれば天と地に差
0469nobodyさん
2008/03/28(金) 14:44:26ID:???$this->db->select('title');
$this->db->from('mytable');
$this->db->where('id', $id)
$this->db->limit(10, 20);
こうなります。
0470nobodyさん
2008/03/28(金) 14:45:17ID:???名無しで必死にレスしてるようだが
名前に番号でもつけてくれないと
今までどんな発言してんかわかんないんだがw
0473sage
2008/03/28(金) 14:50:37ID:JUQ1v1x2ってことはUTF関係か。
0474nobodyさん
2008/03/28(金) 14:50:44ID:???0475425
2008/03/28(金) 14:54:55ID:???>>420
その通りですね。同一アプリケーション内でDBをスイッチする事はありえないので
リスクとしては小さいため十分検討できます(一応、PostgreSQL使ってる方は注意です)
>>424
CodeIgniterもとてもいいフレームワークだと思います
ぜひその情熱で当該スレッドを活性化させて盛り上げて欲しいですね
>>428
確かにアソシエーションの自動判別が面倒(無理)という事情は分かります
面倒なSQLを叩かずオブジェクティブにデータセットを取得できる機能が
すでに実装されていているのですからそれを使うに越した事はありません
この辺りの実装はアプリケーション全体のパフォーマンスに影響するため
サーバ増設前の改良を十分に検討できる部分だと思います
0476nobodyさん
2008/03/28(金) 14:54:59ID:???見ろ他フレームワーク(特にCI)の静けさを!
0479nobodyさん
2008/03/28(金) 15:45:01ID:???0480nobodyさん
2008/03/28(金) 15:54:32ID:???0481nobodyさん
2008/03/29(土) 07:40:57ID:???0482nobodyさん
2008/03/29(土) 09:07:16ID:???0483nobodyさん
2008/03/29(土) 15:28:58ID:???0484nobodyさん
2008/03/29(土) 15:56:30ID:???0485nobodyさん
2008/03/29(土) 16:10:19ID:???0489nobodyさん
2008/03/29(土) 22:04:16ID:t2qvxoud0490nobodyさん
2008/03/29(土) 22:08:25ID:???0491nobodyさん
2008/03/29(土) 22:15:25ID:???完璧すぎる
0492nobodyさん
2008/03/29(土) 22:29:55ID:???0493nobodyさん
2008/03/29(土) 22:57:31ID:???トイレ行った後とか今まで何考えてたかさえ忘れる
0494nobodyさん
2008/03/29(土) 23:43:43ID:VJRoSuRrFreeMindインストール済み。
自宅ではCakePHPのシステム設計に使ってる。
ひとつずつやる事片付けて、終わったブランチに「レ」のアイコン付けるのが
楽しい。
0495nobodyさん
2008/03/30(日) 02:14:14ID:???マインドマップは自由な図解表現
0496nobodyさん
2008/03/30(日) 02:16:24ID:???0497nobodyさん
2008/03/30(日) 02:17:48ID:xhO/sY7i0498nobodyさん
2008/03/30(日) 02:19:35ID:???0499nobodyさん
2008/03/30(日) 02:26:47ID:???0500nobodyさん
2008/03/30(日) 02:31:49ID:???思ったことを、どんどん言葉として書き出す
わかってるからと頭の中でしまいこむと、全体的な解決図を結び付きにくくする
0501nobodyさん
2008/03/30(日) 02:45:33ID:???もっと言語化するクセつければ、コミュニケーション能力向上になるんじゃないかな
0502nobodyさん
2008/03/30(日) 17:27:12ID:???すぐexit();
してる?
0503nobodyさん
2008/03/30(日) 20:27:27ID:3z+xm+ln遅レスだが、ソースの頭にBOMを付けたら表示されるようになた。
が、viewのファイルは8Nで保存しておかないと、たまに悪さをするようだ。
0506nobodyさん
2008/03/31(月) 10:59:21ID:???コンポーネントでrenderを呼んだときは
exitしないとデフォルトのrenderが最後に読み込まれるよ
0507nobodyさん
2008/03/31(月) 11:00:31ID:???SeleniumとSimpleTestの組み合わせが最強?
0508nobodyさん
2008/04/01(火) 01:26:52ID:j0Vrw1hDそっちのテストなら、セレニウムだろうと手作業だろうとなんだって良くね?
ユニットテストをするのなら1.2から正式対応したSimpleTestって言うだろうけど。
ていうか、テスト駆動開発って面倒ですよね、時間がかかるけど出来上がり安定するのは確かだけど。
0509nobodyさん
2008/04/01(火) 01:34:29ID:???ある程度の規模になったら、ユニットテストをやらないなんて
考えられないよ。
修正があるたびに同じテストなんてやってられない。
それこそ時間がかかる。
0510nobodyさん
2008/04/01(火) 02:09:46ID:???なんといってもテストが楽
0511nobodyさん
2008/04/01(火) 12:33:08ID:???■ このスレッドは過去ログ倉庫に格納されています