【PHP】フレームワークについて語るスレ10【総合】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/08/24(日) 21:43:37ID:???http://pc11.2ch.net/test/read.cgi/php/1202521438/
0237nobodyさん
2008/10/20(月) 21:10:52ID:Kq4igHV+でもそれも機能たいしてなくないか?
CakePHPみたいに同一ページの複数モデルに対応してないでしょ?
っていうか、ページネーションって掲示板ですら絶対に必要になる機能なのに
なんで標準で付けないんだろ
0238nobodyさん
2008/10/20(月) 21:57:19ID:???最適化が難しいから。
一度でもページネイションの機能を作ったことがあればわかると思うが、
DBから全データ読み込んでから絞り込むのか、検索条件を考慮したデータを
取得しておいてからそれを絞り込むのか、なんだかんだ。
基本的に、データの「件数」がわからないとページング出来ない。
(それを無視してやるページングもあるが。)
どうせライトユーザ向けには、DBやらと連携したページングを求め
られるんだから、「始めからつけてない」は、ある意味賢明な選択だよ。
・・・↑が不満なら、PEARとか使えばいいじゃん、全く。
0239nobodyさん
2008/10/20(月) 22:10:00ID:Kq4igHV+いや俺もたいしたやつじゃないけど作ったことあるし、
CakePHPのソースを解析したりしてみたけど、
そんなに難しくはないと思うけどな(だったらそれ使えばいいじゃんと言われるかもしれないが・・・)
>基本的に、データの「件数」がわからないとページング出来ない。
これは渡せばいいだけ
0240nobodyさん
2008/10/20(月) 22:21:43ID:???うん。だから、>>238の二行目
>最適化が難しいから
と、最終行
>・・・↑が不満なら、PEARとか使えばいいじゃん、全く。
が、結論なんだけどなw
「フレームワークに標準で付いていない」ってのが問題じゃ無かったのか?
0241nobodyさん
2008/10/20(月) 22:31:39ID:Kq4igHV+PEARは使いたくない
まあ、付いてないことがはっきり分かったからもういいです
0242nobodyさん
2008/10/20(月) 23:11:01ID:???しかも色んな状況に対応できる
さあ、ZFを使おう!
0243nobodyさん
2008/10/20(月) 23:27:07ID:Kq4igHV+0244nobodyさん
2008/10/20(月) 23:34:15ID:???CakePHPはよくできてる。
データの件数ってのは、データ用のSQL文のうち条件は同じでselectするものが、
フィールド名の変わりにcount(*)になっただけ。
そこの部分(フィールド名の変わりにcount(*))への変換を
自動でやってくれるから、データ用のSQLに相当する部分のみを書けばいい。
また、データ用のSQLにlimitを主導で追加する必要もない。これも自動で追加される。
つまり、「データを取ってくるSQL」を書いて「ペジネーション」処理を使うだけで内部的に、
「データを取ってくるSQL」には、自動的にlimitが追加されて発行され
「データを取ってくるSQL」には、自動的に件数を取得するcountに変更される。(当たり前だがこっちにはlimitはつかない)
(もちろんSQL直書きではなくモデルの操作だが)
最適化って話なら、データ件数を取得する関数をオーバーライドできる。(上のやつはデフォルト動作)
こういう目的でオーバーライドされるために存在するメソッドが用意されている。
0245nobodyさん
2008/10/20(月) 23:41:59ID:???うーん。それは、例えばファイルベースのデータとかには適用できないよね。
メールボックスを漁るとか、さw
無理矢理使おうと思えば、いっぺんDBに放り込む必要がある。
そんな(SQLで全部済む)フレームワークばかりではない、っていう前提に
立てば、ページネイションの機能は汎用的なものにならざるを得ない。
データの件数と一ページ辺りの取得件数から、データ開始位置(番号)と
データ終了位置を取得する、みたいな。
SQLで言えば、OFFSET とそこからの LIMIT を取得するだけ、っていう。
んで、そんなクラスが乱立しても仕方ないので、PEARなりZendなり使えって
結論で多分無問題。
と思うんだけどなぁ
もちろん、>>244みたいな全自動?ページネイションを否定するわけではないけど。
0246nobodyさん
2008/10/20(月) 23:53:02ID:???0247nobodyさん
2008/10/21(火) 00:20:07ID:???0248nobodyさん
2008/10/21(火) 00:32:46ID:???またそんな無茶ぶりをw
フレームワークなりライブラリなり作る身になれw
まあ、そんなこと言う人は自分で作るんだろうけど
0249nobodyさん
2008/10/21(火) 01:06:35ID:???>CakePHPはよくできてる。
別にCakeだけがよくできてるわけじゃなくて、Cake以外もできてますよね?
0250nobodyさん
2008/10/21(火) 03:24:50ID:???ページネイションとSQLをごっちゃにしてね?
SQL_CALC_FOUND_ROWSを使った独自SQL文からのデータを、
ページネイションに渡せばいいんですよ。
0252nobodyさん
2008/10/21(火) 03:31:10ID:???0253nobodyさん
2008/10/21(火) 03:33:09ID:???それだけはガチ
0255nobodyさん
2008/10/21(火) 03:37:18ID:???面識ないし、simplateを使ったこともないけど泣きそうになっちゃった
0256nobodyさん
2008/10/21(火) 03:39:35ID:???FW付属のモデルだとクラスタリング対応とかしにくいじゃん
0259nobodyさん
2008/10/21(火) 03:46:39ID:???もういいんだ。PHPの世界でテンプレートはもう死んだんだ。
みなが、PHPがテンプレートそのものじゃね?と気づいた。
君の役目は終わった。
0260nobodyさん
2008/10/21(火) 03:53:16ID:???いい仕事をしている人を愚弄するな
0261nobodyさん
2008/10/21(火) 03:57:54ID:???0263nobodyさん
2008/10/21(火) 04:04:16ID:???高カロリー低栄養のケーキ喰いすぎてメタボm9(^Д^)プギャー
0266nobodyさん
2008/10/21(火) 15:53:57ID:???さすがにcake厨の煽りはレベル低いねw
0267nobodyさん
2008/10/21(火) 16:58:55ID:???0268nobodyさん
2008/10/21(火) 17:12:18ID:???まず汎用的な単体ページネーションクラスを書いて
それにモデルをアタッチできる継承クラス書くなり
アダプタ書くなりするのが普通です
つまりsymfonyは神、cakeはホームレス
0269nobodyさん
2008/10/21(火) 18:03:54ID:???ページネーションがmodelと一緒くたになっていると
勘違いする人もいるんだなぁw
コントローラと一緒くたになっているというならまだしも。
(まあコントローラと一緒くたになるのは何の問題もありませんが)
いったいどこの部分を見て一緒くたといっているんだろうか。
modelから任意の範囲のデータを持ってくる機能?
これをmodelに入れないとしたらどこに入れるんだか。
0270nobodyさん
2008/10/21(火) 19:56:58ID:???cakeってPHP4/5用だっけ?
4を切り捨てずにクリーンになんて書けるわけねーし
物乞い乙ww
0271nobodyさん
2008/10/21(火) 20:34:39ID:???0272nobodyさん
2008/10/21(火) 21:33:22ID:???ウリだったPHP4対応が今度は足かせになります
0273nobodyさん
2008/10/21(火) 23:07:36ID:???0274nobodyさん
2008/10/22(水) 02:03:20ID:???仕事じゃ使えません
0276nobodyさん
2008/10/22(水) 02:16:16ID://oF70ynクライアントに言ってくれよ…
verアップを勧めても、他のプログラムに不具合が出るかもしれないので
PHPのverアップはできません(^o^)
って言われるしな…
0277nobodyさん
2008/10/22(水) 02:32:46ID:???0279nobodyさん
2008/10/22(水) 08:21:37ID:???0280nobodyさん
2008/10/22(水) 08:43:18ID:???歩のスパイラルだな
もうPHP4は絶体絶命のセキュリティ穴でも作って
使ってるサーバごとぶっ壊せばいいのに
0281nobodyさん
2008/10/22(水) 13:04:41ID:???といいつつこないだ出たけど。
レン鯖でPHP4と5共存してるところとかあるよね。
0282nobodyさん
2008/10/22(水) 15:48:34ID:???とか言えばいいんじゃないのかな。
実際大変だし。
0283nobodyさん
2008/10/22(水) 16:26:31ID:Skk+7Du0じゃあ他に頼みます
0284nobodyさん
2008/10/22(水) 16:29:12ID:???0285nobodyさん
2008/10/22(水) 16:32:01ID:???踏ん切りつけれないとこ(クライアント)は総じて馬鹿な奴が多いよな。不思議と。
0286nobodyさん
2008/10/22(水) 16:42:21ID:???作り手の気持ちを考えられない
0287nobodyさん
2008/10/22(水) 16:46:31ID:???それで仕事逃すなんてもったいない。
php5で作る素晴らしさを説明して、説得するんだ。
php4なら高いというのは、言い換えればphp5なら安い。
実際php5で作るよりphp4の方が工数増えない?
クライアントというより、元請からの仕事なら、しょうがないが。
0288nobodyさん
2008/10/22(水) 17:31:12ID:???0290nobodyさん
2008/10/22(水) 18:01:25ID:???0292nobodyさん
2008/10/22(水) 18:29:23ID:???今から作るのにPHP4なんていくらなんでもあほすぎだよ
0293nobodyさん
2008/10/22(水) 18:46:54ID:???0296nobodyさん
2008/10/23(木) 00:13:27ID:???確かに、今から作るならPHP5だね。
まっさらな新規案件なのにPHP4でっていうのは、
PHP4に慣れて自分のライブラリとかをPHP5で使えるようにしない技術者の怠慢。
ただ、PHP5だからって工数が圧倒的に圧縮できる訳じゃない。
そういう意味では、既存でPHP4で走ってるのの改良はかなりつらい。
0297nobodyさん
2008/10/23(木) 01:19:05ID:???>PHP4に慣れて自分のライブラリとかをPHP5で使えるようにしない技術者の怠慢。
ちょっと違う。
使えるようにできない、ていうか、(できないことはまずないから)、できるかどうかすら
わからない、技術者の怠慢「と無能」
が正しいように思ってる。まあこんな事は職場では言いたくないけど。
0298nobodyさん
2008/10/23(木) 01:29:54ID:???0299nobodyさん
2008/10/23(木) 01:34:26ID:???それすら、怠慢(自分の仕事を楽により良くする努力を怠っているという意味で)、
っていう次元ですよ。
「新規案件でPHP4」っていうお話はね。
既存スクリプトの保守案件はまた別と理解してます。
あと、教育コストが云々は認めません。少なくとも、俺がチーフ(笑)なら。
0300nobodyさん
2008/10/23(木) 08:08:47ID:???0301nobodyさん
2008/10/23(木) 12:08:45ID:yerXAIOJサポート切れてるPHP4つかうなよ
0302nobodyさん
2008/10/23(木) 12:21:21ID:???E_STRICT強制で難易度高くなるってなんだそりゃ?w
警告をプログラムを完成させるまでの試練と考えているのかな?
俺にとっては、警告はプログラムを完成させるまでの
サポートだと思うんだが。
つまり、E_STRICTを強制されたほうが逆に難易度は低くなると感じる。
間違ったコード、良くないコード、そういったものを排除できるからね。
0303nobodyさん
2008/10/23(木) 12:24:37ID:???早く切り捨てるべきと説き伏せろ!
あれ、ここ何スレ?
0304nobodyさん
2008/10/23(木) 12:25:03ID:???出すにしても、別にログを取りたくなるくらい
一方、E_NOTICEはデフォルトでONでもいいと思うんだ
この辺のバランスがなあ
0305nobodyさん
2008/10/23(木) 12:30:37ID:???どんだけいい加減なもの作ってるんだ
0306nobodyさん
2008/10/23(木) 13:31:17ID:???Java大好き志向でのコーディングかな?
まるまる新規コーディングじゃないとNon-static method 〜〜 とか、
出まくって修正も大変だと思うんだが。
「基本」は言い過ぎだし、頭でっかち感が否めない
いまだにnoticeすら無視されまくってる現状で
0307nobodyさん
2008/10/23(木) 13:42:27ID:???少なけりゃつぶすけど、多かったら放置にはなるね。
新規案件なら、E_STRICTなんてたまにしか出てこない。
たまにだから、出たらつぶすよ。
てかE_NOTICEもそんな頻繁に出ないような。
どっちかというと、Pear使っていい案件の時、Pear内に沢山あって
ゲンナリすることの方が多いなぁ。
0308nobodyさん
2008/10/23(木) 15:10:38ID:???それでも、下手なプログラムを排除できるというメリットはある。E_STRICTをオンにしたら、エラーばっか出て実装が進めないPHPプログラマーは多数いるだろう。
0309nobodyさん
2008/10/23(木) 16:06:40ID:???それはお前だけw
0310nobodyさん
2008/10/23(木) 16:58:02ID:???0313そこそこ初心者
2008/10/23(木) 21:41:05ID:???なかなかダウンロードページにたどり着けません…
0314nobodyさん
2008/10/23(木) 21:41:33ID:???0315nobodyさん
2008/10/23(木) 22:04:30ID:???類は友を呼ぶっていうだろ。
>>311の周りにはそういうゴミみたいな連中が沢山いるんだよ。
底辺の環境で仕事してる証拠。
0316nobodyさん
2008/10/23(木) 22:05:17ID:???いまだに一番使われてるフレームワークはMojavi
0317nobodyさん
2008/10/24(金) 03:28:29ID:???その言い方には語弊があるようなw
「現状使用したことがあるフレームワーク」という質問だから、今使用しているとは限らないと思うが
0318nobodyさん
2008/10/24(金) 08:18:02ID:???しかも、PHPカンファレンス2008に参加したという、技術に関心の高いPHPプログラマーが対象のアンケートでこの有様。
0319nobodyさん
2008/10/24(金) 09:01:16ID:???フレームワークは重くなる遅くなるから使いません!言ってたな
提供サービスを全部新しく作り直すらしいけど、次はJavaでもPHPでもなく、Rubyだ!
とか言ってた。でもRails遅過ぎるから速度が必要なとこだけFWなしのPHPだとかなんとか…
大丈夫か…w
0320nobodyさん
2008/10/24(金) 09:09:26ID:???無駄なコード書いて死んだらええねん
0321nobodyさん
2008/10/24(金) 09:42:46ID:???てか速度が必要なとこだけphpという選択はどうなの?何でphpなの?
0322nobodyさん
2008/10/24(金) 11:41:32ID:???0323nobodyさん
2008/10/24(金) 11:47:54ID:???とかいう意味かもね?
調べた上で使えねえ、って言ってるのかもしれんが
0324nobodyさん
2008/10/24(金) 12:30:23ID:???そうなのかーってちょっと思わされかけてたけど、やっぱおかしいよねこれw
ちなみに、規模や今後の事なんかも考えると、Javaとかを選択したほうが
いいんじゃないかとかをきいてみたら、Javaは遅いし、もう古いとか言われてさ
さすがにその見解はちょっとどうなのって思っちゃったw
フレームワークを使わず自分でコード書くことは(勉強としては)すごく重要だと思うし
自社開発の会社だから、社員の成長のためにいろいろやらせたい、って感じな部分も
あるのかもしれないけど、メインの仕事で車輪の再発明みたいな事繰り返して
無駄な工数増やすのは間違ってると思ったw
0325nobodyさん
2008/10/24(金) 12:37:16ID:???「Javaは遅いし」
ちょっと待てw
うーん。こういう面接(下手したら社長とか)も、あるあるwとしか言えない
0326nobodyさん
2008/10/24(金) 12:47:42ID:???まさかJava=アプレットとしか知らなかったりしてナw
0327nobodyさん
2008/10/24(金) 13:27:47ID:???0328nobodyさん
2008/10/24(金) 14:05:30ID:???元々Javaをやってる会社なら別だけど、今選択するならJavaは古いと思う。
あと既存のフレームワークを使わないで、自社で作るという選択肢はありだと思う。
既存のものは何かと合わなかったりするし、フレームワークが無いと開発できません。
は困るし。
自社のフレームワークもありません。
だと困るがw
0329nobodyさん
2008/10/24(金) 14:15:28ID:???代替物が無い状況では、古いってのは意味がない
なんでまだC言語で開発が行われてるのかと
PHPやRubyがJavaを完全に代替できる筈もないし、
目指してもないだろ。
文脈無しでJavaが古い、はナンセンスだと思うよ
0330nobodyさん
2008/10/24(金) 14:24:54ID:???0331nobodyさん
2008/10/24(金) 14:59:36ID:???いやさ、これから会社が新たな「開発言語に取り組む!」って時に、
何の言語か聞いてみたら、
「これからはJavaです!」とかいってたら、
「いまさら?」って思わないかってことなんだが。
もちろんJavaは現役で使われてる言語だとは思うよ。
俺も案件によってはphpじゃなくてJava使うし。
0332nobodyさん
2008/10/24(金) 15:12:25ID:???ある程度古く枯れてきてないと商用にはあまり向かないってのもあるだろうし
色々理由付けがあっての「古い」なのかも知れないから、深くは突っ込まなかったけど
なんかJavaを毛嫌いしてるって感じの印象を受けた感じだった
自社開発で提供してるサービスだったし、自社FWってのはありだと思うけど
日が建つにつれ混沌としてきて、組み込みなんかであるような
なんともドロドロした感じのものが出来そうなイメージもあるんだよなー
Web系で使う言語なんて結局は殆どが文字列操作をするためのもんだし、
自社製FWはどんなに突き詰めていっても
既存のものから使わないメゾッドとか減らしてHDDの使用量を減らしました!速度も気持ち速いです!
ってくらいの差しか出ないんじゃないかなーと
…と、スレチっぽい話題振ってスマソw
>>331
それは言語が古いんじゃなくて、その会社の取り組みの姿勢が遅れてるって感じなんじゃw
0333nobodyさん
2008/10/24(金) 15:30:39ID:???0334nobodyさん
2008/10/24(金) 15:39:06ID:???新しいからって理由で方向を決めるのもちょっと心配になるがw
0335nobodyさん
2008/10/24(金) 15:55:33ID:???最近Java触り初めてSAStrutsやらS2JDBCやら使ってるけどめちゃくちゃ開発効率上がったよ・・・
俺なんかJava全然知らないのに知らなくても普通に使える。これすごいよ
0336nobodyさん
2008/10/24(金) 16:24:57ID:???■ このスレッドは過去ログ倉庫に格納されています