【PHP】PHPフレームワーク総合スレ14
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2009/09/26(土) 05:55:43ID:Z4zintKrpc11.2ch.net/test/read.cgi/php/1237825268/
0002nobodyさん
2009/09/26(土) 05:56:56ID:Z4zintKr* symfony
* CakePHP
* ZendFramework
* CodeIgniter
0003nobodyさん
2009/09/26(土) 07:22:33ID:???cakeのコードきっついすなー
なんでこんなのが人気あるんだ
0004nobodyさん
2009/09/26(土) 08:56:47ID:???.svnからソースコードが盗まれてPHP脂肪www
0005nobodyさん
2009/09/26(土) 11:46:36ID:???って笑えばいいのかな?
0007nobodyさん
2009/09/26(土) 18:36:52ID:???●国外産●
symfony
ttp://www.symfony-project.com/
code igniter
ttp://codeigniter.com/
Zend Framework
ttp://framework.zend.com/manual/ja/index.html
CakePHP
ttp://www.cakephp.org/
Yii Framework
ttp://www.yiiframework.com/
●国産
ちいたん
ttp://php.cheetan.net/
Ethna
ttp://ethna.jp/
guesswork
ttp://classic.guesswork.jp/
maple
ttp://kunit.jp/maple/
●前スレ
【PHP】フレームワークについて語るスレ13【総合】
http://pc11.2ch.net/test/read.cgi/php/1237825268/
次スレは >>980 くらいで立てて
0008nobodyさん
2009/09/26(土) 18:36:58ID:???13http://pc11.2ch.net/test/read.cgi/php/1237825268/
12http://pc11.2ch.net/test/read.cgi/php/1229960175/
11http://pc11.2ch.net/test/read.cgi/php/1219581817/
10http://pc11.2ch.net/test/read.cgi/php/1202521438/
. 9http://pc11.2ch.net/test/read.cgi/php/1197383840/
. 8http://pc11.2ch.net/test/read.cgi/php/1192604501/
. 7http://pc11.2ch.net/test/read.cgi/php/1181350116/
. 6http://pc11.2ch.net/test/read.cgi/php/1171896620/
. 5http://pc10.2ch.net/test/read.cgi/php/1159579507/
. 4http://pc8.2ch.net/test/read.cgi/php/1151706907/
. 3http://pc8.2ch.net/test/read.cgi/php/1145971945/
. 2http://pc8.2ch.net/test/read.cgi/php/1135847024/
. 1:http://pc8.2ch.net/test/read.cgi/php/1123608068/
0009nobodyさん
2009/09/26(土) 18:43:23ID:???英語がろくに使えない中国人が付けたみたいな感じ
0010nobodyさん
2009/09/26(土) 19:25:57ID:???0011nobodyさん
2009/09/27(日) 02:10:24ID:???0012nobodyさん
2009/09/27(日) 04:12:33ID:???何の前なのか明示した方がいい
0013nobodyさん
2009/09/28(月) 17:11:34ID:???サーバー側でHTMLをjqueryで整形できるよ。
http://code.google.com/p/phpquery/
$doc = phpQuery::newDocumentHTML("http://www.yahoo.co.jp/");
$html = $doc['div'] -> html();
サーバーサイド側でこんな簡単にHTMLが抜け出せる。
正規表現も使わないで済む。jqueryライクな書き方でOK
0014nobodyさん
2009/09/28(月) 18:22:58ID:???0015nobodyさん
2009/09/28(月) 21:30:30ID:???0016nobodyさん
2009/09/28(月) 21:40:26ID:???0017nobodyさん
2009/09/28(月) 21:40:46ID:???Yiiって言いにくいよな、なんかショッカーの雑魚戦闘員っぽくて。
0018nobodyさん
2009/09/29(火) 01:52:25ID:???『Best Web Frameworks』
http://www.bestwebframeworks.com/
0020nobodyさん
2009/09/30(水) 04:24:45ID:???特にマジックメソッドはIDEとの親和性も悪いし、エラーの温床になりやすい。
0021nobodyさん
2009/09/30(水) 06:53:34ID:???0022nobodyさん
2009/09/30(水) 16:50:14ID:???0023nobodyさん
2009/09/30(水) 19:12:44ID:???0024nobodyさん
2009/09/30(水) 20:10:25ID:???レンタルサーバーでは使いにくいといいたいわけです。
0025nobodyさん
2009/09/30(水) 22:05:58ID:???コード品質より、楽さを求める人が多いからcakeを選択する人が多い、と。
0026nobodyさん
2009/10/01(木) 03:04:16ID:???0027nobodyさん
2009/10/01(木) 03:34:53ID:???0028nobodyさん
2009/10/01(木) 03:58:09ID:???0029nobodyさん
2009/10/01(木) 08:45:24ID:???まだ良く分かっていないのですが、例えばライブラリのように2つを一緒に使うとかいうような事も出来るのでしょうか?
関数、変数名が干渉してしまってどちらか一方だけになるとかあるのかなぁ、と思っています。
0030nobodyさん
2009/10/01(木) 09:11:17ID:???0031nobodyさん
2009/10/01(木) 09:31:16ID:???Cake 密結合
0032nobodyさん
2009/10/01(木) 10:19:17ID:???そ、それはまずいですね
しかし使っている人も多いようなのである程度注意していれば問題は無いのでしょうが、ちょっとした事でオーバーライドとかのバグになりそうですね
>>31
おおっ、簡潔でいて的を射ていそうな表現ですが
自分にはちょっと分かりにくかったです
Zendは互いが干渉しにくい為にバグやオーバーライド等が少ない代わりに構文はやや複雑になり、
Cakeは色々なメソッドやらハンドラが密に干渉していて、簡単な構文になりやすいという事でしょうか?
0034nobodyさん
2009/10/01(木) 15:59:48ID:???すみません、では違いが分かりません
どのように2つは違うのでしょうか・・・
ごめんなさいあまり知識が無いもので
0035nobodyさん
2009/10/01(木) 17:07:19ID:???設計思想からして違う。
実際に使ってみると、
Zendはフレームワークを作る為のライブラリ集、
基本的な機能は揃っているが導入時にある程度のコードを書く必要がある。
反面、自分の使いやすい形式のFWに仕立て上げる事が出来る。
疎結合なので、使いたいクラスを学ぶだけで簡単に導入出来る。
Cakeは決められたルールに従えば、書くコードが少なくてすむ。
反面、ルールから外れた事しようとすると面倒になる。
0037nobodyさん
2009/10/02(金) 06:54:35ID:???Cake3ー!早く来てくれー!
0038nobodyさん
2009/10/02(金) 16:04:35ID:???最初からcake以外のフレームワーク使うのが吉
せっかくいろいろ種類が出てるんだから、
他のフレームワークも盛り上がって欲しい
まあおれはcake使うけど
0039nobodyさん
2009/10/02(金) 18:54:20ID:???Cakeは逆にシンプルな関数名で良いといわれるようになる。
そこまで先を見ていたのだよ。
0040nobodyさん
2009/10/03(土) 01:04:59ID:???0041nobodyさん
2009/10/03(土) 02:37:53ID:???クラスにパッケージ接頭子付ける方がまし。
0042nobodyさん
2009/10/03(土) 11:48:35ID:???あーゆーのは嫌だなぁ
0043nobodyさん
2009/10/03(土) 12:55:33ID:???0044nobodyさん
2009/10/03(土) 16:25:09ID:???ネームスペース使っても
new Zend_Db_Adapter_Abstract(); が new Zend\Db\Adapter\Abstract();
になるだけだぜ?
同一パッケージや、useでエイリアス貼ればいいんだろうけど・・・それをやり始めると名前衝突が避けられなくなるという罠。
Zendの命名形式はいいけど、サブパッケージを掘りすぎなのが問題だと思う。
Zend_DbAdapterAbstract
Zend_ControllerFront
みたいにcamelCase使ってもう少し階層数を下げれんもんだろうか。
0045nobodyさん
2009/10/03(土) 16:38:08ID:???0046nobodyさん
2009/10/03(土) 16:43:05ID:???習コストかかるし、FW自体をまともに理解出来る人材も少ない。
結果社内開発のシンプルなライブラリ集みたいなものが多用される事になる・・・
0047nobodyさん
2009/10/03(土) 23:36:19ID:???Zend_DbAdapterAbstract
こんなんじゃオートローダー作りにくいし、(現状だとPEAR含めてオートローダーが共用できる)
階層数下げるメリットも分からない。
Yiiはオートローダーを実現するためにこんなコードが200行以上も続くが、こんなんよりよっぽどマシだと思う。
private static $_coreClasses=array(
'CApplication' => '/base/CApplication.php',
'CApplicationComponent' => '/base/CApplicationComponent.php',
'CBehavior' => '/base/CBehavior.php',
'CComponent' => '/base/CComponent.php',
'CErrorEvent' => '/base/CErrorEvent.php',
'CErrorHandler' => '/base/CErrorHandler.php',
'CException' => '/base/CException.php',
'CExceptionEvent' => '/base/CExceptionEvent.php',
'CHttpException' => '/base/CHttpException.php',
'CModel' => '/base/CModel.php',
0048nobodyさん
2009/10/04(日) 03:30:26ID:???お前は何を言っているんだ?
Zendの命名が冗長だっていう指摘に対するレスなだけなんだが。
オートロードなんてクソ重くてコード保守性下がる物の為に、
コード規約を設計するなんて正気の沙汰とは思えないな・・・
0049nobodyさん
2009/10/04(日) 03:32:18ID:???オートローダのファイル検索オーバーヘッドを少なくするためじゃないの?w
200行程度、オートロード1〜2回行うより遙かに軽いよ。
0050nobodyさん
2009/10/04(日) 10:51:49ID:???出鱈目いうなよ。オートロードが速くて保守性がいいからPHP5のFWが使ってんだろが。
>>49
ファイル検索オーバーヘッドってなんだ?オートロードってファイルを「検索」してロードすんのか?w
0052nobodyさん
2009/10/04(日) 15:44:29ID:???ベンチマークとって見ろよw autoloadって結構なリソース食うんだぜ。
最近のFWは機能こそ備えているけれど、デフォルトでは使ってないのもその為。
Zendとか、各クラスで使用するクラスをincludeしてるだろ?
生産性は上がるがクラス間の関係性が不透明になるから、保守性は下がる。
>ファイル検索オーバーヘッドってなんだ?オートロードってファイルを「検索」してロードすんのか?w
そうだよ?
インクルードパスに該当するファイルが無いか検索が発生するけど、これが想像以上に重いんだよ。
Yiiはその手間を省く為に、クラス名とファイル名のマッチングを使っている。
0053nobodyさん
2009/10/04(日) 17:23:53ID:???0054nobodyさん
2009/10/04(日) 21:49:34ID:???そもそもインクルードパスのスキャンをしないためにはフルパスでinclude/requireしかない。オートロードは関係ない。
Kohanaはずっとすっきりしてるし、ZendやSolarはPEARスタンダード準拠。
ベンチマーク?
http://till.vox.com/library/post/zendframework-performance.html の
3) Get rid off require_once, use __autoload とか見れ
http://blog.apecell.com/?s=autoload&x=0&y=0 ここも
お前の言う相対パスのベンチはここ
http://jp.php.net/manual/ja/function.require-once.php
0055nobodyさん
2009/10/05(月) 23:38:00ID:???Zend_Loaderのautoload経由でのincludeと、通常のincludeを比較してみろよ。
予め使うクラスが確定している場合はオートロードなんて使うもんじゃないよ。
0056nobodyさん
2009/10/06(火) 00:47:18ID:???autoloadを介す場合、
1.ファイルパスが書かれた設定を読み込み、配列にセットする。
2.ロード済みかチェックする
3.未ロードならincludeする
という手順になると思う
速度に違いが出そうなところといえば、おそらく1.のパスを配列に詰め込むところでしょう。
数万ファイルあると、相当遅そうだけど、数百、数千ファイルのパスを詰め込むぐらいなら、それほど負荷はかからない様に思える。
また、この設定ファイル自体、更新頻度が低いだろうから、
アクセラレータを介したり、
初回は設定ファイルから読み込み→シリアライズしてしまえば、
さらに負荷を押さえられそうな気がする
0057nobodyさん
2009/10/06(火) 00:58:19ID:???ワロタ。
0058nobodyさん
2009/10/06(火) 01:52:53ID:???- I shaved off roughly 220 milliseconds by removing about 15 (or so) calls to require_once in my bootstrap.php file.
require_once is also the number one performance killer from the entire Zend_* code base. The before/after is amazing.
Without any of those enhancements from the list just by stripping out require_once from our ZendFramework "install",
we went from 9-10 requests/second to 27 requests/second.
Zend_*コードから全てのrequire_onceを取り除き__autoloadに変えると 9-10 リクエスト/秒が27リクエスト/秒になった。
0059nobodyさん
2009/10/06(火) 02:38:20ID:???0060nobodyさん
2009/10/06(火) 09:10:10ID:???PHP側の読込み済みかどうかの判定がウンコだから
0061nobodyさん
2009/10/06(火) 12:08:57ID:???それって、フレームワークやライブラリ次第なんじゃないかなあ。
毎回、必要ないものを大量にrequire_onceしてるならautoloadしたほうが速いだろうけど、
そうでないならrequire_onceのほうが速いと思う。
その加減がわからんけど。
0062nobodyさん
2009/10/07(水) 08:49:18ID:???0064nobodyさん
2009/10/10(土) 11:43:41ID:???>コード規約を設計するなんて正気の沙汰とは思えないな・・・
こいつが糞なのだけは分かった。
0065nobodyさん
2009/10/11(日) 06:11:17ID:???0066nobodyさん
2009/10/11(日) 10:25:39ID:???0067nobodyさん
2009/10/11(日) 11:35:46ID:???大抵はclassの頭にimportとかで明示的に使用するクラスを指定すると思うんだが・・・
0068nobodyさん
2009/10/11(日) 20:39:57ID:???0069nobodyさん
2009/10/12(月) 00:44:11ID:???JavaとかC#みたいなコンパイラ型言語の事を指している?
であれはコンパイル時にクラスチェックが行われるので、
PHPのオートロードで問題になる「実行時にクラスが参照出来ない」「どのクラスを参照しているか不透明」という問題は起こらない。
あと、丸ごとライブラリをimportするような慣習は無い。
0070nobodyさん
2009/10/12(月) 10:09:43ID:???Rails なんて 200 くらいのライブラリを import するよね。
0071nobodyさん
2009/10/13(火) 06:25:12ID:???0072nobodyさん
2009/10/14(水) 09:11:43ID:???コンパイラ言語であることと静的性格は全く関係ない。
Objective-CとはかインタプリタじゃないけどPHPなんかよりもずっと動的性が高いし、
ライブラリを丸ごとimportする習慣もある。
0073nobodyさん
2009/10/14(水) 17:44:33ID:???丸ごとimportって、結局はコンパイラがコード解析及び妥当性をチェックして必要なクラスのみを取り込んでるんだよね?
PHPの実行時オートロードとは性質が異なると思うんだけど。
0074nobodyさん
2009/10/15(木) 00:01:13ID:???0075nobodyさん
2009/10/15(木) 18:19:58ID:???それともcakeならcakeだけ?
0076nobodyさん
2009/10/15(木) 19:08:17ID:???0080nobodyさん
2009/10/16(金) 06:35:50ID:???0081nobodyさん
2009/10/16(金) 19:56:32ID:???hoge_hoge形式がいいの
hogeHoge形式がいいの
0082nobodyさん
2009/10/16(金) 20:04:57ID:QRRFB99x0083nobodyさん
2009/10/16(金) 20:08:34ID:???混在しすぎでどっちつかずだと思う
全体的にアンダースコア使ってるものが多いっちゃ多いけど
自作メソッドとかそういうのは好きなほうで統一すればいいんじゃね
0084nobodyさん
2009/10/16(金) 20:08:56ID:???0085nobodyさん
2009/10/16(金) 20:14:01ID:???0086nobodyさん
2009/10/16(金) 20:15:14ID:???0087nobodyさん
2009/10/16(金) 20:33:16ID:???0088nobodyさん
2009/10/16(金) 21:33:40ID:???0090nobodyさん
2009/10/16(金) 21:47:01ID:???0091nobodyさん
2009/10/23(金) 14:38:35ID:???みんなもScalaを使ってみて、PHPとの比較レポートをお願いします。
ttp://codezine.jp/article/detail/4310
ttp://d.hatena.ne.jp/yuroyoro/20080808
0092nobodyさん
2009/10/23(金) 16:04:35ID:???0093nobodyさん
2009/10/23(金) 20:42:51ID:???0094nobodyさん
2009/10/24(土) 00:04:45ID:???0096nobodyさん
2009/10/27(火) 13:25:25ID:???ttp://business.nikkeibp.co.jp/article/manage/20091022/207799/?P=2
Ethnaを作れるぐらいになると1日で30万円を稼げるのか…スゲーwww
0097nobodyさん
2009/10/28(水) 05:48:04ID:wgov9hiDプロモーション丸出しの記事でワロタw
ソフバン問題で一般にもあくどさがばれたから慌ててイメージアップ戦術打ったんだな
てかF氏は技術者としては悪くはないけど少なくとも神ではねえよw
何より本人が一番分かってるだろうけど
褒め殺しかよw
0098nobodyさん
2009/11/07(土) 10:30:17ID:6jU57Qsohttp://e-arrows.sakura.ne.jp/2009/11/phper.html
0099nobodyさん
2009/11/07(土) 14:44:10ID:???0101nobodyさん
2009/11/08(日) 01:06:50ID:35LWJ8zbどんなのを使っていいかわからない状態です
とりあえず作る予定のサイトは
テンプレートの共通点は多いけど、ページによって使うテンプレートの種類や個数が全然違う感じなんですけど、
よく分からないので、面倒なことを考えずに組み立てれば動くってくらい
初心者が取っつきやすいフレームワークを教えてください
0102nobodyさん
2009/11/08(日) 01:15:09ID:???0103nobodyさん
2009/11/08(日) 01:19:10ID:???0104101
2009/11/08(日) 01:43:45ID:???じゃあ 自分好みのフレームワークでも自作してみようかな
ちいたんとsymfonyあたりをベースにほしい部分をコピペしながらでも
0106nobodyさん
2009/11/08(日) 20:36:14ID:???foreachの途中でreturnしたらメモリリークするってバグが5.0くらいの時にあったけど
未だに漏れまくりなのか?
0107nobodyさん
2009/11/08(日) 20:37:49ID:???プログラム的に行儀よくないよね
一つのところから入って一つのところから出るのがお作法ってもん
0108nobodyさん
2009/11/08(日) 20:45:29ID:???適当なこと書いてんじゃねーよ
でもまじめさは好感持ったからぢんぽ舐めていいよ
0109nobodyさん
2009/11/08(日) 21:30:21ID:???嫌いだから長所に目をつぶって、短所を叩いてるだけの糞ポストにしか読めないが。
0110nobodyさん
2009/11/08(日) 21:58:47ID:???配列の中から、条件を満たす要素を取り出すとき、
見つかったら、そこでbreak/returnしないの?
最後まで回し続けるの?
0112nobodyさん
2009/11/08(日) 22:23:24ID:???breakはするに決ってるじゃんw
ルーチンの結果に対して一様に処理を追加する必要ができた時の担保として、
出口を一つにするように心がけるってこと
「これに処理追加することはまずないし、いいだろ」と思って手抜きした時に限って
フローが続くことになることはよくある
0113nobodyさん
2009/11/08(日) 22:32:32ID:???0114nobodyさん
2009/11/08(日) 22:39:07ID:???0115nobodyさん
2009/11/08(日) 22:46:49ID:???0116nobodyさん
2009/11/08(日) 23:23:38ID:???0117nobodyさん
2009/11/08(日) 23:41:20ID:???実装してしまった事があるけど、ひどく可読性を下げてしまった覚えがある。
動いてるからいいよね、ということで自分を納得させた。
0118nobodyさん
2009/11/09(月) 00:22:28ID:???ruby,python涙目ww
0120nobodyさん
2009/11/09(月) 00:45:35ID:???PHPで書いたコードをrubyに移植しようとして
「なんでこんな簡単なことも出来ないんだ?」と思ったことがある
0121nobodyさん
2009/11/09(月) 01:11:11ID:???そういう風に習ったのか思い込んでるのか知らんけど
うちの中華コーダー連中は全員そろいもそろって無駄なフラグを作りまくって
ごちゃごちゃした糞コード生み出してるなぁ
フローチャートに沿って出口ひとつ、とかって話も聞いたりするけど
今時フローチャートなんて書くようなのは組み込みのなかに残存するごく一部の旧世代位じゃねーの?
0122nobodyさん
2009/11/09(月) 01:16:38ID:???0123nobodyさん
2009/11/09(月) 01:16:44ID:???元の設計が悪いんだろw
0124nobodyさん
2009/11/09(月) 01:25:06ID:???0125nobodyさん
2009/11/09(月) 03:39:20ID:???rubyにはcatch〜throwがあるので、
レベル指定break/coutinueというだっさい機能は必要ありません。
0126nobodyさん
2009/11/09(月) 03:48:05ID:???ループを制御する命令だよ
0127nobodyさん
2009/11/09(月) 03:48:52ID:???0128nobodyさん
2009/11/09(月) 04:00:04ID:???例外を本来の「何かおかしなことが起こったことを騒ぎ立てる」機能以外で使うことがエレガントだとは
俺には思えないなぁ
名著コード・コンプリートでも、例外の良さはcatchしそこねた時に
それが誰の目にも明らかになることで、
明示的にそうでなければならない場合以外に使うのはよろしくないって書いてるね
0129nobodyさん
2009/11/09(月) 04:02:47ID:???0130nobodyさん
2009/11/09(月) 04:17:50ID:???gotoがないことが許されるのは小学生まで
0131nobodyさん
2009/11/09(月) 04:24:29ID:???rubyのcatch〜throwは例外処理ではありませんが。
0134nobodyさん
2009/11/09(月) 06:13:52ID:???本当にこれが分かりやすいと言えるのか?
gotoの方が直観的で分かりやすいのではないだろうか
0135nobodyさん
2009/11/09(月) 10:03:36ID:???0136nobodyさん
2009/11/09(月) 13:33:55ID:???0137nobodyさん
2009/11/09(月) 14:04:14ID:???ココ(http://www.phppro.jp/article/framework/comparison.php)等を見ると、cakeよりはzendやsymfonyの方が良さそうだったのですが、
zendのサイトに行って色々と見ている内に、日本語対応がまだ今一つって感じがしました
symfonyは書店で本の数が少なく、また、パッと調べた感じなのですが、日本語対応している詳細なリファレンスサイトが見当たりらなかったです
どれを始めるか悩んでいるのですが、cakeとzendの構築出来るサイトの規模はどの位違うのでしょうか?
個人レベルで終わるようならばcakeは無理そうなのですが
0138nobodyさん
2009/11/09(月) 15:01:49ID:???symfonyの本家ドキュメントはほとんど日本語化されている.ただすぐに分かるような場所にないだけ.
http://www.symfony-project.org/jobeet/1_2/Doctrine/ja/
0139nobodyさん
2009/11/09(月) 15:26:25ID:???正直、cakeとzendで構築できないレベルの規模になると、フレームワーク自体は
どれを選んでもそんなに差は出ないと思う。どうせどっかしらに手を入れるだろうし。
ということは、自分の(チームの)開発スタイルに合うものを探すのが吉。
0141nobodyさん
2009/11/10(火) 01:12:42ID:6KTwa1YJ変わった!
0142nobodyさん
2009/11/10(火) 08:40:05ID:???どう変わった?
0143nobodyさん
2009/11/10(火) 18:57:59ID:???0144nobodyさん
2009/11/11(水) 15:32:39ID:???0145nobodyさん
2009/11/11(水) 21:49:45ID:???Goが登場していよいよPHP冥土にGowww
0146nobodyさん
2009/11/11(水) 21:52:40ID:???このぶっさいくなリスにPHPは喉笛を噛み切られるのか
0147nobodyさん
2009/11/11(水) 21:58:12ID:???0148nobodyさん
2009/11/11(水) 23:31:30ID:???PHPが食われるっていうよりは、立ち位置的にJavaとか.NETをカリカリするのを狙ってそう
PythonRubyに至っては、現状で既に率先して使う利点なんてほとんどないしな…
0149nobodyさん
2009/11/16(月) 09:19:31ID:???大抵のプロパティがdataだろ
0150nobodyさん
2009/11/16(月) 19:43:00ID:???Webプログラミングも楽になるといいな〜
0151nobodyさん
2009/11/17(火) 04:02:16ID:???特にjavascript
0152nobodyさん
2009/11/17(火) 14:08:51ID:???0153nobodyさん
2009/11/17(火) 14:30:45ID:???0154nobodyさん
2009/11/17(火) 15:28:13ID:???0156nobodyさん
2009/11/18(水) 13:57:27ID:PgcaH+BLhttp://twitto.org/
は最速なんだろ。
0157nobodyさん
2009/11/18(水) 18:55:29ID:???HTML5の登場で、JavaScriptの役割も整理(縮小)されるでしょうか?
HTMLを拡張しまくって、PHPが不要になっちゃう日も来るかな?www
0158nobodyさん
2009/11/18(水) 19:10:09ID:???0159nobodyさん
2009/11/19(木) 00:17:48ID:???PHPerは本当にレベル低いやつ多いよなぁ・・・同じPHP使いとしては世知辛い。
0161nobodyさん
2009/11/19(木) 01:28:38ID:???と言ってみる
0162nobodyさん
2009/11/19(木) 01:46:52ID:???まあ確かにどんなブラウザーであっても色鮮やかなサイトが増えましたよ、本当に…
0163nobodyさん
2009/11/19(木) 04:55:26ID:???0165nobodyさん
2009/11/19(木) 13:35:23ID:???0166nobodyさん
2009/11/19(木) 14:53:43ID:???0167nobodyさん
2009/11/19(木) 15:34:06ID:???0170nobodyさん
2009/11/21(土) 08:45:18ID:???例えば大手サイトなんか
0171nobodyさん
2009/11/21(土) 10:19:09ID:???0172nobodyさん
2009/11/21(土) 14:12:59ID:???0173nobodyさん
2009/11/21(土) 14:36:40ID:???0174nobodyさん
2009/11/21(土) 14:52:41ID:???0175nobodyさん
2009/11/22(日) 05:04:49ID:???0176nobodyさん
2009/11/22(日) 14:29:23ID:???どっちがいいでしょうか?
用途は中規模のサイトに使いたいです
0177nobodyさん
2009/11/22(日) 15:23:11ID:???0178nobodyさん
2009/11/22(日) 15:28:52ID:???・CakeとZFどっちがいいのでしょうか。(質問するときはZFではなくZendと表記)
・大規模小規模云々
・結局のところ差はねえよ
・言語闘争
・Ajax使いたいんですがどうすれば良いんでしょうか
・クライアントとサーバの区別もつかんのか
・君たち何使ってるの?
・僕はちいたん、拙者は下衆ワーク
・PHPバージョン闘争
・最初に戻る
0179nobodyさん
2009/11/22(日) 15:35:32ID:???・フルスタックで全部入り、そのかわりガチガチな環境がいいか、
・必要最低限のライブラリとコーディング規約をもとに自由度の高い設計・構築をしたいのか
が最大の違いと思われ。
あと別に片方しか使えないわけではない
0180nobodyさん
2009/11/22(日) 17:07:18ID:???0182nobodyさん
2009/11/22(日) 18:16:04ID:???0183nobodyさん
2009/11/22(日) 23:29:07ID:???両方の思想が入り乱れて分け分からなくなるよ。
0184nobodyさん
2009/11/22(日) 23:37:07ID:???・Cake PHP
PHP 5.1
・Yii
・ZendFramework
・symfony
PHP 5.3
・Lithium
0185nobodyさん
2009/11/23(月) 07:51:09ID:???0187nobodyさん
2009/11/26(木) 16:54:04ID:???MVCの切り分けはCake側に一任する前提で、
pearライブラリ的にZFを使えば共存できるとは思うが
0188nobodyさん
2009/11/29(日) 18:34:12ID:???0190nobodyさん
2009/12/05(土) 11:54:47ID:djRTaKZ8dとかhみたいな関数を定義しているフレームワークって何でしたっけ?
0191nobodyさん
2009/12/05(土) 12:39:13ID:???0192nobodyさん
2009/12/05(土) 15:28:50ID:???0193190
2009/12/05(土) 18:17:16ID:???ありがとうございました
0194nobodyさん
2009/12/06(日) 11:13:35ID:CFjhkm3+OLDPasswordを設定しなくてもいいPHPのバージョンは、PHP5.0以上でしょうか?
0195nobodyさん
2009/12/06(日) 11:35:56ID:???0196nobodyさん
2009/12/06(日) 13:10:13ID:CFjhkm3+0197nobodyさん
2009/12/07(月) 01:45:54ID:???0199nobodyさん
2009/12/07(月) 23:11:05ID:???http://bit.ly/8S2bna
0200nobodyさん
2009/12/07(月) 23:13:30ID:???0201nobodyさん
2009/12/08(火) 20:49:14ID:???やっぱURIはそれだけである程度読み取れるような意味のある文字列にしたいとこだな
IDとか連番ものはしょうがないけど
0202nobodyさん
2009/12/08(火) 21:20:58ID:???0203nobodyさん
2009/12/08(火) 22:30:25ID:???なんで?
どいつもこいつも、スマートURLに毒されてないか・・・?
0204nobodyさん
2009/12/08(火) 22:33:42ID:???PHPで作ってる以上動作の差なんてまず出ないんだし、
PHP()使う以上見た目くらいはまともにしたいわなぁ
0205nobodyさん
2009/12/08(火) 22:34:44ID:???0206nobodyさん
2009/12/08(火) 22:59:10ID:???0207nobodyさん
2009/12/08(火) 23:53:01ID:???個人的には拡張子は無い方がいいが、GETクエリはあってもいい。
むしろWEB標準としてはそうあるべきで、スマートURLなんて所詮SEO対策に過ぎない。
スマートURLにありがちな、パラメータなのかファイルなのかわからなくなるってのはメリットでありデメリットでもある。
0208nobodyさん
2009/12/09(水) 11:38:32ID:???今時パラメータをズラズラ並べるなんてケミカルウォッシュジーンズに素足革靴を合わせるぐらい時代遅れですよ
0209nobodyさん
2009/12/09(水) 12:00:51ID:???0210nobodyさん
2009/12/09(水) 15:04:54ID:???Zend_Controller_Frontの部分でいきなり「何だコレは?」と身構えた
PEARとかのライブラリとか簡単だったから今回も楽かと思ったんだけど、次元が違いました・・・
0211nobodyさん
2009/12/09(水) 18:56:26ID:???0212nobodyさん
2009/12/10(木) 02:18:16ID:???0213nobodyさん
2009/12/10(木) 02:36:46ID:????hoge=moge&hige=mageとかもうやりたくない
0214nobodyさん
2009/12/10(木) 02:41:08ID:???全くないってわけじゃないけど
0215nobodyさん
2009/12/11(金) 13:55:00ID:???0216nobodyさん
2009/12/11(金) 15:04:58ID:???0217nobodyさん
2009/12/11(金) 15:30:33ID:???0218nobodyさん
2009/12/11(金) 15:40:50ID:???0220nobodyさん
2009/12/12(土) 18:41:16ID:???http://www.yiiframework.com/performance
これみてビビったんだが、実際のアプリケーションでもこんなに変わるの?
それとも手前味噌なベンチマークなの?
一応phpmark projectとしてオープンにして透明性を維持してるみたいだけど、
Hello Worldアプリだったら、無駄なincludeを排除するYiiが圧倒的劇速になるのは当然か・・
Yii使いの人、ご意見ください。
0221nobodyさん
2009/12/12(土) 19:17:18ID:???ハローワールドをどれだけ短いコードで書けるかで言語の優位性を示したりするのって
何か馬鹿みたいだよね
0222220
2009/12/12(土) 20:42:08ID:???正直僕もそう思うんですが、
実際問題、Yiiは実際のアプリで速いのかどうか?
を知ってる人がいればと思って書き込みました。
まあ、「実際のアプリ」って何やねんって話になるんだろうけど、
・条件に合ったものをソートして一覧表示
とか、
・あるレコードの詳細と関連するモデルのレコードの一覧表示
とか、
・テキストフィールドから入力->入力値バリデーションをパスしてレコード追加
とかそういうのになるのかな
結局dbのパフォーマンスが構成要素の多くを占めることになりそうだな
0225nobodyさん
2009/12/13(日) 01:22:22ID:???KVSなんかの利用でDBがボトルネックにならない状況が成り立つ事もある。
PHPが流行った理由の一つが、Perl/CGIより高速な事だから名。RoRが普及しないのもCGIじゃ使い物にならないからっていうのもあるはず。
Yiiって全然知らないけど、Rasmusは関係してるんだろうか。あの人、昔からPHPのウェブフレームワークに否定的だった。
0226nobodyさん
2009/12/13(日) 01:23:49ID:???生PHPの
<?php
echo 'Hello World';
も並べとけや
0227nobodyさん
2009/12/13(日) 01:32:42ID:???0228nobodyさん
2009/12/13(日) 05:41:05ID:???APCナシの状態では他よりちょっと速い程度なのに
ちなみに、手元のcakeの実アプリ
(ゲスト使用/ログイン使用で権限が変わる、ある実稼働サイトのソースコード)で
apc on/offでabベンチとったら3倍弱程度のRequest Per Secondsで、
ちょうど件のYiiのベンチにあるcakeの項目と同じ程度のAPCキャッシュ効果だった
(モデルキャッシュをFileでなくAPC側に持たせることでちょびっとだけ数字が改善した)
0229nobodyさん
2009/12/13(日) 17:28:18ID:???> yiic shell
> model HogeTable
> crud HogeTable
が便利だとおもった
0232nobodyさん
2009/12/14(月) 02:46:36ID:???0234nobodyさん
2009/12/14(月) 14:27:14ID:???下手に閉じた後に空行があると、その、なんだ、困る
0235nobodyさん
2009/12/14(月) 17:31:58ID:???0236nobodyさん
2009/12/14(月) 17:37:47ID:???Zend Framework: Documentation
http://zendframework.com/manual/ja/coding-standard.php-file-formatting.html#coding-standard.php-file-formatting.general
>PHP コードのみからなるファイルでは、終了タグ ("?>") は決して含めてはいけません。
>これは必須なものではなく、 終了タグを省略することで、
>ファイルの最後にある空白文字が出力に影響することを防ぎます。
0237nobodyさん
2009/12/14(月) 18:02:20ID:???0238nobodyさん
2009/12/14(月) 23:00:50ID:???0239nobodyさん
2009/12/15(火) 02:07:13ID:???<span class="hoge"><?php echo moge ?></span>みたいなのもさすがに書かないし
0240nobodyさん
2009/12/15(火) 05:21:09ID:???0242nobodyさん
2009/12/15(火) 22:19:16ID:???ちゃんと属性なりふってあんならレイアウトなりはCSSいじりゃ大抵はなんとかなるし
似非デザイナー()笑とかがいるようなのだとHTMLテンプレとかないとアレなんだろうけど、
趣味でやるなら全部PHPでやっちゃうのも別に問題ないとは思う
半端にHTMLタグ混ぜて>><><みたいなのがいっぱいになるよりは幾分は綺麗に見える気もするし
まったく逆方向で、マークアップすんだけのHTMLのインデントに
命かけてるようなひともいるわけだし、そこらは好き好きだろうけどw
0243241
2009/12/15(火) 23:59:56ID:???ただ実際問題、有償案件であれば、見た目に関わる部分はデザイナーなりコーダーかました方が、見てくれはいいわけで、
そこも自分でやっちまう or デザインは2の次 or コーダーさんがvalidなものを書ける なプロジェクトならばDOM生成でも良いわけだが・・・
つかここフレームワークのスレだな
0244nobodyさん
2009/12/16(水) 00:09:05ID:???みなさんは1.0.xつかってますか?それとも1.1を使ってますか?
0245nobodyさん
2009/12/16(水) 00:35:36ID:???それなりにあちこち変わってるし、どっちの情報も大して出回ってないし(国内とか数える程)、
いまから触るなら1.1系でいいんじゃないかな。
>>243
なんちゃってデザイナーがTableレイアウトしまくったりする現実を見てると
肩書きがWebデザイナーってても信用しづらいけどねw
ちゃんと理解して使えるなら誰がやっても良いとは思う。
文章なんかの意味づけだけならコード上で済ませてもいいんじゃないかな。
速度云々が気になるような差になるようなとこでもないし、
自分的には半端にHTMLとPHPコードが混ざってるのをぐいぐりするよりは好きかも。
まぁ確かにFWと関係ないけど、このスレではよくあること…
0246nobodyさん
2009/12/16(水) 00:39:08ID:???HTML触っててその延長で覚えたりしてる人とか結構いそうだし、
いい加減な性格じゃなけりゃXHTMLやらCSSやらいは勉強してるとは思う
まぁ問題があるとすれば全体的に使えないマのほうが多いってことだけどw
0247nobodyさん
2009/12/16(水) 11:04:38ID:KzRQDWcsビューのhtmlをパーツ化してて、ほとんどのコントローラで最終的に呼ばれるものがあります。
例えばページのメニュー表示の部分とか(ビュー内で、共通のhtmlをrequireしてます)
共通のhtmlの中身が今は完全にべた書きになっていて、これをDBから取得した値に動的にしたいんだけど
これって全部のアクションコントローラのコンストラクタ内にDB取得の処理入れなくちゃいけないものですか?
もしくはそれぞれアクションの中にとか。。
ただ、共通のhtmlが読み込まれない場合もあるので
コントローラ内で必ずDB取得しにいくってのも無駄だなぁって思ってます。
これは共通のhtmlが読み込まれた時だけ、ajaxで取得しにいくようにしといたほうがスマートですか?
なんかフレームワーク使ってなければ、必要なページでメニュー表示用のphpを読み込むだけで済むのにって思いました。
フレームワーク使うと、ビュー側でどうされてもいいように、コントローラ側で全対応しとかなきゃいけないものなんでしょうか?
自分がフレームワークをよく理解してないせいですかね。。
0248nobodyさん
2009/12/16(水) 16:22:20ID:???0249241
2009/12/16(水) 16:51:36ID:???しかもどっちのスレもスレ違いだしw
というわけで該当スレに行ってきましょう
0250nobodyさん
2009/12/16(水) 21:21:42ID:???0251nobodyさん
2009/12/16(水) 22:26:16ID:???1.1で行ってみます。
しかしまあ、仕様がシンプルなので、使うの楽ですね>Yii
0252nobodyさん
2009/12/20(日) 01:43:46ID:???そのうち改名しそう
0253nobodyさん
2009/12/20(日) 19:06:11ID:???Yiiの名前はYii Frameworkだから平気。
0254nobodyさん
2009/12/20(日) 22:29:38ID:???0255nobodyさん
2009/12/20(日) 23:42:15ID:???0256nobodyさん
2009/12/30(水) 15:32:07ID:???http://www.yiiframework.com/doc/guide/ja
0257nobodyさん
2010/01/02(土) 11:32:29ID:???いつの間にか、日本語訳されている箇所が増えている!!!
中の人、お疲れ様です。
0258nobodyさん
2010/01/02(土) 17:49:33ID:???英語さっぱりなので手伝えることはないけど新しいとこの翻訳がずっと手付かず
0259nobodyさん
2010/01/11(月) 14:56:05ID:???お前、小・中学校時代クラスで一番下だったろ
日本の失業率は5%(総務省統計局・労働力調査)だ
5%って事は20人に1人、1クラスが男女半数ずつ40人として
クラスの男1人は無職になるということだ
お前、クラスで一番下じゃなかったか?
テストの点数なんか聞いてないぞ。人間としてだ
よく思い出してみろ。無職になるのは、誰だ?
0262nobodyさん
2010/01/13(水) 13:50:00ID:???今時は、30人くらい?
0263nobodyさん
2010/01/13(水) 18:07:46ID:???一クラスの人数がもっと少なければ、もっと密な指導が〜
は、全くの嘘だったと判る。
と、スレ違いをさらに引っ張ってみる。
0264nobodyさん
2010/01/13(水) 19:25:08ID:???40人中でトップを争うか30人中で争うか、その違い。
どのみち社会をリードするのはトップの連中なのに、
リーダー格が育たない原因を作ってるからな。
今の日本じゃみんな井の中の蛙化してプライドだけが高い
0265nobodyさん
2010/01/13(水) 22:28:29ID:???0266nobodyさん
2010/01/13(水) 22:41:01ID:???意味分かんねぇよw
0267nobodyさん
2010/01/14(木) 02:36:03ID:???0268nobodyさん
2010/01/15(金) 00:17:19ID:???0269nobodyさん
2010/01/16(土) 12:55:25ID:???日本人が作ったらしい
0270nobodyさん
2010/01/16(土) 15:07:34ID:???0271nobodyさん
2010/01/16(土) 17:13:38ID:???PEAR、Smartyは結構使えるのですが、CakePHPは併用は出来るのでしょうか?
名前空間がしっかり出来ていないとかいう指摘は聞きますが・・・
ZFはPEARのようなライブラリっぽくて使いやすいかなとか思ったのですがPHP関数で非推奨なものとかあったり、せっかくPEARで覚えたものと重複していたりで無駄に思えたりでCakePHPにしようかなと思っています
ZFはいいFWだとは思うのですが
マニュアルを見たところ、ZFに比べると記述量も関数も非常に少なく思いましたが、その分CakePHPは今までの自分の持っているスキル(PHP、PEAR、Smarty等)をZFよりも反映させやすいのでしょうか?
0272nobodyさん
2010/01/17(日) 06:27:20ID:???0273nobodyさん
2010/01/17(日) 11:39:04ID:???ttp://d.hatena.ne.jp/anatoo/20100116/1263620509
> タイトルはここからインスパイアされた。
> 最近PHP5.3で動く新しいウェブアプリケーションフレームワーク作っている。
> まだ一度もリリースしていないが以下その概要について箇条書きとサンプルコードを少し書く。
> * PHP5.3以上で動く
> * コントローラ = コールバック
> * コントローラを作るのに必ずしもクラスを書く必要がなく、匿名関数でもよい
0274nobodyさん
2010/01/17(日) 11:42:08ID:???Blanka::app(new MyContainer)->respond(Dispatcher::it()
->{'GET /user/{name}'}('@page¥User')
->{'GET /'}('@page¥Root')
);
というサンプルコードが載っているんですが、「->{'GET /'}」というのがよくわかりません。
PHPでこんな文法って許されるんでしたっけ?
0275nobodyさん
2010/01/17(日) 17:23:40ID:???0276nobodyさん
2010/01/17(日) 22:29:16ID:???シルクハットの人goodjob
0277nobodyさん
2010/01/18(月) 02:37:07ID:???0278nobodyさん
2010/01/18(月) 15:21:15ID:???本とマニュアルで学習してるんだけど、全然進まない・・・
構造難しいし、メソッドとか新しく覚えなきゃいけないし、それにマニュアルがいまいちで関数調べるのにめっちゃ時間かかる
0280nobodyさん
2010/01/18(月) 15:57:58ID:???いや、比較してってわけじゃなくて、ZFそのものが
まだ情報が少ないのか、Webで分からないところを検索してもあんま出てこなかったりするし
かと言ってマニュアル読んでも分からなかったり
0281nobodyさん
2010/01/18(月) 16:37:26ID:???本は物によるだろうけど、自分が買った奴はわかりやすかった
0282nobodyさん
2010/01/19(火) 04:26:04ID:???難しいと感じるなら先にPHPの能力を鍛えたほうがいいかも
0283nobodyさん
2010/01/20(水) 09:49:42ID:???構造が入り組んでたり、PHPの学習では出てこないような単語とか出てくるから
0284nobodyさん
2010/01/21(木) 09:59:51ID:???actionIndex()のコードの頭に”0”が付くのは仕様?
0 public function actionIndex()
0285nobodyさん
2010/01/21(木) 11:22:36ID:???気のせいじゃね?
0286nobodyさん
2010/01/21(木) 11:44:09ID:???http://www.yiiframework.com/doc/guide/ja/quickstart.first-app
http://www.yiiframework.com/doc/blog/ja/prototype.scaffold
ここの手順でやってたんだけど気のせいじゃないとおもう。
YiiガイドでもブログチュートリアルでもCRUDコマンドを実行したら
>>284みたいな同じ症状でそのままではエラーになる。
”0”を消すと動くけど。
Yiiのバージョンは1.1.0
環境によるバグかなんかだろうか。まあたいした問題ではないが。
0287nobodyさん
2010/01/21(木) 12:40:33ID:???自己レス
yii\framework\cli\views\shell\crud\controller.php
line 127|| 0 public function actionIndex()
となってるからshellで”0“が入るのは仕様みたいだ。
0288nobodyさん
2010/01/21(木) 20:59:48ID:???1.1.0 (January 10, 2010)落としてきてみたが
127|| public function actionIndex()
まさかとは思うけど自分でいじってて0書き込んだりなんてアホなことしてないよね?
更新日時とか、変わってたりしないよね?
0289284
2010/01/21(木) 21:15:45ID:???>更新日時とか、変わってたりしないよね?
変わってた…orz
これは天狗の仕業か!?
アホなことでお騒がせしてすいません。
0290nobodyさん
2010/01/21(木) 21:22:53ID:???そんなあからさまなバグ含めたままリリースしてるわけないとおもうのw
参考にコード見てて間違えてキー押しちゃってたりすることは稀に良くあるしな
0291nobodyさん
2010/01/22(金) 15:09:53ID:???【xFrameworkPX 3.5】
ttp://www.xframeworkpx.com/
でもアクセスすると
Fatal error: Maximum execution time of 60 seconds exceeded in Unknown on line 0
というエラーが。これはまずいだろう。
0292nobodyさん
2010/01/22(金) 15:26:41ID:???0293nobodyさん
2010/01/22(金) 22:10:36ID:???0294nobodyさん
2010/01/22(金) 22:15:50ID:???php ファイル名
0296nobodyさん
2010/01/22(金) 22:47:50ID:???0297nobodyさん
2010/01/23(土) 13:28:17ID:???2をまともに進化させてほしかったな。
3は、初めて書いたプログラムを、ひと月後くらいにちょっとわかった気になって綺麗に書き直そうとしたら、下手な知識が仇になって余計悪くなったみたいな感じ。
0298nobodyさん
2010/01/23(土) 13:34:04ID:???0299nobodyさん
2010/01/23(土) 20:06:47ID:???ttp://d.hatena.ne.jp/localdisk/20091224/1261660948
0300nobodyさん
2010/01/24(日) 18:03:32ID:???Seaser2のMayaaっぽいね。こうゆうの結構好きだよ。
個人的には、PHPTALの方がもっと好きだけど。
ttp://phptal.org/
0302nobodyさん
2010/02/03(水) 01:09:50ID:???0303nobodyさん
2010/02/03(水) 01:10:18ID:???0305nobodyさん
2010/02/03(水) 14:02:39ID:???0306nobodyさん
2010/02/03(水) 15:21:37ID:???0307nobodyさん
2010/02/03(水) 22:56:14ID:???0308nobodyさん
2010/02/03(水) 23:09:23ID:???0309nobodyさん
2010/02/03(水) 23:26:47ID:???0310nobodyさん
2010/02/04(木) 03:24:09ID:???そのタケなんとかってオナニーFWと予想されるゴミおそうとすんのは作者くらいだろw
誰も触ったことなんてないから説明のしようもないし、今後触ることもない
記憶にとどめる意味もないと思われ
多くはこれ>>2のどれかで、業務でつかってるの大半はCakeだと思われ
あとここにないものだと、興味からYiiを触ったりする人もいるみたいかな
もっとも、小規模のものは生PHPでFWは使わない(使うスキルがないとも言えそうだが)
0311nobodyさん
2010/02/04(木) 04:35:40ID:???タケルンバさんはそんな風に匿名で人を貶めることはしませんよ
0312nobodyさん
2010/02/04(木) 09:44:13ID:???0313nobodyさん
2010/02/04(木) 10:48:02ID:???0314nobodyさん
2010/02/04(木) 14:10:23ID:???(俺は)宣伝乙とか言わないのでとりあえずURL貼ってくれ
俺以外の奴が宣伝乙って書くだろうけど
で、さっさとこの話題きりあげようぜ
0315nobodyさん
2010/02/04(木) 14:11:41ID:???0316nobodyさん
2010/02/04(木) 16:05:00ID:???いや知りたくもねーよw
0318nobodyさん
2010/02/04(木) 18:39:55ID:???最近2chのあちこちで見かける
どうせクソブロガーの宣伝っしょ
0319nobodyさん
2010/02/04(木) 21:49:00ID:???0320nobodyさん
2010/02/04(木) 23:12:04ID:???0321nobodyさん
2010/02/05(金) 02:33:40ID:???0322nobodyさん
2010/02/06(土) 00:37:50ID:???生PHPがある程度できるなら、ガイドブック買って流してみるってのが王道かもなー
0324nobodyさん
2010/02/06(土) 07:48:57ID:???私怨があるなら他所でやれ単純に迷惑
宣伝したいならもっと別のまともな手で魅力を訴えて見せろ
0326nobodyさん
2010/02/09(火) 08:05:02ID:???公式のチュートリアルをまずやって味噌
http://book.cakephp.org/ja/view/219/Blog
0327nobodyさん
2010/02/11(木) 00:32:24ID:???0329nobodyさん
2010/02/12(金) 09:05:11ID:???インストール・設定からならこっちのほうがいいかもね
http://book.cakephp.org/ja/view/27/Developing-with-CakePHP
とにかくCakeはマニュアルと日本語情報が豊富だからググれば何とかなる。
0330nobodyさん
2010/02/15(月) 02:19:07ID:???0331nobodyさん
2010/02/15(月) 23:13:47ID:???0332nobodyさん
2010/02/20(土) 12:26:27ID:???0333nobodyさん
2010/02/21(日) 19:42:31ID:???0334nobodyさん
2010/02/22(月) 11:42:24ID:???PHPでやっているようなセキュリティを自分で記述していく必要があるのでしょうか?
それともフレームワークの方である程度行ってくれるのでしょうか?
また、フレームワークを使ったからこそ起こった、というようなセキュリティホールなど存在するのでしょうか?
0335nobodyさん
2010/02/22(月) 15:41:34ID:???0337nobodyさん
2010/02/23(火) 01:58:59ID:???0338nobodyさん
2010/02/25(木) 08:13:16ID:???http://atnd.org/events/3294
> PHPユーザのためのPythonとGoogle AppEngine勉強会
0340nobodyさん
2010/02/28(日) 10:29:01ID:xRtiCHYH使ってる人います?
0341nobodyさん
2010/02/28(日) 23:53:30ID:???0342sage
2010/03/03(水) 13:48:57ID:bgcdMcjmやっぱそうなんですね、レンタルサーバーとかでも使いやすそうで、
ライブラリとしても使えるとのことでしたので
もう少しかじってみます。
0343nobodyさん
2010/03/13(土) 18:44:49ID:???今後もfw学習していくなら触れない方がためな気もする・・・
0344nobodyさん
2010/03/15(月) 18:01:36ID:???CodeIgniterから派生したKohana
ここらもチェックしてみてはいかがでしょうか?
0345nobodyさん
2010/03/19(金) 04:25:31ID:???0346nobodyさん
2010/03/19(金) 04:38:27ID:???0347nobodyさん
2010/03/19(金) 12:06:05ID:???実際のところシェアってどうなってるんだろ
0348nobodyさん
2010/03/19(金) 22:12:31ID:???0349nobodyさん
2010/03/20(土) 01:07:53ID:???0350nobodyさん
2010/03/20(土) 03:10:35ID:???0351nobodyさん
2010/03/20(土) 03:52:33ID:???0352nobodyさん
2010/03/20(土) 04:31:24ID:???cakePHPの検索数1位がなんで沖縄県なんだろ?
0355nobodyさん
2010/03/21(日) 01:29:07ID:???0356nobodyさん
2010/03/22(月) 13:25:16ID:???0357nobodyさん
2010/03/24(水) 02:46:46ID:???0358nobodyさん
2010/03/25(木) 14:01:07ID:???0359nobodyさん
2010/03/26(金) 02:49:50ID:???Zend難しいって言ってる人は、コード読む気がないんじゃなかろうか。
あれだけ素直に使えるライブラリは素敵だぞほんと。
$this->Posts->set($this->data)
いきなりこんなの理解できるか > Cake
$this->dataには何が入ってるんだよ > Cake
んで、どうやって応用すればいいんだよ > Cake
$this->hoge = "page"
これはどこに何をセットしたんだよ。 > Cake
以上、私怨スマソ
0360nobodyさん
2010/03/26(金) 03:50:54ID:???0361nobodyさん
2010/03/26(金) 11:41:05ID:???0363nobodyさん
2010/03/27(土) 21:44:03ID:???0364nobodyさん
2010/03/28(日) 01:01:35ID:???0365nobodyさん
2010/03/28(日) 10:52:13ID:???Lithiumって、なんかいろいろ頑張って、結局完成とか安定とかしないイメージ
0366nobodyさん
2010/03/28(日) 17:46:51ID:???こまめにアップデートしてくれるほうがいいんだよね
0368nobodyさん
2010/03/29(月) 12:04:41ID:???0369nobodyさん
2010/03/30(火) 03:59:50ID:???1.2->1.3の変化量は、それまでのちゃぶ台ひっくり返し的な変化に比べればそれほどではないと思う。
つまりなにがいいたいかっていうと、内部の激変はそれほどこないんじゃないかな
それがいい事なのか、それともmojavi化(停滞・gdgd)なのかは知らん
というか、ずっとPHPのフレームワーク周りを追っかけてきてて、むしろPHPに固執する必要があるのか?
という事も考えてしまう。
そんな俺がPHPベースのFWでこれからどうなるんだろうとwktkできるのはYii
0370nobodyさん
2010/03/30(火) 04:07:14ID:???<[if:$a==1]>hoge
<[else:]>hage
<[end:]>
みたいなソースってなに?
フレームワークなのかどうかもよくわからない
php初心者ですが、えらい人教えてくらさい。
0372nobodyさん
2010/03/30(火) 14:04:29ID:?????どのフレームワークかを知りたいのですが、、、
すんません全然フレームワークもテンプレート?も
理解してないので会話になってないのかな。
ディレクトリのどっかみたらわかる?
0374nobodyさん
2010/03/30(火) 14:35:29ID:???拾ってない
外注したうちの会社で使ってるのウェブベースのソフト
つくったソフト会社とはわけあってほとんど会えないし、
こっちでいじるの嫌がるので(当たり前だね)聞きづらい。
0375nobodyさん
2010/03/30(火) 15:18:20ID:???たとえば外注の自作フレームワークならここで聞いても答えようが無いわけで。
そのファイルを読み込んでいるプログラムがわかれば判断できるんでないの。
0376nobodyさん
2010/03/30(火) 17:59:22ID:???自作かな
ともかくありがと
0378nobodyさん
2010/04/01(木) 04:16:17ID:???ほんとにこのスレの守備範囲なのかどうかも微妙
0380nobodyさん
2010/04/07(水) 01:15:12ID:???そうなのか。この時点で辛いなw
頑張って流行らせてくれ。そしたら使うしノウハウも共有できるから
0381nobodyさん
2010/04/07(水) 02:27:11ID:???0382nobodyさん
2010/04/07(水) 05:35:47ID:???0383nobodyさん
2010/04/07(水) 05:36:44ID:???0384nobodyさん
2010/04/07(水) 16:31:02ID:???0385nobodyさん
2010/04/07(水) 20:10:20ID:???0386nobodyさん
2010/04/07(水) 21:58:19ID:???0387nobodyさん
2010/04/07(水) 22:36:34ID:???0388nobodyさん
2010/04/10(土) 12:34:54ID:???あのフレームワーク使って、どの辺がどう「コンポーネント指向」なのか
まったくわからん、ってのが最大の敗因かと思う。
0389nobodyさん
2010/04/10(土) 15:25:33ID:???ただ新しく覚えるのがめんどくさい層は手を出さないから利用者増えてないってだけで
0390nobodyさん
2010/04/10(土) 17:36:19ID:???0391nobodyさん
2010/04/10(土) 19:31:01ID:???でもパフォーマンスの高さは気になる
0392nobodyさん
2010/04/11(日) 16:21:29ID:???0393nobodyさん
2010/04/13(火) 01:40:58ID:???0394nobodyさん
2010/04/13(火) 11:27:42ID:???0395nobodyさん
2010/04/13(火) 14:40:15ID:???0396nobodyさん
2010/04/14(水) 02:42:10ID:???0397nobodyさん
2010/04/18(日) 09:15:16ID:???そろそろ期待の新星、symfonyの話でもしようか。Propelいいんじゃね?
0398nobodyさん
2010/04/18(日) 09:17:50ID:???0399nobodyさん
2010/04/18(日) 14:20:32ID:???0400nobodyさん
2010/04/18(日) 15:18:11ID:???0402nobodyさん
2010/04/18(日) 15:53:58ID:???0403nobodyさん
2010/04/18(日) 17:42:31ID:???0404nobodyさん
2010/04/30(金) 11:23:05ID:???http://www.craftgear.net/docs/yii_blog_tutorial/index.html
本家の日本語訳が途中でストップしてるけど、こちらは全部訳してある。
本家
http://www.yiiframework.com/doc/blog/ja
0405nobodyさん
2010/05/31(月) 17:55:33ID:???発売日: 2010/8/16
価格: ¥ 4,109
http://www.amazon.co.jp/Agile-Application-Development-Yii1-1-PHP5/dp/1847199585/ref=sr_1_1?ie=UTF8&s=english-books&qid=1275295975&sr=8-1
0406nobodyさん
2010/05/31(月) 23:28:02ID:???言語追加しておかないと、Yiiのrequirementsで日本語表示されないのう
サブコードついてたらそれに見合うディレクトリがある前提で見に行っちゃうし
きちゃないけど、こんな感じの追加とかしたほうがいいんじゃないかのう
requirements/index.php
224| if(!is_file($viewFile))
225| $viewFile=dirname(__FILE__).'/views/index.php';
224| if(!is_file($viewFile))
225| {
226| list($lang)=explode('_',$lang);
227| $viewFile=dirname(__FILE__)."/views/$lang/index.php";
228| if(!is_file($viewFile))
229| $viewFile=dirname(__FILE__).'/views/index.php';
230| }
0407nobodyさん
2010/06/18(金) 08:04:35ID:???それ尼じゃなくて、出版元のebook(印刷可)で予約したら
14.44GBPだから約半額で買えるぞ。てか予約したし。
0408nobodyさん
2010/06/18(金) 12:22:07ID:???0410nobodyさん
2010/06/18(金) 23:01:05ID:???0411nobodyさん
2010/06/18(金) 23:32:57ID:???0412nobodyさん
2010/06/19(土) 02:27:56ID:???0416nobodyさん
2010/07/07(水) 17:09:11ID:???DIコンテナをPHPで使う利点がいまいちわかりません。
勉強したいので、「わからないなら使わなくていい」という回答はご遠慮ください。
0417nobodyさん
2010/07/07(水) 17:14:38ID:???1分で理解出来る概念に資料も糞もないわ
0418nobodyさん
2010/07/07(水) 22:01:41ID:???0419nobodyさん
2010/07/07(水) 23:12:25ID:???理解さえできれば、メリット、デメリットはすぐに見えてくるかと思います
勉強のとっかかりかたまで教えてもらう必要があるように程度が低いのであれば、諦めるというのも一つの手です
ってか、ド素人なにわかな俺でもぐぐって3分かからずわかるような内容じゃん…
そもそもこれ別にPHPでって言語で限定するような内容でもないよ
PHPの使い方はこうあるべきだ!なんて思ってる人なら色々思うところあるんだろうけど
勉強したいなら勉強しましょう。質問したいならどういう理由で利点がないと感じたかを書くべき
0420nobodyさん
2010/07/08(木) 00:47:45ID:???「3分かからずわかる」はないわ
あと、コンパイルしてデプロイして云々のJavaでのメリットはわかりやすくても、
それをPHPに持ち込むメリットは、正直具体例をあげて誰かに説明してもらいたい
0421nobodyさん
2010/07/08(木) 01:24:33ID:???classのラッパーを作成するってだけのことでしょ
0423nobodyさん
2010/07/08(木) 22:57:53ID:???>そもそもこれ別にPHPでって言語で限定するような内容でもないよ
これは多言語を理解していないか、DI自体を理解していないな。
0424nobodyさん
2010/07/09(金) 12:03:02ID:???>1分で理解出来る概念に資料も糞もないわ
大変優秀な方ですね。私にはとても1分では理解できませんでした。
DIコンテナは、Javaではよく使われてますが、動的な言語ではほとんど使われていません。
PHPのような動的な言語にもDIコンテナが役立つかどうかについては、いまだ結論は出てないようにおもいます。
ただ、PHPにはDIコンテナをうりにしたフレームワークがあるようなので、動的な言語でもDIはこんなに便利だと
いうのをうまく説明できる人がいらゃっしゃることを期待して質問しました。
ですので、なにか情報をご存知の方がいましたら教えてください。
0425nobodyさん
2010/07/09(金) 12:31:58ID:???0426nobodyさん
2010/07/09(金) 12:34:43ID:???0427nobodyさん
2010/07/09(金) 14:31:12ID:???0428nobodyさん
2010/07/09(金) 18:51:33ID:???http://www.slideshare.net/fabpot/dependency-injection-with-php-53
これみたらわかると思うよ。
0429nobodyさん
2010/07/09(金) 23:18:59ID:???0430nobodyさん
2010/07/10(土) 00:49:27ID:???理解できたらあとは>>417。ケースバイケースだって意味がわかってくるんじゃないの?
>>426みたいな人には、「わからないなら使わなくていい」、という回答以外にいい答えないと思うけどな
//そもそも割とスレチ
//PHPのフレームワークにそういうのがあるから、っていっても
//そのフレームワークの話題どころか名前すら出してないのに、わざわざこのスレで語る内容かこれ
0431nobodyさん
2010/07/10(土) 01:10:03ID:???0432nobodyさん
2010/07/10(土) 01:42:45ID:???言葉は知らなくても自然とやっている人は多い
0433nobodyさん
2010/07/10(土) 01:51:28ID:???こいつは全然わかってないのは分かった。
0434nobodyさん
2010/07/10(土) 02:04:27ID:???0435nobodyさん
2010/07/10(土) 02:05:51ID:???便利さはわかってない
0436名無しさん@そうだ選挙に行こう
2010/07/10(土) 10:58:41ID:???DIはソフトウエアパターン、DIコンテナはそれを実現する技術の一つ。
0437名無しさん@そうだ選挙に行こう
2010/07/10(土) 11:05:35ID:???SeasorとかMapleじゃないの?Symfony2.0とか。
こんあのもあるけど
http://code.google.com/p/yadif/wiki/UsageExamples
DIはフレームワークと結びついてること多いのでこのスレで全然問題ないとおもう。
0438名無しさん@そうだ選挙に行こう
2010/07/10(土) 12:35:02ID:???どうせならフレームワークを使いたいと思うので
皆さんのお勧めを教えて下さい。
要件ですが
業務システム
DB MSSQL 2005
テーブルは既存システムのを使うため変更出来ません
OS Win2008 std 64bit
更新系ほとんど無し
参照系7本
単純な認証あり
複雑なSqlを書ける必要あり
グリッドでドリルダウンをしたいのでajaxを使うかも。
言語は、主に英語
MSSQLのストアドプロシージャも
使うかも。
設置が簡単であって欲しい。
javaやc#でseasarを使ってるので
使えたらDtoを挟みたい。
よろしくお願いします。
0439名無しさん@そうだ選挙に行こう
2010/07/10(土) 14:17:27ID:???yiiでinput要素を順次saveしていきたいんだ。
そこでrecordをまとめた要素をforeachで回して
saveするため、
$model->attributes=$data['post'];
$model->save();
$model->refresh();
としているのだがprimaryIdが更新されないために
レコードがupdateされて結局最後のレコードしか保存されない。
yii使い始めたばかりなんだが正しいやり方を知っていたら教えてほしい。
0440名無しさん@そうだ選挙に行こう
2010/07/11(日) 00:10:05ID:???自己解決しました。
とりあえずprimaryIdが新規とされるようメンバ変数を修正したが
ちょっと無理やりっぽい。
あまり例が無いからどういった処理が正しいのかわからないな。
saveAllがあると良いんだけど。
0441名無しさん@そうだ選挙に行こう
2010/07/11(日) 01:42:36ID:???0442名無しさん@そうだ選挙に行こう
2010/07/11(日) 10:26:13ID:???翻訳が進んでないのが悲しい。英語苦手だから助かってたのに
0443名無しさん@そうだ選挙に行こう
2010/07/11(日) 14:02:45ID:???型の依存、たとえばこのクラスAは、クラスBを継承しているなんてものがコンパイル時に決まってしまう。
そうすると単体テストがやりにくくなってしまう。たとえばクラスAのテストをするとき、
クラスBは無いものとして行うのが単体テストだから依存性があるとテストしにくいわけ。
これを取り除いて、クラスAはクラスAとして、クラスBはクラスBとして
独立している状態で実行時に設定ファイルにより継承関係をあとから付け足すのが
依存性の注入。
PHPなどの動的型付け言語の場合、evalなどの機能で実行時に
クラスとか関数を作れるので、DIコンテナのような仕組みが無くても
言語仕様の範囲である程度は作れてしまえる。
静的型付け言語だとそれが難しいから、DIコンテナのような仕組みを
作らないといけない。まあ一種のフレームワークだね。
0444名無しさん@そうだ選挙に行こう
2010/07/11(日) 16:35:59ID:???よくある誤解だ。もし動的言語でDIが全く不要なものならSymfony2.0で採用されないだろう。
再コンパイルが不要というのはDIの効果のごく一部に過ぎない。
「設定ファイルにより継承関係をあとから付け足す」
これも従来の特定のDIコンテナの一部実装に過ぎない。Guiceだと非設定ファイルでの注入が普通だ。
0445名無しさん@そうだ選挙に行こう
2010/07/11(日) 17:37:54ID:???0446名無しさん@そうだ選挙に行こう
2010/07/11(日) 17:47:20ID:???結局DIコンテナの有用性を一つも指摘してないじゃないかw
0447名無しさん@そうだ選挙に行こう
2010/07/11(日) 20:16:53ID:???0448名無しさん@そうだ選挙に行こう
2010/07/11(日) 20:27:47ID:???三行で説明できます。
ただし一行の文字数は無制限という前提で。
0449名無しさん@そうだ選挙に行こう
2010/07/11(日) 22:14:08ID:???0450nobodyさん
2010/07/12(月) 13:07:11ID:???>http://www.slideshare.net/fabpot/dependency-injection-with-php-53
>これみたらわかると思うよ。
ありがとうございます。まさにこういう資料を探してました。感謝です。
これを読んで、自分なりには以下のように解釈しました。
・DIはdecouplingが目的である
・decouplingすることはPHPのような動的言語でも役に立つ
・ゆえにPHPでもDIは役に立つ
#間違いがあればご指摘ください。
この資料のおかげで、自分なりの結論が出ました。ありがとうございます。
>>436
>DIはソフトウエアパターン、DIコンテナはそれを実現する技術の一つ。
まさしくそのとおりですね。DIコンテナを使わなくてもDIは実現できますが、
DIコンテナを導入した方が自然に記述できると思ったら導入すればいい。
>>437
こちらもありがとうございます。実装が240行程度なので、参考になります。
>>444
>もし動的言語でDIが全く不要なものならSymfony2.0で採用されないだろう。
ですね。その点、RubyやPythonのフレームワークより、PHPのほうが一歩進んでいるという印象を受けました。
レスくれたみなさん、ありがとうございました。>430みたいな人ばっかりだったらどうしようと思いましたが、聞いてよかったです。
0451428,436,437,444
2010/07/13(火) 01:40:40ID:???DIはとかくいろんな事がごっちゃに語られやすい(=初学者に本質がわかりにくい)
スライドの11/104が最も単純な依存性の注入。メリットは25-33にまとまってる。英語がわからなくてもコードでわかるだろう。
0452nobodyさん
2010/07/13(火) 12:02:46ID:???なんと全部同一人物とは。
PHPにもこんな賢い人がいるじゃないですか。
名前は存じませんが今後ともご活躍を祈っております。
0453nobodyさん
2010/07/13(火) 14:00:15ID:???0454nobodyさん
2010/07/14(水) 01:23:30ID:???0455nobodyさん
2010/07/14(水) 17:59:36ID:???■Ktai Library for cakephp 勉強会@関東
URL: http://atnd.org/events/6209
日時: 2010/07/17 11:00 to 15:00
場所: マイ・スペース&ビジネスブース池袋西武横店
参加条件: Masa-Pさんの本「PHPで作る携帯サイト デベロッパーズガイド」を持参、かつ4章までを自力である程度実装できている、もしくは出来る方
■OpenPNE3で学ぶsymfony勉強会
URL: http://atnd.org/events/6255
日時: 2010/07/24 15:00 to 17:00
場所: 手嶋屋新宿御苑オフィス
内容: この勉強会は毎回OpenPNE3の各機能、仕様にフォーカスを当て、ベースフレームワークであるsymfonyを理解していく勉強会です。
参加者はみんなsymfonyに興味のあるプログラマです。Webエンジニアとのネットワークづくりにもお役立てください。
■Python4PHPer 第7回講習会
URL: http://atnd.org/events/6344
日時: 2010/08/12 10:00 to 22:00
場所: 国立オリンピック記念青少年総合センター
内容: Python未経験者向けの、PythonとGoogle App Engine (GAE) の入門講座です。
■第11回 LOCAL PHP部勉強会
URL: http://atnd.org/events/6443
日時: 2010/08/28 14:00 to 16:30
場所: 札幌市産業振興センター セミナールーム9
0456nobodyさん
2010/07/21(水) 17:25:41ID:???0457nobodyさん
2010/07/21(水) 17:45:29ID:???でもまだ公開サイト用はcake使ってる
もう少し日本人ユーザー増えればいいのに
0458nobodyさん
2010/07/21(水) 20:04:00ID:???0459nobodyさん
2010/07/21(水) 22:22:24ID:???まぁここ半年くらい書き込みなくても早々落ちるような板じゃないし、スレはあってもいいと思うお
0460nobodyさん
2010/07/22(木) 00:50:03ID:???何かお題目無い?
0462nobodyさん
2010/07/22(木) 01:07:55ID:???情報共有だとやっぱり http://www.yiiframework.com/forum/ 使うのが良いのかねぇ
0463nobodyさん
2010/07/22(木) 01:17:25ID:???英語理解するのちょっと時間掛かるんだよなー
0464nobodyさん
2010/07/22(木) 17:22:40ID:???0465nobodyさん
2010/07/22(木) 18:05:12ID:???設計の良し悪しが解る
今はまだ判断するときじゃない。
0466nobodyさん
2010/07/23(金) 00:05:27ID:???個人的に公開されたサイトで利用してる人っているんだろうか
0467nobodyさん
2010/07/23(金) 06:43:49ID:???Yiiは簡易過ぎる
0468nobodyさん
2010/07/23(金) 10:27:24ID:???0469nobodyさん
2010/07/24(土) 03:54:43ID:???0470nobodyさん
2010/07/24(土) 11:42:11ID:???kohanaはユーザに日本人が多いのが良さそうだね。
0471nobodyさん
2010/07/25(日) 04:33:38ID:???0472nobodyさん
2010/07/25(日) 20:20:57ID:???kohanaはマイナー
yiiはそれ以上にマイナー
0473nobodyさん
2010/07/26(月) 00:00:16ID:???0474nobodyさん
2010/07/26(月) 02:24:23ID:???Codeigniterの正規化のkohanaの方がまだメジャー
0475nobodyさん
2010/07/26(月) 03:07:29ID:???そして実際kohanaのextensionはyiiに比べて少ない。
0476nobodyさん
2010/07/26(月) 03:38:34ID:???0477nobodyさん
2010/07/26(月) 05:03:49ID:???質にもよるけど。
別にどちらかの肩を持つわけではないので
確かにCodeigniter派生のkohanaのほうが知名度が
あるというのは納得。
0478nobodyさん
2010/07/26(月) 17:04:07ID:???0479nobodyさん
2010/07/26(月) 19:51:16ID:???0480nobodyさん
2010/07/27(火) 00:07:04ID:???自分はYiiしか知らんかったから、Yiiをさわってみてる
Codeigniterあんま好きじゃないしw
0482nobodyさん
2010/07/27(火) 02:14:07ID:???0483nobodyさん
2010/07/27(火) 02:17:21ID:???コミュニティの対立を煽る。
ほっとけ。
0484nobodyさん
2010/08/09(月) 03:15:33ID:???つーか、ドキュメントを何回も読み返してソースも解読して、
だいぶ慣れてきたけどなー。
つーか、慣れたところで独法系のお試しプロジェクトとか、
ヴェンチャー系の新しいもん好きプロジェクトしか金に
ならなさそうだけどなーーー。ま実装形態とかdbの思想が
違うだけで、やってることはCakeとあんま変わらんけどなーーーー。
0485nobodyさん
2010/08/09(月) 12:49:41ID:???あぁ英文のか。
yiiはconditionの書き方がcakeと結構違うので戸惑う
っていうかよくわからない。
0486nobodyさん
2010/08/09(月) 13:58:44ID:???ただgoogle始め機械翻訳がバカ過ぎて、辞書引き引きになって
語学やってんのか、ドキュメント呼んでのか分からなくなるが。
0487nobodyさん
2010/08/09(月) 14:19:01ID:???ネットで見てもまず無視するわ。
yiiってscafolldingが綺麗だから
そのままでも結構使えて便利。cakeはそのまま使う気にはなれない。
0488nobodyさん
2010/08/09(月) 21:34:03ID:???0489nobodyさん
2010/08/09(月) 23:33:52ID:???ハングルにしてもキリルにしても一週間でも集中して語学っぽくやれば
読めるようになるぜよ。さすがにアラビア文字はいまだに読めんし
ギリシャ文字は必要に迫られんから読もうとは思わんが。
韓国はネトゲエンジン、ロシア・ウクライナは洋ゲーで日本より前進
してる部分があるから、PHPのFWやる限りはあんま必要ないが、
開発ドキュメントは面白いのが埋もれてる。まぁgoogleで大体は
こと足りるけど、半分くらいは出鱈目な結果になって結局自力で
細かく翻訳する羽目になるんだよな。特にロシア語は内部で
変換してる露英辞書が貧弱すぎるきらいがある。スレチすまん。
0490nobodyさん
2010/08/10(火) 17:45:43ID:???0492nobodyさん
2010/08/12(木) 19:08:29ID:???0493nobodyさん
2010/08/13(金) 17:49:32ID:???とかなんとか理由つけて逃げてるだけなんですがー
0494nobodyさん
2010/08/13(金) 18:05:33ID:???0495nobodyさん
2010/08/13(金) 20:21:26ID:???0496nobodyさん
2010/08/15(日) 20:15:29ID:???yiicのころさわったきりだったけど、こりゃ楽だわw
0497nobodyさん
2010/08/17(火) 11:37:06ID:???giiはまだ公式で日本語訳(どころかフランス訳すらない)から
見過ごされてるな。yii本には載ってたが。
英語で公式読むか、ディレクトリ舐めるように見回すと気づくんだろうが。
確かに最初yiic覗いた時、「何このはりぼて?」と思った。プロジェクトスケルトン
吐くのに急いで公開したんだろうか。
0498nobodyさん
2010/08/18(水) 21:53:33ID:???言われてみると確かにドキュメントがなくて気づかないかもしれないw
Creating First Yii Applicationの日本語のほうは1.0のyiicでModelとか作る奴のままだしな
0499nobodyさん
2010/08/25(水) 10:37:37ID:???たまにsafeモードでファイル作れないよ!と怒られるんだけど回避できないかな
0500nobodyさん
2010/08/25(水) 20:59:59ID:???フレームワークとは関係ない
0501nobodyさん
2010/08/30(月) 08:41:53ID:???しかも本家も翻訳されてないとこ多くていやになる
0502nobodyさん
2010/08/30(月) 08:46:33ID:???ttp://www.google.co.jp/trends?q=yii%2C+ethna&ctab=0&geo=jp&geor=all&date=all&sort=0
0503nobodyさん
2010/08/30(月) 09:54:43ID:???例えばPHPとチューリップを比較した場合にはこうなるけど
http://www.google.co.jp/trends?q=PHP%2C%E3%83%81%E3%83%A5%E3%83%BC%E3%83%AA%E3%83%83%E3%83%97&ctab=0&geo=jp&geor=all&date=all&sort=1
チューリップよりPHPの方が知名度高いと思ってる人はいないだろ
0504nobodyさん
2010/08/30(月) 12:35:08ID:???0505nobodyさん
2010/08/31(火) 01:17:52ID:???量産はアクションとコンテンツブロックだけ書けばさくさく作れるし、
もう他はどうでもええわ。Yii本はまぁご祝儀買いってとこか。
ethnaはgreeった時点でさようならだからどうぞご自由に栄華を
極めてくださいって感じ。cakeは何か変わったことすっと落ちるからもう戻れん。
一人でやってると今や一番面倒なのはHTMLのコーディングになっちまった。
0506nobodyさん
2010/08/31(火) 04:03:34ID:???0507nobodyさん
2010/09/03(金) 17:55:43ID:???0508nobodyさん
2010/09/03(金) 19:19:23ID:???とはいえ、まだethnaよりも情報が無い状態
しかも未だ日本語の翻訳が未完全という・・・・・
Yiiの本が翻訳されれば爆発しそう何だが誰かとりかかってるのだろうか?
0509nobodyさん
2010/09/05(日) 01:18:31ID:ruHJBgsyhttp://groups.google.co.jp/group/yii-japan
0510nobodyさん
2010/09/05(日) 12:53:25ID:???googleサービスとか捨てアド取るにも携帯認証必要だからやりたくない
0511nobodyさん
2010/09/05(日) 15:56:48ID:???0512nobodyさん
2010/09/06(月) 15:42:17ID:???yiiを見ているのですが、下のソースはどういう意味でしょうか?
Yii::createWebApplication($config)->run();
Hoge::foo($config)->huga();
この書き方はスマートでよさげなのですが、どういった構造になりますか?
↓ではないようなのでさっぱりです。
class Yii {
function :createWebApplication($config) {
...
}
function run() {
...
}
}
0513nobodyさん
2010/09/06(月) 15:58:40ID:???0514nobodyさん
2010/09/06(月) 16:12:19ID:???レスありがとうございます。
staticでも試してみたのですがこの書き方だとFatal errorがでます。
Yii::createWebApplication($config)->run();
class Yii {
static function createWebApplication($config) {
...
}
function run() {
...
}
}
static function run(){}にしてもFatal errorでした
0515nobodyさん
2010/09/06(月) 16:16:45ID:???0516514
2010/09/06(月) 18:07:36ID:???0517nobodyさん
2010/09/06(月) 22:27:24ID:???そのrunメソッドを叩いてるだけだと思う。 Yii知らないけど。
0518nobodyさん
2010/09/07(火) 01:16:55ID:???エラー内容も書こぜ
おそらくこんな感じ
class Yii {
static function createWebApplication($config) {
return new Yii($config);
}
function run() {
...
}
}
0519nobodyさん
2010/09/07(火) 16:57:43ID:???require(dirname(__FILE__).'/YiiBase.php');
class Yii extends YiiBase
{
}
0521nobodyさん
2010/09/07(火) 17:39:53ID:???0522nobodyさん
2010/09/07(火) 18:50:59ID:???趣味で遊ぶ程度ならyii
しっかりやるならcake、zend、symfony
yiiが今後どうなるかわからない。
様子見
0523nobodyさん
2010/09/07(火) 19:42:20ID:???0524nobodyさん
2010/09/07(火) 21:20:19ID:???0525nobodyさん
2010/09/07(火) 21:20:52ID:???>しっかりやるならcake、zend、symfony
Cakeとかもうないだろ。今安定したのがいいのなら、Symfonyじゃない?
YAML各野にうんざりで投げたけと。
これから伸びそうに見えるのが、KohanaとYii。
まだ本リリースされてもないのに注目されてるのがLithium。
本命はないから好きなの選べw
0526nobodyさん
2010/09/07(火) 21:54:56ID:???0527nobodyさん
2010/09/07(火) 23:29:27ID:???他人に意見なんざ聞くだけ無駄
理由に周りはとか採用実績とかつけてさ
0528nobodyさん
2010/09/08(水) 01:10:08ID:???0529nobodyさん
2010/09/08(水) 01:25:36ID:???0530nobodyさん
2010/09/09(木) 17:13:26ID:???やりたい事はメッセージの日本語化
'language'=>'ja',としても英語のままでござる
0531nobodyさん
2010/09/09(木) 18:18:10ID:???各アプリのファイルに置き換えればok
0532nobodyさん
2010/09/09(木) 23:44:36ID:???がっくし…
0533nobodyさん
2010/09/10(金) 00:59:05ID:???0534nobodyさん
2010/09/10(金) 01:36:53ID:???0535nobodyさん
2010/09/10(金) 13:43:45ID:???ブログデモをそのまま使うわけではないよな?
バリデーションに関しては、定型的なのは config/main.phpのlanguageをjaにすれば、日本語化される。変な日本語だけど。
独自のメッセージを出したいときはrules()の中で、messageを定義すればOK。
public function rules(){
return array()(
array( 'name', 'required', 'message' =>'名を名乗れボケ!' ),
array( 'mail_addr', 'email', 'message' =>'メアドが違うぞコラ!' ),
);
}
できるだけframeworkの中のファイルは修正しない方がいい。
やっちゃったことあるけど後々めんどい。
0537nobodyさん
2010/09/10(金) 15:50:55ID:???エクステンション別にデモ置いてくれたらいいのに
何が何だかわけわかめ!
0538nobodyさん
2010/09/10(金) 17:28:20ID:???初歩的な質問なのですが自分で作ったクラスはどのフォルダに置けばいいのでしょうか?
0539nobodyさん
2010/09/10(金) 17:50:56ID:???汎用的なクラスならcomponentsの直下に置くと、大抵はrequireとかしなくても使える。
モデルやコントローラなら、それぞれそこに。
0540nobodyさん
2010/09/10(金) 18:45:00ID:???0541nobodyさん
2010/09/10(金) 19:36:03ID:???Ruby信者じゃあるまいし、必要なことだけ覚えればいい
0543nobodyさん
2010/09/10(金) 20:17:02ID:???必要なことすら覚えてないから恐ろしく基本的な質問が連発されている気がするが…
つーかむしろRubyの所もいきなりRoRやってバカみたいな質問出まくってるけどさ
0544nobodyさん
2010/09/10(金) 21:21:34ID:???MLじゃないんだからさ。Rubyのスレは別世界だし。
0545nobodyさん
2010/09/11(土) 00:16:35ID:???基本の勉強もしなさいよと言う助言だろ。
0546nobodyさん
2010/09/12(日) 16:23:46ID:???今後そういうことを起こりにくくするために、フレームワークを導入しようと思っていますが、
結局どのフレームワークが最良なのでしょうか?
Webコーダーの人たちにも理解しやすいものがいいのですが…。
0547nobodyさん
2010/09/12(日) 18:45:08ID:???0548nobodyさん
2010/09/12(日) 19:40:40ID:???フレームワーク選定とコードの読みやすさは関係ない。
コードを誰でも読めるようにするためには、コーディング規約を決めて、全員で守る。これしかない。
最良のフレームワークっていうのも、人によって答えは違う。
バリバリMVCしていきたいのか、気軽な自由度がほしいのか、PHP4環境も考慮の必要があるのか?
目的がわからないと答えられないよ。
0549nobodyさん
2010/09/12(日) 21:00:05ID:???コーディング規約はもはや不要だよ。
フレームワークのやり方と命名方法に
あわせろで十分
0550nobodyさん
2010/09/12(日) 21:54:37ID:???ZendかKohanaしか使ったこと無いのかな?
SymfonyやらCakeやら、PHP4時代を引きずってるフレームワークを使ってみれば、
命名規約とか却って本当にぶれぶれになるぞ。それこそ泣きそうなくらい。
0551nobodyさん
2010/09/12(日) 21:58:10ID:???Symfonyは最初からPHP5専用なはずだが。
命名の基準がわかりにくい、というかカオスなのは同意だけど。
0552nobodyさん
2010/09/12(日) 22:15:17ID:???PHP4時代を引きずってると言える、のかもな。
PHP自体、命名規約がないに等しいカオスだし。
0553nobodyさん
2010/09/12(日) 22:28:26ID:???完全オブジェクト指向じゃないってだけで
0554nobodyさん
2010/09/12(日) 22:33:04ID:???最良なんてのはない、どれが最適かは案件しだい
あと新しく手をつけるのなら資料の多さもおおきいよ
たとえばYiiは、出来はよさそうだけど、日本語ドキュメントが少なくてYiiとかいまいち下火だしな
0555nobodyさん
2010/09/13(月) 00:10:03ID:???SymfonyやCakeは規約から外れると動かないから
0556nobodyさん
2010/09/13(月) 00:17:04ID:???それは仕組みの話であって、規約の話じゃない
こと命名に関しては、Zendは一貫してる
一方、
$this->User
なんてのを一貫した命名規則で扱うのはなかなか難しい、と個人的には思う
# これ、MS方式?
0557nobodyさん
2010/09/13(月) 00:45:10ID:???規約ガチガチのフレームワークというのは、扱いにくいものなのでしょうか。
扱いにくくないのであれば、その規約に従ってみんなが書くようにすればいいだけなので
僕の困っている点を解決するのにピッタリな気がします。
ただ、困っているのは命名規約よりもファイルの読み込み方や変数・配列の使い方です。
読み込んだファイルの中で別のファイルを読み込んで、そこからさらに別の…というふうになっていたり、
セッションや$GLOBALSでデータを回したりしているようです。
仕様書のようなものもありません。
こういうのはフレームワークではどうにもならないでしょうかねぇ…。
0559nobodyさん
2010/09/13(月) 01:30:48ID:???そうですね。この機会にマニュアルを作るのがいいですね。
自分のやり方も癖があるかもしれないので、周りと相談してみます。
フレームワークもやっぱり気になるので、>>2にあるような有名なものを
ちょっと調べてみようと思います。
ありがとうございました。
0560nobodyさん
2010/09/13(月) 01:31:44ID:???それはフレームワークではどうにもならない。
$_SESSIONも$GLOBALSもスーパーグローバル変数で、
そもそもグローバル変数の利用からして制限できないから。
方針としては、バージョン管理を利用したコミットの受け入れチェックなど、
管理面での対応が多分あなたの要件に適したものだと思う。
ソースコードをgrepして、
→ global キーワードは無条件でアウト
→ (ライブラリ以外で)$GLOBALSが存在すれば無条件でアウト
→ (ライブラリ以外で)$_SESSIONの利用も無条件でアウト
→ フレームワークのセッションアクセスメソッド($this->getUser()->setAttribute() など)を
重点的に監視
などなど、「これはダメ」って言う基準作りが先。
フレームワークが有用とすれば、>>558の言うとおり「お手本」を定型で示すことができる、
って部分があるかもしれない。
0561nobodyさん
2010/09/13(月) 01:38:05ID:???なるほど。
自分でも何が良くて何が悪いのか頭の中ではっきりまとまってないので
まずは明確な基準作りですね。
バージョン管理も現在は特別なことをしてないので、これから勉強してみます。
とても参考になりました。
ありがとうございました。
0562nobodyさん
2010/09/13(月) 01:38:19ID:???0563nobodyさん
2010/09/13(月) 01:46:35ID:???0564nobodyさん
2010/09/13(月) 01:48:08ID:???どんだけちゃんとしたルール作っても、中華コーダーが混ざってるだけでダメになったりする
あと、拘りがある人、というか堅物や変人とかがいると、
俺はこういう書き方をするんだ!って主張したがるから、そのあたりも非常にうざいことになるw
0565nobodyさん
2010/09/13(月) 13:13:19ID:???0567nobodyさん
2010/09/13(月) 13:25:54ID:???0568nobodyさん
2010/09/13(月) 13:29:07ID:???0569nobodyさん
2010/09/13(月) 13:31:03ID:???土方歳三レベルのPLでないと纏まらん
0570nobodyさん
2010/09/13(月) 14:25:59ID:???0571nobodyさん
2010/09/13(月) 14:37:03ID:???最初の1週間はしょうがないかもしれないけどさ。
ここはフレームワークスレなわけだけど
フレームワーク使ってるならなおさら規約は守るものだと思うけどな
0572nobodyさん
2010/09/13(月) 17:29:56ID:???外国人がいようが慣れてない派遣がいようが関係ない話だろ
別に規約はそんな重視しないで自由でいいよって方針のプロジェクトも多いけど
守るのが前提ってプロジェクトで守れないのは単にリーダーがバカなだけ
0573nobodyさん
2010/09/14(火) 00:50:52ID:???規約があってもコードレビューとかやる余裕のないとこだと、
結局形だけのルールになってたりするのも見るしな
なんにせよ、フレームワークとはあんまり関係ないけれど
ただ糞みたいなコード書いてるような案件は、俺俺フレームワークを作ってるか、
既製品つかってても、使う意味がないような使い方しかしてないことが多いわなw
0574nobodyさん
2010/09/14(火) 01:18:32ID:???0576nobodyさん
2010/09/14(火) 10:07:34ID:???http://hibari.2ch.net/test/read.cgi/php/1284382025/
0577nobodyさん
2010/09/14(火) 13:01:23ID:???ITの現場はぶったたくと死んじゃうからなぁ
PMおつかれさまです!
0578nobodyさん
2010/09/14(火) 14:59:12ID:???あいつなんとかなんないならお宅の会社更新なしね
で一発だけども
0579nobodyさん
2010/09/14(火) 15:11:36ID:???0580nobodyさん
2010/09/15(水) 23:08:28ID:???みて、ちょろっとDooPHPいじってみた。普段はYiiを使ってるんだけど、
・ブログデモの動作はほとんどノートラブルでできた。設定は簡単。
・アソシエーションを設定ファイルの配列で定義。
・モデルにrelationInsertとかそういうメソッドがある。ちゃんと動作するなら裏山
・insert/updateを分けて呼ばなくてはいけない? めんどいー
・独自テンプレート? ちょっと今更感がある
既存のフレームワーク以上にクセが強そうに見えるんだが。
間違いあったら誰か指摘してくれ。
0581nobodyさん
2010/09/16(木) 01:04:53ID:???cakeしか知らんのだが、relationInsertの使い道としては
使い捨てのリレーショナルが簡単に組めるってことなの?
0583nobodyさん
2010/09/16(木) 07:06:35ID:???コードに定義が書いてあるのは結構好きだな。
コードだけ見ればデータベースの設計がわかるから。
RailsとかDjangoみたいにコマンド一発でデータベースに
テーブルが追加されたりするのかな
公式ページ上部のメニューバーがFlashなのが微妙
0584nobodyさん
2010/09/17(金) 18:51:26ID:???どういう畑で作業してるのか知らんが、
ある程度の規模だと、構造設計・実装とDB設計は別になるだろ。
てか、DBの構造をコードから判断とか、バグ(仕様把握ミス)の
温床以外のなんでもないんだけど。
ドキュメントが整備されるならドキュメント。
整備されないなら、admin系ツールでちゃんと確認して組めよ。
ま、お遊びプロジェクトで遊ぶんならいいんじゃね?てとこ。
0585nobodyさん
2010/09/17(金) 20:48:53ID:???0586nobodyさん
2010/09/17(金) 22:58:40ID:???それは言い過ぎ。
モデルをきれいに書けば、誤解しようのないコーディングが出来る。
ドキュメントもきちんと書かなければ、バグの温床になるだろう。
0587nobodyさん
2010/09/17(金) 23:48:55ID:???エクセルだろうけど
0588nobodyさん
2010/09/18(土) 01:56:27ID:???0589nobodyさん
2010/09/18(土) 05:18:32ID:???かといってWordだと馬鹿連中が書きながらどんどんぶっこわしていって、手のつけられないような酷いことになる方が多い
どちらがいいとはいいきれない。一長一短
0590nobodyさん
2010/09/18(土) 05:25:42ID:???0592nobodyさん
2010/09/21(火) 21:30:51ID:???CakePHP,Zend
1.売れるシステムにフレームワークは関係ない
2小規模なシステムは一人で構築した方が早い。フレームワークでチームでやるメリットがない
3.毎度毎度、違うシステムを作るわけではない。なんでも作ります屋さんは案件とれない
4.フレームワークを習得するのに時間がかかる。その間に売れ筋のシステムを構築できた。機会損失もあわせて、でかい
結果、1〜2人で制作する分にはフレームワークはいらないし
フレームワークのおかけでもう儲かった利益はなく、習得してから2年経過するけどマイナスでしかなかった
フレームワーク = 重いというイメージさえついてるから売りづらい
0594nobodyさん
2010/09/21(火) 21:40:23ID:???プロジェクトの進行やアイディア不足に衰えを感じる。
しっかりとした枠組みが必ずしも流行するわけではない。
phpがWEB言語として活躍できてるのは、とっつきやすさにあると思う
それをあえてフレームワークで難しくするのはPHPのメリットを殺してると思う
プロジェクトに参加できる全ての人が天才ではない
集団の英知を実現させるのなら、規律が最小限のフレームワークである
0596nobodyさん
2010/09/21(火) 21:45:51ID:???俺はほとんど利益に貢献できてないと思う。
新しいフレームワークが出れば、それを覚えるのに時間がかかる
これを繰り返すくらいなら、フレームワークなしで売れ筋のシステムをたんたんと作ってた方がよい
0597nobodyさん
2010/09/21(火) 21:47:02ID:???これって毎度毎度、無駄にしていかないといけない
これでは利益率は上がらない
0598nobodyさん
2010/09/21(火) 22:03:42ID:???0599nobodyさん
2010/09/21(火) 22:51:13ID:???0600nobodyさん
2010/09/21(火) 23:15:29ID:???改善されて使いやすくなってるから
0601nobodyさん
2010/09/21(火) 23:18:45ID:???フレームワークと騒いでるやつほど、利益貢献してないと思う
システムは売ってなんぼ
0602nobodyさん
2010/09/21(火) 23:19:09ID:???ttp://phpspot.org/blog/archives/2006/01/php_30.html
0603nobodyさん
2010/09/21(火) 23:19:31ID:???0604nobodyさん
2010/09/21(火) 23:20:58ID:???フレームワークにして儲かったてやついるの?
0605nobodyさん
2010/09/21(火) 23:37:19ID:???儲かるわけないだろ!
0606nobodyさん
2010/09/22(水) 00:03:14ID:???確かに儲からなかった。
フレームワークと騒がれて、すぐに飛びついたのがよくなかったかも。。。
0607nobodyさん
2010/09/22(水) 00:05:54ID:???儲かる儲からないは別の次元では?
0608nobodyさん
2010/09/22(水) 00:06:04ID:???ハイリスクノーリターンになっちまったけど
使わなければノーリスクでノーリターンで普通に儲かってた
0609nobodyさん
2010/09/22(水) 00:10:07ID:???ボランティアや自己満足でやってるなら次元は違う
0610nobodyさん
2010/09/22(水) 00:12:04ID:???0611nobodyさん
2010/09/22(水) 00:12:44ID:???話するのも良いと思うし
そんな次元の遠い話でもない
0612nobodyさん
2010/09/22(水) 00:24:02ID:???ノーリターンの意味が・・・w
フレームワークって言葉に踊らされすぎな気がする。
どの言語なら論議に似た、レイヤのズレを感じるぜ。
ところで、ここでいう売りって何だ?
システムそのものを売るの?サービスを展開するの?
0613nobodyさん
2010/09/22(水) 00:26:05ID:???鋏が使えなくても紙を切れないわけではないし
馬鹿だって倒れたペットボトルを立て直すための機械を導入するよりは低コストに導入できる
儲けるためにどうするかなんていいつつ、道具を使うことそれ自体を目的として考えてる時点でお門違いもいいとこ(笑)
そんなんだから、その程度の仕事にしか縁がないんだろうな、って話になっちまう
だいたい、使うか使わないかを検討する以前に、使えないから使わない方が効率いいんじゃねw
0614nobodyさん
2010/09/22(水) 00:36:57ID:???可読性の悪いコード書きそうだな。
いっしょに作業したくないってよく言われるだろ
0615nobodyさん
2010/09/22(水) 00:38:00ID:???どの言語なら論議に似た、レイヤのズレを感じるぜ
どういう意味?かっこつけなくていいから
普通に書いてくれ
0616nobodyさん
2010/09/22(水) 00:41:27ID:???疑問を持たずに、言われるままに使っているほうが、頭どうなのと思う。
フレームワーク自体は必要だと思うけど、その学習コストはもっと問題にされていい。
Smartyのような大規模なフレームワークはもう廃れていいよ。
今までのフレームワークをLispにたとえると、これからは機能を厳選した、
Schemeのようなフレームワークが流行ってほしい。
0617nobodyさん
2010/09/22(水) 00:58:40ID:???これといった見返りがない。そういう人は他にもいると思う
OpenPNEだって、フレームワーク選択の失敗例だと思ってる。
乱立してるのが一番よくないと思う
早く天下統一してくれ
0618nobodyさん
2010/09/22(水) 01:02:48ID:???まあ、それほど人気のある言語だから
仕方ないか。
フレームワークてどんどん進化していくから
作業効率を求めれば、おれおれフレームワークになってしまう
進化や乱立についていってたら、えらいコストかかる
0619nobodyさん
2010/09/22(水) 01:24:12ID:???>>とか全角数字とか使ってる奴見ると、なんか気持ち悪くてしょうがない。
しかしこのスレ、相変わらずフレームワークとはあんまり関係のない話題でしか進まねーなw
0620nobodyさん
2010/09/22(水) 02:03:24ID:???同僚はCakePHPしか使えないかもしれないですよね。
皆さんはそういう状況はないですか?
どうやって対処するんでしょう・・・。
0621nobodyさん
2010/09/22(水) 05:20:11ID:???よくあるケースだけに、対処も何も。
どっちかがどっちかを覚えるしかないだろうが。
おまいも同僚も、死ぬまで一つしか使えないの?
例えばMySQLしか知らなくてPostgreSQL無理、とか言っちゃう人?
0624nobodyさん
2010/09/22(水) 10:27:24ID:???おれおれフレームワークもどきは使ってたりしないか?
>>618
いやperlもカオスだよ
>>620
CakePHPしか使った事なくても、CakePHPの経験があれば
他のフレームワークも容易に覚えられる
社内でみながバラバラにやってたらカオスになるだけ
というかコーディング規約無いの?
0625nobodyさん
2010/09/22(水) 22:21:45ID:???Javaなら、C#なら、PHPなら、Perlならみたいな話は大抵のスレで出てくるけど
それってビジネスとは違う話だよね、みたいな。
0626nobodyさん
2010/09/23(木) 02:58:54ID:???それにPerlの場合、WAFを構成するコンポーネントはCPANのモジュールを流用する。
ORマッパーはDBIx::Classで、ORマッパーなしのDBレイヤーだとDBIで、まれにマイナーなORマッパーもあるけど。
テンプレートはたいていTemplate Toolkitで、たまにHTML::Templateがあるかなってくらい。
各WAFはこれらのORマッパーやテンプレートを取り替えて使えるようになってて、ロジックだったりビューだったりはWAFから独立してるとも言える。
0627nobodyさん
2010/09/23(木) 03:02:41ID:???0628nobodyさん
2010/09/23(木) 03:09:28ID:???例えば、ページキャッシュとか、便利で利用価値があるけど、独自で実装するのは結構大変だよね?
だけど、大抵のフレームワークなら、ちょっと記述するだけで簡単に実現できたりする。
scaffold何かの機能も開発していく上でかなり有用だし。
他にも利点を挙げればきりがないくらいあるよ。
デメリットは学習コストくらいでしょ?
全部のフレームワークを熟知するのは大変かもしれないけど、一個に絞ればそんなに難しいことじゃない。
>>2で上がってるような有名どころから一個選んで、習得すればいいだけ。
俺は一通り触ったけど、どれも一長一短だからどれでも問題無いと思うよ。
0630nobodyさん
2010/09/24(金) 02:21:41ID:???0631nobodyさん
2010/09/24(金) 06:25:49ID:???>例えば、ページキャッシュとか、便利で利用価値があるけど、独自で実装するのは結構大変だよね?
えええ?実装、難しいか?
キャッシュこそ、expireするタイミングとかキャッシュデータの保存先とか
プロジェクトによっていろいろ変更したいから、フレームワークが
そのまま使えなくて手を入れる必要がある機能の典型例じゃないかな。
>デメリットは学習コストくらいでしょ?
そのコストが高すぎるんだよ。チュートリアル読んでできることなんて
限られてるよね。どのフレームワークでも結局ソース追っかけていかないと
いけなくて、それも学習コストに含まれるんだよ。自前で書けばすぐ済むのに
フレームワークの妙な制限のせいで問題解決が遅れ、ソースコードをたどって
改修することが何度あったことか。
学習コストを問題にしてないのは、フレームワークを表面的にしか使って
ないからじゃね?ディープに使いだすと、大規模フレームワークほど
むちゃくちゃ学習コストが跳ね上がる。
0632nobodyさん
2010/09/24(金) 08:19:25ID:???0633nobodyさん
2010/09/24(金) 08:29:32ID:???テンプレートやらをつかったMVC的な物は使いたいのよね
こういうのを自前でやる知識みたいなのは何の本を読めばいいんだ?
今はajaxやらwebsocketやらを強引にガリガリかくか、フレームワークを使ってやってる
各フレームワークのソース読めとかそう言うの無しで教えてくれよ
0634nobodyさん
2010/09/24(金) 08:54:49ID:???天才でなければ、最初の1年は棒に振ったと思って取り組んだ方がいい
0635nobodyさん
2010/09/24(金) 08:56:48ID:???乗り換えたくなってもガマン
凡人にしてみれば、似たようなものと簡単に乗りかえれない
0636nobodyさん
2010/09/24(金) 11:59:58ID:???逆じゃね?
プロトタイプ的なものはFW使ってちゃちゃっと作っちゃって、
特殊なところ、凝ったことしたいところは後から自前で作りこんでく
のじゃダメなの?
0637nobodyさん
2010/09/24(金) 12:32:00ID:???0638nobodyさん
2010/09/24(金) 12:38:15ID:???FWを使うと後々メンテが楽になるのでは?
オレオレで組まれると何がどこにあるかが
わからず時間が掛かる。
0639nobodyさん
2010/09/24(金) 12:39:41ID:???zfかsyかcpのどれか使えればそれでいい
0640nobodyさん
2010/09/24(金) 12:57:53ID:???0641nobodyさん
2010/09/24(金) 13:06:44ID:???0642nobodyさん
2010/09/24(金) 14:25:03ID:???http://hibari.2ch.net/test/read.cgi/php/987470871/76
0643nobodyさん
2010/09/24(金) 22:05:30ID:???細かくてすまん
0644nobodyさん
2010/09/24(金) 22:31:29ID:???0645nobodyさん
2010/09/24(金) 23:03:28ID:???0646nobodyさん
2010/09/24(金) 23:50:28ID:???0647nobodyさん
2010/09/25(土) 01:07:18ID:???0648nobodyさん
2010/09/25(土) 02:33:59ID:???ページキャッシュの例えが悪かったのかもしれないけど、
expire/保存先その他諸々、普通のFWならそれなりに設定できる。
逆にこれらの機能を踏まえて実装が難しくないと言える程、webアプリケーションの開発知識があるのに、
学習コストを気にしてるのが信じられないんだが。
0649nobodyさん
2010/09/25(土) 10:56:07ID:???言わせんなよはずかしい…///
0650nobodyさん
2010/09/25(土) 12:46:03ID:???代弁してくれてありがとう。
俺の意見でもあり、真実でもある事をまとめると、
FWの学習コストを問題視している人は、プログラムに関する知識・経験・技術などが不足している人。
そんな厨が作るアプリケーションは、レベルに相応の底が知れてるもの。
ACLや多言語対応なんか縁もないPHP入門書なんかに載ってるサンプルレベルの開発をしているので、
FWのメリットが理解できない。
確かにhello worldやるだけなら、FWなんか使わない方が100倍は速いからね。
>>631は頑張ってfopen()使ってhello worldをページキャッシュして下さい。
0651nobodyさん
2010/09/25(土) 16:47:44ID:???0652nobodyさん
2010/09/25(土) 19:02:58ID:???独自FW開発するコストも相対的に下がるし、
外部プロダクトに依存するリスクも減らせるから
オープンソースFW採用しないのも理解できるけど
>>631 みたいな理由はよくわからない。
0653nobodyさん
2010/09/25(土) 19:09:24ID:???PHPそのものの言語仕様に対する「学習コスト」に比べて、
他人が作った枠組み・制約に合わせることを「学習」することに
なんで俺様が時間を割かないといけないんだよ?
みたいな壁があるのは否定しない。
0654nobodyさん
2010/09/25(土) 19:39:26ID:???FWを利用すれば、最先端のプログラム作法が、
苦労せず身につく
高度なプログラミングの方法論を大学へ行って
学ばなくてもみんなが共有できる
0655nobodyさん
2010/09/25(土) 19:54:06ID:???0656nobodyさん
2010/09/25(土) 20:00:54ID:???0657nobodyさん
2010/09/25(土) 20:36:50ID:???アンチしたけりゃ専用スレ立ててやってほしいわほんと
0658nobodyさん
2010/09/26(日) 01:10:41ID:???日本語の資料が少ないこと以外に
何か欠点はありますか?
日本で普及する可能性は低いでしょうか。
0659nobodyさん
2010/09/26(日) 01:12:42ID:???というか、どんなものを作るのか明示しないと
誰もそのツールが的確か判断できないよ。
0660nobodyさん
2010/09/26(日) 01:31:10ID:???もう普及してるんですか。
得意不得意があるとは思わなかったので、
作るものを書きませんでした。すみません。
ECサイト、CMSや、小さいものだと
ちょっとしたツール(社内で使うようなもの)です。
0661nobodyさん
2010/09/26(日) 01:34:17ID:???ダウンロード数で比べてみるとかどうかな。
CIはCMSには向いてるけど、ECサイトならもっと別の
専用のがあるのじゃないかな。
まぁ少しは調べてここに書いてみてよ。俺はCIあまり知らないしw
0662nobodyさん
2010/09/26(日) 01:56:42ID:???どんな用途でも一つのフレームワークで済ませたいと思ってしまったんですが、
やっぱりいろんなフレームワークを使えるようにしないといけないでしょうか。
調べてみると、CodeIgniterは比較的取っ付きやすいようなので
とりあえずやってみます。
ありがとうございました。
0663nobodyさん
2010/09/26(日) 02:02:12ID:???慣れの問題かも知れないけど
0664nobodyさん
2010/09/26(日) 02:26:49ID:???それともPHP5で使うと何か問題ある?
0665nobodyさん
2010/09/26(日) 08:17:34ID:???privateならprivateって書いてある方が幸せ
0666nobodyさん
2010/09/26(日) 09:30:50ID:???0668nobodyさん
2010/09/26(日) 11:08:20ID:kWdN3TKgオススメは?
0669nobodyさん
2010/09/26(日) 12:29:36ID:???0670nobodyさん
2010/09/26(日) 14:09:11ID:???しっかり生かしているかとなると疑問だけど、Zendがいいかも。
ただ、どのFWも『PHP』のメリットを生かせてはいない感じだよね。
PHPなら$_GET/$_POST/$_SESSIONを使えるのがメリットだと思うし。
まあ、デメリットでもあるのかもしれないけど。
0671nobodyさん
2010/09/26(日) 15:19:14ID:???0672658
2010/09/26(日) 16:53:52ID:???セッションデータが丸ごとクッキーに保存されるとかなんとかで
あまり良くないとわかりました…。
代わりに、CodeIgniterをベースにして改良されたKohanaというのが良さそうです。
0673nobodyさん
2010/09/26(日) 17:44:56ID:???0674nobodyさん
2010/09/27(月) 06:05:17ID:KSEP+D6Lありがとうございました
0675nobodyさん
2010/09/28(火) 05:21:48ID:???> PHPなら$_GET/$_POST/$_SESSIONを使えるのがメリットだと思うし。
意外かもしれないが、Yiiはこういうところを自由にできる
0676nobodyさん
2010/09/28(火) 09:14:01ID:???>CodeIgniterについて引き続き調べたら、
>セッションデータが丸ごとクッキーに保存されるとかなんとかで
>あまり良くないとわかりました…。
え、クッキーセッションがなんでだめなの?
0677nobodyさん
2010/09/28(火) 09:33:14ID:???POST/GETと違いデータがクライアント側に渡らないのがセッションの利点の一つなのに
セッションIDだけでなくデータもクッキーに入るのが嫌って意味でしょ
RoRではデフォルト。
0678nobodyさん
2010/09/28(火) 14:53:37ID:???cakeだとオリジナルのmodel.php等をmodelディレクトリに配置すれば、
置き換えられたのですがyiiだとわかりません。
0679nobodyさん
2010/09/28(火) 23:24:57ID:???ModelというのはActiveRecordだと考えていい?
とすると、俺の場合はmodelsの下にCommonModel.phpとかを作って、
各々のモデルクラスではCommonModelを継承させてる。
他のアプリケーションにも使いまわせそうな処理なら
CActiveRecordBehaviorを使ってみることを検討するとよりいいかも。
0680nobodyさん
2010/09/29(水) 12:45:29ID:???なるほど、標準では共通的なメソッド等を書くファイルというのは
決められていないようですね。
正攻法っぽいbehaviorを検討してみます。
ありがとう。
0681nobodyさん
2010/09/29(水) 23:15:13ID:???名スレの予感
0684nobodyさん
2010/10/01(金) 01:41:50ID:???>POST/GETと違いデータがクライアント側に渡らないのがセッションの利点の一つなのに
えと、なぜそれが利点なんでしょうか。渡ると何か不都合がありますか。
0685nobodyさん
2010/10/01(金) 01:51:36ID:???0686nobodyさん
2010/10/01(金) 05:28:23ID:???0687nobodyさん
2010/10/02(土) 08:31:28ID:???クッキーセッションでは、SHA1などをつかったハッシュ値と、サイトごとの
秘密キーを使って、改ざんを検出している。
だからそれをクッキーセッションの欠点とするのはおかしい。
>>686
それを心配するなら、クッキーセッションじゃなくてもセッションIDが
盗聴されることになるので、やはりクッキーセッションの欠点ではない。
0688nobodyさん
2010/10/02(土) 19:46:34ID:???と
setcookie("pass", "hoge");
の差は明らかだと思うぞ
ところで$_COOKIE['pass']='hoge';って書き方できるの?
0689nobodyさん
2010/10/02(土) 20:59:57ID:???前段の意味はよくわからない
> ところで$_COOKIE['pass']='hoge';って書き方できるの?
代入は可能だろうけど、setcookieはされないだろうね
最近のPHP(特に5.3〜6)はよく知らないんだけど
0690nobodyさん
2010/10/03(日) 00:01:41ID:???オブジェクトにする必要性もあまり感じない。
ファイルハンドルを透過的に保存復元したいとかかな。
確実に処理が遅くなるってデメリットに対して、大きなメリットを感じない。
0691nobodyさん
2010/10/03(日) 18:03:55ID:???>ファイルハンドルを透過的に保存復元
これの意味がわかんないけど、
俺は複数台サーバ構成の時とか、セッションのDB対応とかの時にメリットがあると考えてる。
0692nobodyさん
2010/10/03(日) 21:48:48ID:???> 複数台サーバ構成の時とか、セッションのDB対応とか
これって頭の中では同じ事想定してないか?
セッションのDB対応も、結局はPHPの関数インターフェイスを利用するわけで、
はてはレプリケーション対応のため強制的にマスターDBをアクセス対象にする
設定とかもその中で可能なわけで…
それを「クラス」でやるか、なんかしらん「インクルードファイル」でやっちゃうか、の
違いでしかないと言われればそこまでだよなあ、と思わんでもない
どっちかっていうと、PHPが準備していない、「セッション名前空間」的な、
仮想的な上乗せ機能の方にメリットを感じるなj
0693nobodyさん
2010/10/03(日) 22:41:58ID:???ファイルハンドラは普通にやってもシリアライズ出来ないから、ユーザがアップロードしたファイルを画面遷移しつつ引き回そうとすると、単に$_SESSIONに値を入れるじゃ済まない。
しかし、ほとんどのフレームワークって$_SESSIONをラップしてるだけだろう?
0694nobodyさん
2010/10/03(日) 22:51:51ID:???アンカつけような。
おまいが言ってることの大半は>>691向けか?
>>692ですでに半分くらい言われてるぞ
大体、ファイルハンドラのシリアライズ・引き回しって何だよ。
やるとして、受け付けたファイルの「中身」をDBなりなんなりで
持ち回すしかないんじゃね?ハンドラ?
0695nobodyさん
2010/10/04(月) 01:30:00ID:???ウェブサーバ分散とか、ローカルファイル以外への永続化とか、十分な機能を持ってる。
だから、自前でセッション機能を実装する必要性はほとんどない。
また、セッション変数はスーパーグローバルになってて、その実態は単なるハッシュだが、それで困ることもほとんどない。
ただ、ファイルハンドルみたいなリアライズできないデータは、単なるハッシュへの代入では済まされない。
シリアライザの問題であるけど、データ型に関わらず透過的に保存できるならその方がいいし、そうするとセッション変数をオブジェクトにしてその処理を隠蔽する必要が出てくる。
とはいえ、そんなケースは滅多にないかな。
0696nobodyさん
2010/10/04(月) 01:33:53ID:???0697nobodyさん
2010/10/04(月) 18:15:08ID:knLsFBRF0698nobodyさん
2010/10/04(月) 18:34:31ID:???http://php.cheetan.net/
0699nobodyさん
2010/10/04(月) 20:32:33ID:???0700nobodyさん
2010/10/04(月) 21:07:39ID:???cakeやzendなんて余分すぎる
0701nobodyさん
2010/10/04(月) 21:11:37ID:???0702nobodyさん
2010/10/04(月) 22:23:42ID:???0703nobodyさん
2010/10/04(月) 22:26:32ID:???名前だけでアウトだわ
0704691
2010/10/04(月) 23:17:02ID:???別にFW使わないと「複数台サーバ構成の時とか、セッションのDB対応とか」
が出来ないとは思ってないんだが…
session_set_save_handlerでごにょごにょするより、
FWの設定でやった方が、実装コスト・保守コストとか含めてメリットがある
と言ったつもりだったんだけど。
0705nobodyさん
2010/10/05(火) 01:24:24ID:???Kohanaは使ったことないけど。CakePHPは軽量じゃないよね。
0706nobodyさん
2010/10/05(火) 10:00:03ID:???0707nobodyさん
2010/10/05(火) 16:38:20ID:???0708nobodyさん
2010/10/05(火) 17:05:11ID:???0709nobodyさん
2010/10/05(火) 17:30:57ID:???SmartyやPHPTALに慣れたデザイナーがいるとか、状況にもよるだろうけど。
0710nobodyさん
2010/10/05(火) 18:02:58ID:???0711nobodyさん
2010/10/05(火) 19:38:14ID:???そういえば、PHPのView利用では一般的に
<?php foreach ($array as $value) { ?>
<p><?php echo $value; ?></p>
<?php }; ?>
じゃなくて
<?php foreach ($array as $value) : ?>
<p><?php echo $value; ?></p>
<?php endforeach; ?>
みたいにend***使った書き方が推奨されるのはなんでだぜ?
{ }のほうが、IDEとか(Eclipse以外は知らないけど)で
ブロック閉じの対応が見れるし、そもそもなんのデメリットがあるのかよくわからない。
さらに言えば、PHPのショートタグは有効でもいいと思う。
不都合なのはXML宣言のときくらいだよね?
<? foreach ($array as $value) { ?>
<p><?= $value ?></p>
<? } ?>
これが一番書きやすいし読みやすいと思うんだ。。
0712nobodyさん
2010/10/05(火) 19:40:04ID:???0714711
2010/10/05(火) 19:48:19ID:???>>711 に書いたようにメリットがよくわからないので守ってない。
あとはインデントの4文字スペース、最初は守ってたけど
効率悪いから途中でタブ使うようにしてしまった。
これもIDE使う前提ならタブのほうが良いよね?
0715nobodyさん
2010/10/05(火) 19:52:15ID:???0716nobodyさん
2010/10/05(火) 19:52:36ID:???0718nobodyさん
2010/10/05(火) 20:07:57ID:???ショートタグは環境依存するから非推奨。
タブインデントはエディタ環境に依存してしまうので非推奨。
end***の記述方法は、入れ子になった時の視認性。
という感じかと・・・
律儀に守る必要は無いけど、
「推奨されたコード規約に準拠している」事自体がメリットになる場合もある。
0719nobodyさん
2010/10/05(火) 20:30:22ID:???まあFWの性質上、環境依存になる要素を
極力減らす方向の規約はわかるんだけどね。
でもショートタグはZendServerでもデフォルトでONだし、
いまどきのエディタ・IDEでタブインデントが
問題になるようなことはほとんどないかと…
それなりのFWの規約なら、逆に開発環境のほうを要求して最適化させる
方向性でも良いような気がするんだけどねえ。
ただend***の記述方法は「入れ子になった時の視認性」のメリットもよくわからない。。
ifとかforeachの閉じ種別が判別できるだけで、入れ子の対応は関係ないよね?
もしかしてそっち使ったほうが書きやすいIDEがあるのかな?
0720nobodyさん
2010/10/05(火) 21:20:17ID:???>まあFWの性質上、環境依存になる要素を
>極力減らす方向の規約はわかるんだけどね。
これにつきるよね。
>それなりのFWの規約なら、逆に開発環境のほうを要求して最適化させる
>方向性でも良いような気がするんだけどねえ。
個人的にもIDEは必須だと思っているけど、
FWとIDEをセットで学ばせるとなると学習コスト含めて導入の敷居は跳ね上がるからなぁ
FWではなく開発側で定めてしまえばいいかと。
>ifとかforeachの閉じ種別が判別できるだけで、入れ子の対応は関係ないよね?
>もしかしてそっち使ったほうが書きやすいIDEがあるのかな?
テキストエディタで検索しやすいとかかな?
0721nobodyさん
2010/10/05(火) 22:55:42ID:???んなもん規約にあわせてコミット前に置換なりかませりゃいいだけの話
つか最近のIDEつかってれば勝手にやってくれるから意識する必要すらないんじゃね
checkstyle入れてても、警告バリバリの俺が書きやすいと信じるコードを書きまくる奴も、世の中には腐るほどいるし
んなどうでもいい拘りを主張するやつが後を絶たないのも頷けはするけれど…
0722nobodyさん
2010/10/06(水) 00:22:28ID:???0723nobodyさん
2010/10/06(水) 00:38:38ID:???0724nobodyさん
2010/10/06(水) 01:17:17ID:???0725691
2010/10/06(水) 02:30:00ID:???それって例えばSmarty使えばescape忘れるやついないって思ってるの?
生phpのviewだとしても、変数をなんらかの仕組みでassignするような事してればいいんじゃないの?
0726nobodyさん
2010/10/06(水) 03:22:16ID:???ふつうは auto-escape する仕組みがあるから明示的な escape なんて要らないんだよ
smarty なら $default_modifiers でも使っとけ
0727nobodyさん
2010/10/06(水) 05:25:41ID:???その、何らかの仕組みでassignするようなライブラリがSmartyなんじゃないか?w
Smarty3からは生PHPでの記述に対応するし・・・
0728nobodyさん
2010/10/06(水) 06:36:06ID:???まずは、ショートタグの復権が欲しいな
生PHPが読みやすいって、View側に関しては何の冗談だよと思ってる
0729nobodyさん
2010/10/06(水) 10:18:31ID:???自分でラッパー作ればいいじゃないか
ttp://anond.hatelabo.jp/20071030034313
0731nobodyさん
2010/10/06(水) 18:54:51ID:???どちらもデータは別ファイルに分けられますよね?
0732nobodyさん
2010/10/06(水) 19:06:27ID:???ttp://www.google.com/search?q=%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88
ttp://www.google.com/search?q=%E3%83%95%E3%83%AC%E3%83%BC%E3%83%A0%E3%83%AF%E3%83%BC%E3%82%AF
0733nobodyさん
2010/10/06(水) 19:17:28ID:???ドヤ顔でgoogleさん張られても^^;
0734nobodyさん
2010/10/06(水) 19:29:57ID:???0735nobodyさん
2010/10/06(水) 19:43:21ID:???前にも似たような馬鹿沸いてて何人か釣られてたけど、
相手するような価値があるようなこと聞いてるか考えてからレスしとけw
0736nobodyさん
2010/10/06(水) 19:50:16ID:???FW使いたくない、テンプレート使いたくない(または使うほどでもない)って時のために
俺々ラッパー、俺々関数群を揃えたいとちょいちょい思ってるんだけど、
いろいろ考えてるとあれもこれもってなって、すぐピザになってしまう俺にはなかなか実行できないw
0737nobodyさん
2010/10/07(木) 10:19:09ID:???意味の分からない人が釣られても仕方がないかな
0738nobodyさん
2010/10/07(木) 21:57:54ID:???0739nobodyさん
2010/10/08(金) 00:46:37ID:???0740nobodyさん
2010/10/08(金) 03:41:36ID:???0741nobodyさん
2010/10/08(金) 03:45:36ID:???日本で作ってるっぽいから、どうかな、と思って。
0742nobodyさん
2010/10/08(金) 04:27:00ID:???一年以上更新無いし、汎用FWというよりはGREE用に開発してる感じがする。
0744nobodyさん
2010/10/08(金) 14:55:39ID:???http://www.slideshare.net/sotarok/ethna-updates
0745nobodyさん
2010/10/08(金) 15:21:29ID:???真面目に使ってた時もあったから余計にね
0746nobodyさん
2010/10/08(金) 16:11:15ID:???0747nobodyさん
2010/10/08(金) 21:33:10ID:???1年以上更新放置してPHPカンファレンスで「今年はえすにゃんの一年でしたw」と発表してたぜ。
いくら国産でGREEでの採用実績があっても、これじゃなぁ・・・
0748nobodyさん
2010/10/08(金) 22:48:21ID:???0749nobodyさん
2010/10/09(土) 00:53:57ID:???0750nobodyさん
2010/10/11(月) 10:21:12ID:???0751nobodyさん
2010/10/11(月) 11:38:07ID:???ブログとかに記事張っていただけたらアフィリエイトから5000円分まで購入させていただきます
広告張る場合、食料品の広告を是非お願いします
0752nobodyさん
2010/10/11(月) 13:02:28ID:???http://webification.com/wp-content/uploads/2010/08/table.jpg
0753nobodyさん
2010/10/11(月) 15:07:10ID:???0754nobodyさん
2010/10/12(火) 00:52:33ID:???そこでリレーションしたテーブルを検索させたいのですが、
zii.widgets.grid.CGridViewに設定するcolumnに、
例えば"item.user"としても、user用の検索フォームが表示されません。
表示されるデータ自体はリレーションしたuserデータが表示されています。
これはどのような手を加えれば可能なのでしょうか?
yii1.4です。
0755nobodyさん
2010/10/16(土) 12:50:06ID:???Class Reference に Source Code も付くようになって参考になる
0756nobodyさん
2010/10/16(土) 18:33:32ID:???得にエクステンション
最悪だ…
0757nobodyさん
2010/10/16(土) 23:58:25ID:???知ってる人いたら教えてくださいまし…
0758nobodyさん
2010/10/17(日) 10:28:37ID:???0759nobodyさん
2010/10/21(木) 23:36:57ID:???0760nobodyさん
2010/10/22(金) 01:30:23ID:???0761nobodyさん
2010/10/22(金) 03:40:04ID:???0762nobodyさん
2010/10/24(日) 20:13:09ID:???$c->select=new CDbExpression('*,SUM(count) as summ');
こんな条件でfindAllしたときにsummの値がデータに入ってこないのはなんで?
modelとかいじる必要ある?
0764nobodyさん
2010/10/25(月) 04:53:18ID:???0765nobodyさん
2010/10/25(月) 21:51:55ID:???0766nobodyさん
2010/10/26(火) 01:03:46ID:???他使ったことある人いたら、IDEとの親和性や生産性(ウリ)を埋めてほしく・・・
●フレームワーク
・ZendFramework1.10.x
IDE(PDT)親和性 [★★★★★]
動作速度 [★★★☆☆]
生産性 [★★★☆☆]
コード規約がしっかりしているだけありIDE開発には最適。
動作速度に関しては、色々と便利なクラスが増えているが、コードが肥大化しているのが気になる。
使いやすい部分だけ使う、自作アプリケーション層のフレームワークを被せられれば生産性は跳ね上がる。
総評:そのまま使うのは厳しいが、基底ライブラリ/フレームワークとして使うと柔軟性が高い。一部のコンポーネントは重い。
・ZendFramework2a (>= PHP5.3.x)
現状では1.10xとほぼ同じ・・・namapspace化された。
・Symfony2 (>= PHP5.3.2)
Lazyloadを多用した軽量高速になるはず?
・Yii
軽くて早いらしい。中身見てない。
・rihaco
Objectのアノテーション等が特殊、慣れれば面白そうだかがIDE相性悪そうなイメージ。
●テンプレート系
・Smarty3 ・・・ 正当進化、期待ほど伸びなそう。地味に便利になる。
・Twig ・・・ Symfony勢の新テンプレートエンジン、Smartyに勝る多機能さ。
・Dwoo ・・・ ポストSmartyかと思えたが、最近は更新も停滞気味。
0767nobodyさん
2010/10/26(火) 01:49:18ID:???もうそれでいい気がしてきてる。
Zendもいいと思うんだけど結局うわものの設計が必要で、Symfonyはそこまで作ってくれてる。
Cakeはもう覚えるのも人のコード読むのも気力が出ない。
てかCakePHPって(慣れれば)書きやすい(だろう)だけで絶対に読みやすくないと思う。
0768nobodyさん
2010/10/26(火) 22:38:13ID:???0772nobodyさん
2010/10/31(日) 22:56:20ID:???0773nobodyさん
2010/11/02(火) 01:47:48ID:???使ってみたいなぁと思わせるのはSymfony2。
正式版でどの程度高速安定動作するのかが気になる。
・ZendFramework (http://framework.zend.com/)
PHPのZendEngine開発元であるZend社主体となったFWプロジェクト。
各コンポーネントが疎結合されており、フレームワークを作る為のライブラリ集に近い
PEARっぽいコーディング規約を採用しており、馴染みやすいかもしれない。
ZendFramework2からはPHP5.3対応となる。
・Symfony2 (http://symfony-reloaded.org/)
重いと評されたSymfonyとは全て刷新軽量。
ZendFWやDoctorine等、積極的にvendorライブラリを活用している。
・Smarty 3 RC4 (http://www.smarty.net/)
Smarty 2をPHP5ベースで完全書き直し、
継承しゃ代入、演算等の構文が追加されつつも、基本的な上位互換が保たれている。
最も盛んに更新が行われているが、1年以上かけても正式版は登場していない。
・TWIG (http://www.twig-project.org/)
継承や、柔軟な拡張機能がウリ。
中間コンパイルされるコードがPHPクラスで一時話題になった。
0774nobodyさん
2010/11/03(水) 14:57:46ID:???Railsを意識したフレームワーク
フルスタックなので他のライブラリを使用ないで開発ができる。
ActiveRecordパターンのO/Rマッパー標準搭載。
PHP4対応でPHP4でもPHP5互換の関数使えるようにしているため
共通のソースコードでPHP4とPHP5の両方に対応できる。
互換性に強く古いシステムの移行に最適。
0775nobodyさん
2010/11/03(水) 15:46:10ID:???0776nobodyさん
2010/11/03(水) 19:00:05ID:???> PHP4対応でPHP4でもPHP5互換の関数使えるようにしているため
> 共通のソースコードでPHP4とPHP5の両方に対応できる。
> 互換性に強く古いシステムの移行に最適。
ダウト
三行目の結論が論理的に導けない
上の二行で言っているのは、PHP4のサーバで動いていた「CakePHPの」コードが
そのままPHP5サーバに移行できる(可能性が高い)よ、ってこと、もしくは、
PHP4のサーバそのままで、Cakeで作った新システムに移行できますよ、ってことだけ
なので三行目は書きすぎ、というか根拠のない宣伝文句
せっかく紹介するのなら、嘘を書くなよ
で、それ以前にPHP4対応はさすがにニッチすぎる特色。
仮にも商売でやってるなら、PHP4対応とかもう勧めないでくれ。
0777nobodyさん
2010/11/03(水) 19:09:41ID:???使ってる奴の評価なんて偏って当然なんだからさ…
0778nobodyさん
2010/11/03(水) 20:07:52ID:???何でそんなに必死なんだ?
ちなみにCakePHPはPHP6にも対応する予定で
PHPのバージョンの違いをかなり吸収してくれる。
幅広い環境に同時に対応させるのに最適。
0779nobodyさん
2010/11/03(水) 20:31:06ID:???0780nobodyさん
2010/11/03(水) 21:05:29ID:???>ちなみにCakePHPはPHP6にも対応する予定で
>PHPのバージョンの違いをかなり吸収してくれる。
吸収じゃなくて最大公約数的な機能しか使って無いだけだろ・・・
それともnamespaceとか無名関数とかSPLとかもcakeが吸収してくれるの?
嘘じゃないならバージョン差の吸収ってやつを具体的に教えてくれ。
0781nobodyさん
2010/11/03(水) 22:16:32ID:???0782nobodyさん
2010/11/04(木) 00:01:40ID:???「古いシステムがPHP4で作られてて・・・」って言い訳する人がいるけど、
実行環境がPHP5に移行してるなら、追加・修正する部分からでもPHP5に移行出来るのでPHP4で書くメリットは無い。
実行環境がPHP5に移行していないのなら、その時点で終ってる。
PHP5リリース&PHP4サポート終了まで移行期間が4年もあったのにね。
0783nobodyさん
2010/11/04(木) 00:19:09ID:???0784nobodyさん
2010/11/04(木) 01:29:37ID:???金はかけたくないけど改修しろみたいな客からハイハイ受けるしか道がない
0785nobodyさん
2010/11/04(木) 02:09:50ID:???頭の悪そうな議論のすり替えですねw
君がPGなら論外だが、もし君がPGで無いなら、もうすこし先見の明を持った方がいい。
>>784
大手会社の自社開発に多い気がする。
若手は新卒のど素人、中堅も現場経験の無いど素人、上司は言わずもがな。
0786nobodyさん
2010/11/04(木) 02:45:23ID:???はそれを自分で下ろす訳にはいかないん
じゃないの?だからこの先もずうーっと足
かせをつけられたまま。リードデベロッ
パーが辞めてlithiumを立ち上げたのも多分
その辺が原因なんでしょ?
0787nobodyさん
2010/11/04(木) 04:06:04ID:???cakeのPHP4対応は過渡期だったから仕方無かったとは言え、
レガシーなシステムとの互換性を目的に作ったわけでは無いだろうからね。
lithiumが上手く行くといいね。
0788nobodyさん
2010/11/04(木) 08:19:11ID:???今現在金欠な企業が使い続けるしかない場合もあるだろう
0789nobodyさん
2010/11/04(木) 13:21:07ID:???損害(金銭やら会社の評判やら)とPHP5に移行する際の費用を天秤に
かけて、それでもなおPHP4を使い続ける方がコスト的に有利だと結論づけら
れる根拠があるならそれでもいいんじゃないの。※見つかるとは思えないけど。
0790nobodyさん
2010/11/04(木) 16:03:09ID:???それでも実行環境はPHP5に更新するべき。
多少のコード修正は必要かもしれないが、PHP4のシステムをPHP5で動かすのは問題無い。(逆は無理だが)
数年前に脆弱性に対するサポートすら終っているPHP4を動かし続ける理由は無い。
実行環境さえPHP5に移行されていれば、
今後、追加修正する部分からPHP5を使えばいい。
という話。
PHP4で書く事にメリットは無い。
0791nobodyさん
2010/11/04(木) 23:54:30ID:???Cake2で、php4系を切りすてるみたいだけどね。
でも、php 5.2以降だから、namespaceは無しなんだね。
移行のし易さをとったってことかな?
0792nobodyさん
2010/11/05(金) 03:06:27ID:???0793nobodyさん
2010/11/05(金) 12:41:40ID:???0794nobodyさん
2010/11/05(金) 15:44:06ID:???0795nobodyさん
2010/11/06(土) 02:05:38ID:???0796nobodyさん
2010/11/06(土) 02:56:02ID:???0798nobodyさん
2010/11/06(土) 16:32:16ID:???かなり良くできてるけど、日本人英語だめな人多いしなw
0799nobodyさん
2010/11/06(土) 17:37:32ID:???0800nobodyさん
2010/11/06(土) 17:39:32ID:???0801nobodyさん
2010/11/06(土) 17:54:14ID:???0802nobodyさん
2010/11/06(土) 18:54:49ID:???独自かどうかは関係無く、
Zend/Symphony/cake/CI/Ethna・・・ どれも日本のコミュニティがあり、ある程度盛り上がっている。
で、海外ではyii流行ってるの?w
0803nobodyさん
2010/11/06(土) 19:01:59ID:???0804nobodyさん
2010/11/06(土) 19:11:51ID:???新しいものを触りもせずに批判している暇はない。
0805nobodyさん
2010/11/06(土) 19:33:12ID:???海外でもyiiはそこそこじゃないかな。
はやっているとは言い難いけど注目はされてる。
優れた人の設計したFWなら後発のほうが出来がいいのは
当たり前だからね。
0806nobodyさん
2010/11/07(日) 09:22:21ID:???これは他のフレームワークでも普通にある機能なの?
0807nobodyさん
2010/11/07(日) 09:33:01ID:???0808nobodyさん
2010/11/07(日) 13:30:13ID:???FW内で定義したらそのモデルを実現するためのSQLをいちいち手で書かないといけないんだ。これが面倒。
fixtureの記述だって全部手作業。symfony/Doctrine はこれらを自動でやってくれくれるから楽。yamlに
モデル定義を書けばSQLは自動生成だし、DBからリバースしてfixtureを作ってくれる。cakeやCIは
俺ほとんど知らないんだけどその辺どうなってんの?
0809nobodyさん
2010/11/07(日) 16:36:33ID:???SQLを手で書く必要があるの意味は解らない。やり方間違ってない?
0810808
2010/11/07(日) 16:48:59ID:???悪い、書き方が悪かった。言いたかったのはDBのテーブル定義のこと。モデル定義とは別にマニュアルでcreate tableしなくちゃいけないのよ > yii
0811nobodyさん
2010/11/07(日) 17:59:01ID:???yiiが面倒なのは他にあってだな…
0812nobodyさん
2010/11/07(日) 18:05:15ID:???cakeでも出来ないけど。
>>811参考までに面倒な点教えてください。
0813nobodyさん
2010/11/07(日) 18:29:28ID:???複数テーブルをjoinして処理するような場合、無駄に重い(かつ設定画道そう)そうな印象なんだけど・・・
SQL書く事なんて殆ど無い感じ?
0814nobodyさん
2010/11/07(日) 18:44:36ID:???あくまでも自分の印象だけど
複数テーブルのJOINなんてはっきり言って関心の外という印象を受ける
典型的な親子関係については、頑張って抽象化してるのが多い
それに関しては、効率を考えなければ問題なく使える
でも、RDBに特化した、JOINとかUNIONとかそういうものを取り込んでいる
ORMってのはまだ無いような気がする
理想的な「オブジェクト」モデルまでしか考慮の範囲に無いってのが、
ORMのポリシーなんだろうな
だから、Symfonyのように、いざとなったらPDO使ってデータを配列で取ってこい、
あとからオブジェクトにしてやるから・・・というアプローチはむしろ必須だと思う
0815nobodyさん
2010/11/07(日) 18:53:35ID:???なるほど、One Object = One Table という実装や使い方が主流って感じですかね。
自分の場合は、以下のように
・1テーブルの1行をCRUD
・1テーブルの複数行をSELECT
程度にしか使っていなかったので、皆さんの意見を聞きたいです。
$table = new HogeTable();
$rowList = $table->fetch()
$row = $rowList->fetch();
$row = $table->createRow();
0816nobodyさん
2010/11/07(日) 19:00:35ID:???主流というなら、、テーブルを抽象化するというよりはレコードを抽象化するのが主流な気がするけど
いまだActiveRecordが強力な思想って感じで
0817nobodyさん
2010/11/07(日) 19:08:31ID:???うん。Zendメインに使ってるんだ。
未だにデザインパターンが良くわかってないんだけど、
ゲートウェイパターンとActiveRecordってPHPコードにするとどんな感じになるんだろ
0818nobodyさん
2010/11/08(月) 00:08:07ID:???レコードの抽象化(save()メソッドなど)かと思えば、同じオブジェクトが
find_by() みたいなデータ集合(テーブル?)の抽象化みたいな機能も持ってるし
ぶっちゃけ、便利なのは認めるが、意味はよくわからん
俺だけかな
0819nobodyさん
2010/11/08(月) 09:21:14ID:???http://www.yiiframework.com/doc/guide/1.1/ja/database.arr
0820nobodyさん
2010/11/08(月) 17:26:35ID:???シーンナンバーである程度は変えられるけど
0821nobodyさん
2010/11/08(月) 17:37:22ID:???0822nobodyさん
2010/11/09(火) 00:45:06ID:???そのあたりは一長一短だよなぁ
0823nobodyさん
2010/11/09(火) 01:49:46ID:???フルパスで呼び出す事が多いから、あまり利点を感じないんだが('A`;
同namespace内ならnamespaceを記述する必要が無いからコードが短くなるとは思うが、
フレームワークと同じnamespaceを使用する事はまず無いだろうし。
use構文で別名つけるにしても、別名自体が被ってしまうと厄介な事になるし。
区切り文字がバックスラッシュだから、文字列でクラス名指定する時面倒だし。
言語的に明確にスコープが区切られるのは良い事だとは思うけど、
ぶっちゃけ使いにくくない?
0824nobodyさん
2010/11/09(火) 06:28:50ID:???あるんだから、使って欲しいなってくらいか
できればお手本を見せてくれるくらいの勢いで
これで、一応フレームワークやライブラリのクラス名を気にせず
こっち側でのクラス命名ができるようになった、ってくらいの認識
ZendFrameworkの命名規則で十分だったとか言っちゃだめなんだろうな1
0825nobodyさん
2010/11/09(火) 06:45:09ID:???今更名前空間を導入したところで、これまでの利用者の意識に大した
変革は無いだろうと
むしろ、グローバル関数万歳な書き方をしていた人らへのインパクトの
方が大きいのではないかな
現実として言語仕様的にはある意味、やっと十数年前のPerl5のpackageに
追いついただけじゃないのかと思わないでもない
もちろん、新規でPHPを始める人間にとっては全然違った意味がある
必要な変更だったとは思うけど
0826nobodyさん
2010/11/09(火) 07:42:08ID:???>ZendFrameworkの命名規則で十分だった
ぶっちゃけそうなんだよねw
区切り文字が「_」から「\」に変わって、多少構文が追加が追加されたイメージしか無いんよ。
>>825
あぁ・・・その発想は無かったわ。
確かにクラスに名前空間を含める風趣の内人には革命的かもしれないね。
ふむふむ・・・
今PEARやZENDの記法も次第にnamespaceに統合されるのかなぁ・・・
バックスラッシュは微妙だなぁw
0827nobodyさん
2010/11/10(水) 02:32:15ID:2LA4cXC4なのに、CakePHPやSymfonyの命名規則がなんであんなに糞なのか理解不能
0828nobodyさん
2010/11/10(水) 10:06:04ID:???0829nobodyさん
2010/11/10(水) 22:50:34ID:???なんでいまさら命名規則に文句を言うのか理解不能
0830nobodyさん
2010/11/10(水) 23:00:22ID:2LA4cXC4CakePHPやSymfonyの命名規則が糞すぎるから
PHPが糞言語とは思わない。糞だと思う言語を使うお前の職能は糞だと思うが。
0831nobodyさん
2010/11/10(水) 23:09:01ID:???>CakePHPやSymfonyの命名規則が糞すぎるから
>PHPが糞言語とは思わない。糞だと思う言語を使うお前の職能は糞だと思うが。
え?どういう理解力してんだお前?
頭悪すぎる上に妄想激しすぎだろ。
0832nobodyさん
2010/11/10(水) 23:11:56ID:???不思議。
0833nobodyさん
2010/11/10(水) 23:35:05ID:???PHP創始者が言ってたけど、言語の汚さは別に問題では無く、結果的に何が出来るかが重要らしい。
インタビューがあるから一度読んでみるといいよ。
http://gihyo.jp/news/interview/2010/rasmus
0834nobodyさん
2010/11/11(木) 00:29:40ID:IgwzUq/fだから糞言語のスレで糞野郎のお前何してんの?
0835nobodyさん
2010/11/11(木) 01:13:35ID:IgwzUq/f�d
0836nobodyさん
2010/11/11(木) 14:20:12ID:???0837nobodyさん
2010/11/11(木) 15:11:51ID:???0838nobodyさん
2010/11/11(木) 19:30:32ID:???0839nobodyさん
2010/11/11(木) 20:14:15ID:???でもやっぱり、namespaceのバックスラッシュは
日本語環境だとがっかりしちゃう(´・ω・`)
0840nobodyさん
2010/11/12(金) 22:45:18ID:???0841nobodyさん
2010/11/12(金) 23:36:47ID:???それはエスケープ記号だって意識が先に立つのがどうしようもなく引っかかる
0842nobodyさん
2010/11/13(土) 01:47:19ID:???全然使わない関数が組込みに入ってるけど外そうとは思わない、みたいな事言ってるの聞いて、ああ、PHPってやっぱそういう言語なんだなって思った。
0843nobodyさん
2010/11/13(土) 05:02:03ID:???0844nobodyさん
2010/11/13(土) 11:40:45ID:???引数の順序がバラバラだが「目標を完遂するのに問題無い」と言っているし、
当人のインタビューwp読む限り、言語自体は暗に汚いと認めてるよねw
まぁ、それがメリットでもありデメリットでもあるんだと思う。
いきなり型宣言必須で、全関数メソッドがCamelCaseに変わり、内部言語はutf-8に統一しました!
とか言われたら誰も移行しないだろう(もしくは完成〜移行までに数年以上かかる)
そういう言語が必要ならそういう言語を使えばいい、って思想なんだろう。
0845nobodyさん
2010/11/13(土) 11:48:32ID:???0846nobodyさん
2010/11/13(土) 17:21:36ID:???>>841
自分は正規表現書くときとか¥じゃないと書けない体になってしまったんだが。。
バックスラッシュだとパッと見/と区別しづらいし。
0847nobodyさん
2010/11/13(土) 18:16:58ID:???0848nobodyさん
2010/11/13(土) 19:30:32ID:???たまに正しいバックスラッシュ記号をみると逆に違和感覚えちゃうw
0850nobodyさん
2010/11/14(日) 14:29:41ID:???0851nobodyさん
2010/11/14(日) 14:57:22ID:???いい加減慣れろw
どーしてもっていうなら、json_decodeでも使ってやがれ
0852nobodyさん
2010/11/14(日) 15:00:55ID:???0853nobodyさん
2010/11/14(日) 15:16:10ID:???名前空間や無名関数とは大分重みが違う気がするんだが
その辺を納得させられるだけの主張がないと、後回しというよりは考慮外のままだろ
0854nobodyさん
2010/11/14(日) 15:35:23ID:???0855nobodyさん
2010/11/14(日) 15:45:01ID:???0856nobodyさん
2010/11/14(日) 16:50:52ID:???糞仕様はすぐ取り込むのに無意味な所で保守的
関数スタイルじゃなければならない理由こそ知りたい
せっかくパッチを書いてくれてる人が居ても報われなくね
0857nobodyさん
2010/11/14(日) 18:04:39ID:???いらないものはいらないってだけだろ
そのパッチを書いた人にしたって、取り込んだ方がいい理由ってのを
全然まったく説明できてないだけなんじゃないか?
0858nobodyさん
2010/11/14(日) 18:50:02ID:???本家を見たこと無いのか?
http://news.php.net/php.internals
建設的な議論がされてると思ってはいけない
ちょっとした事で炎上して議論が進まない事も多々ある
上にでてるqiqの時も炎上してスルーされたから
qiqはextentionで提供するようにしたんだろ
※ pdf注意
http://www.opendogs.org/pub/PHP2QIQ.pdf
0859nobodyさん
2010/11/14(日) 19:03:43ID:???それが好みの問題なら、反応はギャンブルみたいなもんだろ
0860nobodyさん
2010/11/14(日) 20:21:42ID:???納得がいく理由があれば通ると思うだろ?
そうじゃないんだよ、大多数の人が”いる”と思っててもスルーされるんだよ
大規模プロジェクトはそういうもの
そもそもphpなんてコアメンバの中にまでマルチバイト対応はいらないと思ってる人がいるくらいだからな
0861nobodyさん
2010/11/14(日) 20:47:44ID:???0862nobodyさん
2010/11/14(日) 20:54:21ID:???0863nobodyさん
2010/11/14(日) 21:48:16ID:???和訳してる人いないのかな?
0864nobodyさん
2010/11/15(月) 03:44:50ID:???PHPだけarray()って5文字も多い。これを変だと思わないのはどういう了見かと思う。
0865nobodyさん
2010/11/15(月) 13:30:15ID:???特に後者。
0866nobodyさん
2010/11/15(月) 13:41:37ID:???後者の方は、インスタンスを返すクラスメソッドを用意すれば現状でも可能では?
singletonとは区別が付くようにしておいた方がいいだろうけど。
0868nobodyさん
2010/11/15(月) 13:49:40ID:???0869nobodyさん
2010/11/15(月) 14:20:44ID:???こういうのもあるけど言語仕様で出来るようにならないものか。
0870nobodyさん
2010/11/15(月) 16:41:43ID:???http://marc.info/?r=1&w=2&q=b&l=php-internals&s=Autoboxing
小泉「オートボクシングはお餅でしょうか」
ML「えっ」
小泉「まだお餅になってないということでしょうか」
ML「えっ」
小泉「えっ」
ML「変化するってことですか」
小泉「new Foo()->bar()->baz(); とか array(1, 2, 3)->filter(function ($v) { return $v > 1; })->sum() == 5 とか書けます」
ML「そうなんだすごい」
デミ「なにそれこわい」
小泉「えっ」
ML「えっ」
デミ「遅いし構文とかリークとか怖いし何より俺の書いたオプティマイザが役に立たないし」
小泉「えっ」
ML「えっ」
0871nobodyさん
2010/11/22(月) 16:11:43ID:???どうすればいいですか?
教えてくださいフレワク先生
0873nobodyさん
2010/11/22(月) 23:19:33ID:???mapとかブロック付きメソッドとか使えると便利なのにね。
0875nobodyさん
2010/11/23(火) 10:09:18ID:???もっとパッチ作ってる人も
phpによる開発を全くしたことがなく、今後もやるつもりはない
仕事でCを使っているのでパッチを書けるから書いている
こういうスタンスで有名
別に愛着とかどうでもいいと俺は思うけどね
0876nobodyさん
2010/11/23(火) 22:50:39ID:???0877nobodyさん
2010/11/24(水) 04:48:35ID:???入出力でiconvフィルタかけられて基本UTF-8でいいよ、もう。
バックスラッシュとかチルダでバッドノウハウ的なのが残るだろうけど。
0878nobodyさん
2010/11/24(水) 21:38:25ID:???日本語の扱いの際に霞んで見える・・・
ある意味日本語でPHPを扱う時の実用関数としては神レベル
0879nobodyさん
2010/11/25(木) 00:39:47ID:???0880nobodyさん
2010/11/25(木) 01:30:45ID:???他の言語は内部エンコーディングがユニコードベースになってるけど、実用性という意味じゃPHPのmbstringは非常に優れてるね。
まあ、完全に関数ベースで、すべてmb_xxxって書き換えなきゃ行けないのは全然格好良くはないけどね。
0881nobodyさん
2010/11/25(木) 01:42:34ID:???$mbstring = new MbString($str, 'utf-8');
$str = $mbstring->convertKana('KV');
とか?面倒くさいだけかもという気もしなくはない
0882nobodyさん
2010/11/25(木) 01:51:51ID:???> $str = $mbstring->convertKana('KV');
一応、チェインするなら意味はあるかも
$mbstring->convertKana('KV')->substr(0, 3)->convertEncoding('sjis-win')
でも、そうするとこうなるんだきっと
$str = $mbstring->convertKana('KV')->substr(0, 3)->convertEncoding('sjis-win')->toString();
0883nobodyさん
2010/11/25(木) 02:21:38ID:???0884nobodyさん
2010/11/25(木) 02:57:41ID:???0885nobodyさん
2010/11/25(木) 03:00:44ID:???全部のメソッド名をconvertXXX()にしようとするのは、名前空間がなくてグローバルに全部の関数をつっこむPHP脳。
0886nobodyさん
2010/11/25(木) 03:20:37ID:???$str->setEncoder(function ($v) { return isMobilePhone() ? mb_convert_kana($v, 'ak', 'utf-8') : $v; });
?>
<html>
<?= $str ?>
</html>
とか。
0887nobodyさん
2010/11/25(木) 13:45:18ID:???>>882
関数思考でクラス化してもメリットは薄いと思う。
変換部分をラップして、変数や配列に対して処理を使い回せると便利な気がする。
$mb = MbString::getInstance()
->setKanaFilter('KV')
->setOutputEncoding('sjis-win');
$string = $mb->encode($string);
$array = $mb->encode($array);
0888nobodyさん
2010/11/25(木) 15:03:31ID:???0889nobodyさん
2010/11/25(木) 15:04:13ID:???0891nobodyさん
2010/11/25(木) 16:07:40ID:???print $str->escape(); // A&B
print $str->escape()->escape(); // A&B
print $str->escape()->escape()->unescape(); // A&B
とかな。
0892nobodyさん
2010/11/25(木) 16:08:52ID:???$str = new String('A&B');
print $str->escape(); // A&amp;B
print $str->escape()->escape(); // A&amp;B
print $str->escape()->escape()->unescape(); // A&B
0893nobodyさん
2010/11/25(木) 16:36:29ID:???class String {
public $value = "";
public function __construct($string) { $this->value = $string; }
public function escape() { $this->value = htmlspecialchars($this->value); return $this;}
public function unescape() { $this->value = htmlspecialchars_decode($this->value); return $this;}
public function __toString(){ return $this->value; }
}
利便性を考慮すればする程重くなりそうだしメリット無さそうだけど。
0894nobodyさん
2010/11/25(木) 17:13:07ID:???内部的にはストリームでつながる実装にするだろうし
見た目も性能もよくなりそう。
0895nobodyさん
2010/11/25(木) 17:27:18ID:???性能に関しては確実に落ちる。
0896nobodyさん
2010/11/25(木) 18:14:32ID:???それをStringに直接実装しちゃうのはなんか違うんじゃないのかという気がした
0897nobodyさん
2010/11/26(金) 00:39:19ID:???$str_list[] = new String_Html;
$str_list[] = new String_Sql;
......
foreach ($str_list as $str) {
print $str->escape();
}
0898nobodyさん
2010/11/26(金) 00:49:00ID:???ちょっと意図が違う。
public function __construct($string) { $this->value = $string; $this->isEscaped = false; }
public function escape() { if (!$this->isEscaped) { $this->value = htmlspecialchars($this->value); $this->isEscaped = true }; return $this;}
public function unescape() { if ($this->isEscaped) { $this->value = htmlspecialchars_decode($this->value); $this->isEscaped = false; }; return $this;}
かな?
エスケープしてるかしてないか分からなくても、とりあえずエスケープしとくっていう使い方。
0899nobodyさん
2010/11/26(金) 01:18:35ID:???単にエスケープ形式を変えたいだけなら、個別クラスにする必要性なくね?
(String_HtmlとString_Sqlに構文バリデーションが含まれるなら別だろうけど)
$str_list[] = String::getInstance('<html></html>')->setEscapeType('HTML');
$str_list[] = String::getInstance('SELECT * FROM hoge')->setEscapeType('SQL');
>>898
それだとescape以外のメソッド実装したり、二重エスケープしたい時とか面倒じゃね?
単に出力時に確実にescapeしたいだけなら、toString内にescape処理を実装する方が正しい気がする。
0900nobodyさん
2010/11/26(金) 01:42:29ID:???String_Htmlクラスではデフォルトでエスケープしてしまうのも手ではある。テンプレートエンジンのエスケープ処理でそういう事をやってるのはよくある。
いずれにせよエスケープ状態を表すフラグを持たせた方が良い。
そうでなければ、その2重エスケープだとかその他の特殊な処理を行うのが難しくなる。
そういうフラグを持たせられる事こそがプリミティブ型をオブジェクト型にするメリットだから。
0901nobodyさん
2010/11/26(金) 01:44:09ID:???0902nobodyさん
2010/11/26(金) 03:18:21ID:???>いずれにせよエスケープ状態を表すフラグを持たせた方が良い。
は解るが、isEscapedの判定をescapeメソッド内で行うべきでは無いかな、
if (!$string->isEscaped) $string->escape();
と明示的にエスケープする方が美しい。
2重エスケープはほんの一例だよ。
lengthとかmatchとかconvertEncodingとか、文字列をオブジェクト的に扱うメソッドを実装する時に、
エスケープされてるか否かでメソッドの挙動が変わるのはデメリットの方が多い気がするな
0903nobodyさん
2010/11/26(金) 03:35:37ID:???●メリット
・流れるようなインターフェースが実装出来る
・PDT等のコード補完と相性が良い
・引数タイプヒンティングが行える
●デメリット
・文字列を引数とする標準関数との親和性が下がる
・実装&実行コストの増加
ってところかね
0904nobodyさん
2010/11/26(金) 03:45:45ID:???class HtmlString {
public $org = "";
public function __construct($str) { $this->org = ($str instanceof HtmlString) ? $str->org : $str; }
public function __toString() { return htmlspecialchars($this->org); }
}
function h($str) {
return new HtmlString($str);
}
$str1 = h("<a>");
$str2 = h($str1);
echo $str1, $str2;
0905nobodyさん
2010/11/26(金) 04:45:26ID:???クラス名が紛らわしいな・・・文字列操作で無く、エスケープを主体にしたクラスだよね。
HtmlStringじゃなくてEscapedHtmlという感じの方がしっくりくるな。
てか大抵のシステムではエスケープはビューの出力時に一度行えば良いはずなので、
わざわざ文字列をクラス化するメリットは薄い気がするわ。
0906nobodyさん
2010/11/26(金) 14:00:36ID:???0907nobodyさん
2010/11/26(金) 14:07:16ID:???0908nobodyさん
2010/11/26(金) 14:11:42ID:???文字列をオブジェクトにラップしてデフォルトでエスケープするのは、PerlのText::Xslateとかテンプレートエンジンではよくあって、
PHPはあまり詳しくないど、多分PHPでも似たような事やってるのは探せばあると思う。
エスケープし損なうのは絶対避けたいから。
例えば、>>886に書いた、
$str->setEncoder(function ($v) { return isMobilePhone() ? mb_convert_kana($v, 'ak', 'utf-8') : $v; });
の'utf-8'は未定義の場合にmb_detect_encoding()でエンコーディングを探すようにするけれど、これをキャッシュしておけば以降の処理でコストダウンになる。
こういうのがオブジェクト型にするメリットだと思う。
もっとも、実際にこういうのやろうと思っても、PHPは演算子オーバーロード出来ないし、永続化出来ないmod_phpだと速度的にダメすぎるだろうな。
そういうわけで、mbstringは実用本位なPHPによく合ってると思う。
0909nobodyさん
2010/11/26(金) 14:33:40ID:???>>886 の例、PHPではStringクラスじゃなくてTemplateEngineクラスに実装する風潮があるね。
(実際多くのテンプレートエンジンはそうなっている)
ていうかビューで扱う全ての変数をStringオブジェクトに変換しないと結局エスケープ漏れが発生しちゃわないか?w
0910nobodyさん
2010/11/27(土) 13:57:52ID:???0911nobodyさん
2010/11/29(月) 00:38:59ID:???こんなのわけわかんないんだよね・3・
難しいよ・3・ ちね
0912nobodyさん
2010/11/30(火) 05:39:49ID:+I0UUEzG0913nobodyさん
2010/11/30(火) 16:23:37ID:???・基底フレームワーク
・アプリケーションフレームワーク
とあるからなぁ、一般的にはオープンソースのフレームワークを基底に、独自のフレームワーク(っぽい実装)を作るよね?
その独自部分のノウハウとかテクニックを聞きたいです先輩!
0914nobodyさん
2010/11/30(火) 23:09:01ID:???むしろビジネスロジック以外で独自色を出そうとするとメンテ性が悪くなり謎の挙動不審に陥りハマりまくる。
ただし、これは多分、SymfonyやCIも同様。 (・∀・)イイ!! は知らん。
ちいたんとかは、よく知らんが基本設計がよければ俺色に染め甲斐がありそうだ。
Zend FWに関しては、みんなどんな風に使ってるのかよくわからん。
Zend_ToolをベースにしてオレオレFWを作ってるのか、
オレオレFW用ライブラリ集として活用してるのか、
Zend_Toolをベースに完全にZend謹製のものをつかってZend準拠なやりかたでZend Wayしてるのか。
0915nobodyさん
2010/12/01(水) 02:20:33ID:???独自色というか、FWの仕様と微妙に合わない実装を強いられた時に、
独自クラスでラップする事はよくあると思うんよ。
すると
>むしろビジネスロジック以外で独自色を出そうとするとメンテ性が悪くなり謎の挙動不審に陥りハマりまくる。
となるわけで・・・ここらへんのうまい落としどころとかテクニックが合ったらいいなぁと思ったのさ。
0916nobodyさん
2010/12/02(木) 01:31:41ID:???0917nobodyさん
2010/12/02(木) 06:02:13ID:???PEARやZend Frameworkのコードに慣れているからかもしれないが、
CakePHPを使って、まともなコードのWebアプリは作れない。
よくあんなのが人気あるのか不思議だ。
CakePHPには、ソースコードの良し悪しが分からないド素人しか食いつかないんじゃないかなぁ。
てわけで、俺はZFに一票。
0918914
2010/12/02(木) 10:33:51ID:???俺はCake厨のド素人なんですが、
ソースが醜い&設計も微妙な部分があるというのには同意で、
でもZend Frameworkをどんな風に使ってるのか(使う事が推奨されてるのか)
>>914でも書いたように全然分からんのです。
ActiveRecordあるんかなとか、そういうのも含めて・・・
まあググればいいんでしょうけど、Zend Frameworkをスゲエ便利に使ってますって感じの
記事を読んだ事が無い・・・。
0919nobodyさん
2010/12/02(木) 15:02:51ID:???array地獄でIDEの補助も受けられないし、人間の負担が変に大きすぎる。
0920nobodyさん
2010/12/02(木) 16:45:50ID:???けど、一気に設定を流し込む場合にこれ以外の良い方法はあるの?
0922nobodyさん
2010/12/02(木) 22:25:42ID:???俺俺バリデーターを作って実装前にチェック掛ける
PHPをやめる
0923nobodyさん
2010/12/03(金) 00:19:07ID:???取捨選択しやすくて拡張の土台として都合がいい。
その分、素体のまま開発始めようとした場合のご利益は少ないと思う。
あとはソース見てクラス設計の参考に使うのも結構いいかも
0924nobodyさん
2010/12/03(金) 00:58:33ID:???0925nobodyさん
2010/12/04(土) 12:01:25ID:???可読性が悪い理由は簡単で
互換性を重視しているからだよ。
PHP4に対応するために、あえてPHP5の機能を
使わないで作られている。
いまどきPHP4なんてと思うかもしれないが、
CakePHPが人気が出たときはPHP4のサポートは終了しておらず、
PHP5への移行期だったから人気が出た。
いまだに古いRHELとかPHP4を搭載したディストリが
サポート期間中だったりする。
0926nobodyさん
2010/12/04(土) 12:19:44ID:???コードは書けると思う。
0927nobodyさん
2010/12/05(日) 02:28:31ID:???ZendFrameworkの明確なコード規約は素晴らしいと思う。
冗長と感じるかもしれないが、IDEとの親和性が抜群に良いのでチーム開発する上では必須。
0928nobodyさん
2010/12/05(日) 06:37:32ID:???同意です。
ところで、
>> IDEとの親和性が抜群に良い
とのことですが、何をお使いですか?
NetBeans? PDT?
参考までに教えてください。
0929nobodyさん
2010/12/05(日) 08:46:29ID:???0930nobodyさん
2010/12/05(日) 19:13:27ID:???PDT2.2をメインにしています。
NetBeansより重いですが、コード補完機能とコphpDoc生成機能がより協力な感じがあります。
>>929
phpDocの書き方を含めて、各種命名規約、インデント改行規約、PHP閉じタグ無し等が名言されてるんよ。
0931nobodyさん
2010/12/06(月) 10:18:57ID:???べつにCakeにないからどうという話じゃないと思う
レイヤーが違うというか
0932nobodyさん
2010/12/06(月) 10:49:09ID:???App::importで魔法的にパッケージ解決するところが逆に癌。
コントローラへの自動bindがあるから同名のModelとComponentも回避しないといけないし。
0934nobodyさん
2010/12/06(月) 23:44:19ID:???>phpDocの書き方を含めて、各種命名規約、インデント改行規約、PHP閉じタグ無し等が名言
コーディング規約って言ったら普通こういうのを定義したものを指すんだから
ZF云々じゃなくてコーディング規約云々の話だね。
http://pear.php.net/manual/ja/standards.php
https://trac.cakephp.org/wiki/Developement/CodingStandards
http://trac.symfony-project.org/wiki/HowToContributeToSymfony#CodingStandards
http://framework.zend.com/manual/ja/coding-standard.html
0935nobodyさん
2010/12/07(火) 00:13:12ID:???その4つの規約にも、それぞれメリットデメリットがあるし、規約も含めてのフレームワークだと思うよ。
個人的には最も枯れているPEAR記法をベースにしたZend規約がベターで、
PDT(ZendStudio)との親和性も高いと感じたのさ。
0936nobodyさん
2010/12/07(火) 01:27:13ID:???規約やIDEの評価基準に使いたいから、純粋に知りたい
0937nobodyさん
2010/12/07(火) 01:37:00ID:???0938nobodyさん
2010/12/07(火) 02:17:26ID:???パッケージ名が被る心配はほぼ無いってのが強み。
cakeはPHP4コード&マジックメソッド実装が多めで補完が弱い。
Symfonyは2.0でZend風の命名規約に移行するし、
Twig等の周辺ライブラリは既にZend形式になっている。
0940nobodyさん
2010/12/08(水) 00:24:03ID:4EtmohlDZend風の命名規約にするかなぁ。
0941nobodyさん
2010/12/08(水) 01:27:06ID:???5.2を完全に切り捨てるのはまだ早いからかと。
あと、PHPのnamespaceはお世辞にも使いやすいとは言えない。
(PEAR&Zend形式から乗り換えるメリットがほっとんど無い)
まず、
・クラスの完全修飾にバックスラッシュが入る
→ 文字列にクラス名入れる時に面倒がおこる
・名前解決が無駄に複雑
→ 同ネームスペース内であれば、記述が楽になるかもしれんが、
大抵の場合は \ で始まる絶対パスで記述する事になる。
5.3の他の機能は素晴らしいと思うが、
Zend形式でなく、namespaceを使う明確なメリットを教えて欲しい。
0942nobodyさん
2010/12/08(水) 02:46:25ID:???0943nobodyさん
2010/12/09(木) 00:27:57ID:???0944nobodyさん
2010/12/09(木) 01:35:16ID:???0945nobodyさん
2010/12/09(木) 06:52:12ID:???許せん。
省略したら普通privateだろ〜
0946nobodyさん
2010/12/09(木) 07:11:56ID:???ていうか普通は省略しない。
0949nobodyさん
2010/12/09(木) 21:56:09ID:???0952nobodyさん
2010/12/10(金) 00:04:57ID:???ねーむすぺーすのないPHPとしては、全部が同じ場所にいるようなもんだから
ある意味あってるという見方もできるな
0953nobodyさん
2010/12/10(金) 01:00:35ID:???0954nobodyさん
2010/12/10(金) 03:40:50ID:???言語仕様的にネームスペースは不要だったかと。
接頭子でネームスペースの役割は担えてるし、JavaScript等も同じような方法でnamespaceを実装してるし・・・
ネイティブにnamespaceを実装するとコンパイラとの相性は良いのかもしれんけどね、PHPでは不要だよね。
また Hoge_Moge_ClassName と書いていたクラスが \Hoge\Moge\ClassName と名称変更されるのだが、
バックスラッシュを区切り文字に使ってしまうデメリットは結構あると思う。
同ネームスペース内なら、ClassNameを直接参照出来るというメリットはあるが、
そんな場面は滅多に無いし use構文で別名付けちゃうと、今度は他のクラス名と被る可能性が出てくるので
結果的に、フルパスでクラス名を記述する事になる。
となると、何の為に 5.2以下を切り捨ててまでnamespaceを使うのか?という事になる。
0956nobodyさん
2010/12/10(金) 14:10:24ID:???PHP5.3を普通と考えて
他の言語環境を「普通」とどれだけかけ離れているか
語るくらいの図太さと厚顔さがPHPerには必要だ
0959nobodyさん
2010/12/11(土) 13:28:54ID:???でも、ネームスペースが不要とかって事はありえない。
JSなんかはネームスペースかないせいで$とかぶつかりまくってる。
0960nobodyさん
2010/12/11(土) 18:39:16ID:???ネームスペースの重要性は切り捨てれるようなもんじゃないからな
小規模なものなら問題ないけど、どうしてもつかいたいライブラリ同士の
名前がぶつかったりした日にゃ、めんどくさいことになる
0961nobodyさん
2010/12/11(土) 21:18:48ID:???JavasSctiprtはネームスペースあるだろ。
ネームスペースという機能自体はないが、
規約レベルではるがネームスペースはある。
そしてそれはPHPのネームスペースより余程エレガント。
0962nobodyさん
2010/12/11(土) 22:14:18ID:???>>960
ネームスペースという概念は必須だと思うが、
それはPEAR規約で既に実現されている。
バックスラッシュで無理矢理ネイティブ実装されたnamespaceを使うメリットは薄いって話。
一度PHP5.3のnamespaceを使ってごらん、PHP5.2を切り捨ててまで使いたいとは思えないだろうから。
0963nobodyさん
2010/12/11(土) 22:49:57ID:???でもPHPの構文として用意されたネームスペースを使わずに
規約として用意されたネームスペースもどきを使うようじゃ駄目だ。
今後スタンダードなものとして使うことはできんな。
symfonyのようなPHPを代表するようなFWなら尚更だ。
0964nobodyさん
2010/12/11(土) 23:16:10ID:???「日本ではバックスラッシュが\マークなんだってなwww」
0965nobodyさん
2010/12/11(土) 23:17:35ID:???頭硬すぎ。
その、「規約として用意されたネームスペースもどきを使うようじゃ駄目」な理由を述べてくれよ。
単に新しいもの=素晴らしいとでも思ってるの?
いくら構文として用意されていても、
規約を守らずにnamespaceを使ってしまっては意味が無いし、
use文によるエイリアスとか、潜在的なバグが増える事も想定される。
ネームスペースの概念は必須だが、PHP5.3のnamespace実装はお粗末すぎる。
5.2以下(既存FWユーザ)を切り捨ててまで移行するモノでは無いかな。
0966nobodyさん
2010/12/11(土) 23:42:09ID:???0968nobodyさん
2010/12/12(日) 00:39:02ID:???機能としてネームスペースが用意されているのに
規約としてのネームスペースを使うということの気持ち悪さ。
お前は保守的なんだよ。
ところでなんでお前は規約としてのネームスペースにこだわるの?
機能として5.3からネームスペースが正式に実装されたんだから
黙って使えよ能無し
0969nobodyさん
2010/12/12(日) 00:40:07ID:???使った事のあるフレームワークはみな移行してるんで俺は移行するだけ
置いていかれる人の事なんてどうでも良いよ
いつの世もそう言うのんびり屋な人達はいるしどうぞご勝手にって感じだわな
言い訳考えるぐらいならさっさと過去の資産の為のコンバータ書いた方がマシ
俺はね
0972nobodyさん
2010/12/12(日) 01:46:05ID:???0973nobodyさん
2010/12/12(日) 01:53:21ID:???>>969
ネームスペースなんて実装じゃなく規約の問題。
ネイティブにnamespace構文が存在したとしても、命名規約が統制されなければ意味は無い。
(これはuse構文によりさらにややこしくなってるし)
また、保守的になってるつもりは無いよ。
メインはPHP5.3開発に移行していて、無名関数とか遅延バインディングとか便利だと思ってるし、
5.4のGC含めて久しぶりにPHPコードを書きまくってる。
ただし、namespaceだけは判断が微妙で、
例えば5.2以下で実装出来るロジックでも、
namespace配下に置くことで動作しなくなるというデメリットがきつい。
Redhatを代表とするサーバ系OSには今だPHP5.3はバンドルされてないし、
完全に普及するには年単位の時間がかかると思われ。
PHPのnamespaceは接頭辞が省略できるだけでシンボルテーブルまでは分離されないから
名前空間というのは名前だけで、メリットが少ないのは否めないね。
0975nobodyさん
2010/12/12(日) 01:59:48ID:???言語としてネームスペースの推奨規約が存在する(ActionScript3とか)は、
ディレクトリやファイル名を含めて綺麗に纏まるから、
擬似的に実装するより遙かに便利だとは思う。
PHP5.3のネームスペースは肝心の規約が抜けているので、
「単にアンダースコア区切りだったものをバックスラッシュに変えました。」
程度の効力しかない。
0976nobodyさん
2010/12/12(日) 02:02:49ID:???あんたの言う規約は自分の都合の良い保守的な規約じゃん
新しいものを追えない技量なら素直にそう言え
技量がないとは失敗してもバックできないのも含む
そのレベルならゴチャゴチャ言わずに後から俺等の背中追ってこいよ
0977nobodyさん
2010/12/12(日) 02:11:11ID:???言語仕様以上の規約は無いかもね。
しかしPHPはその言語仕様の規約がお粗末だって話だろ。
「とりあえずnamespace構文作ったから使ってね。クラス名とかディレクトリとかファイル構成は・・・適当でいいよw」
って状況。
新しい物が本当に良い物かどうか判断も出来ない、盲目的な君の背中は遠すぎて追えないわ。
精々未来に生きて失敗事例を沢山こしらえておくれ。
0979nobodyさん
2010/12/12(日) 02:14:02ID:???こうやってドンドン取り残されていくんだろうなぁ
俺も気をつけよ
0980nobodyさん
2010/12/12(日) 02:26:22ID:???ゆとりって怖いな
0981nobodyさん
2010/12/12(日) 02:29:02ID:???0982nobodyさん
2010/12/12(日) 02:30:12ID:???未だに対応出来てないとか遅れてるにも程があるだろjk
0983nobodyさん
2010/12/12(日) 02:31:53ID:???こういう事だよ。
結局、名前空間だけ実装されても、使う側の命名規約が統一されないと意味が無いって事だ。
馬鹿の一つ覚えのように、PHP5.3からはnamespaceとか言うのは辞めような。
0984nobodyさん
2010/12/12(日) 02:32:20ID:???0985nobodyさん
2010/12/12(日) 02:34:07ID:???愚者:僕がPHP5.3系に移行するまで待ってよぉ〜
識者:急ぐ必要はないし後から来れば?
愚者:ふざけんあはwせd
0986nobodyさん
2010/12/12(日) 02:36:25ID:???頭のいい人ばかりでは無いって事さ。
世の中言い訳ばかりして手を動かさない奴はどこにでもいるだろう?
そゆことなのさ。
0987nobodyさん
2010/12/12(日) 02:36:54ID:???ネームスペースは推奨でも非推奨でも無いよ。
ネームスペースを使う事で5.2以下との互換性が無くなるとしか名言されていない。
http://www.php.net/manual/ja/language.namespaces.faq.php#language.namespaces.faq.shouldicare
なんかプログラマ視点とSE視点が混ざって不毛な論議になってる気がするね。
プログラマは常に最新と向き合い吸収していく。
SEはその時々に最適な(枯れた)技術を採用する。
0988nobodyさん
2010/12/12(日) 02:42:44ID:???最新という競争力のあるワードを使えないSEは今の世の中生き残れないわな
0989nobodyさん
2010/12/12(日) 02:44:55ID:???そう言う輩に最新を追えというのは無理じゃなかろうか…
0990nobodyさん
2010/12/12(日) 03:16:06ID:???枯れきってバグや脆弱性がほぼ埋まったPHP5.2のコードが稼働している。
それらのPHP5.3への移行リスクやマネージメントを考えた事があるか?
「最新という競争力のあるワード」ねーよw
少なくともPHP5.2とPHP5.3に競争力は無い。
それでも5.3への対応は必要だと考えているよ。
でもnamespace化する事と5.3化する事は別レイヤーの話だ。
今までの規約で5.3へ移行する事も出来るし、過去の資産はそれでいいと思っている。
0991nobodyさん
2010/12/12(日) 03:19:18ID:???追っかけるとか
そういう言い回しはなんか違うと思うけどなあ
0992nobodyさん
2010/12/12(日) 03:24:51ID:???http://www.php.net/manual/ja/language.namespaces.rationale.php
Prefix付の長いクラス名を何とかする為のアプローチに見えるな。
実際には、使用時に絶対パスで記述しないとクラス名の衝突が起こる可能性があるので、
何も解決出来ていない(結局絶対パスで記述する必要がある)
情弱は使えばいいよ。
0993nobodyさん
2010/12/12(日) 03:46:35ID:???こんなんだからPHP使いはレベルが低いとか言われるんだよ…
0994nobodyさん
2010/12/12(日) 03:49:53ID:???パス=クラス名への絶対修飾子って意味ね。
Zend_Hoge_Moge と書くのも \Zned\Hoge\Moge と書くのも同じだし、
このように絶対パスで書かないとクラス衝突は防げない。
となると本来目標にかかげていた、冗長なクラス名の廃止はどうなったのかと・・・
明らかに設計ミスだろ。
0995nobodyさん
2010/12/12(日) 03:52:41ID:???その目的の為の名前空間でありそれは達成されてるわけだが?
5.2を切り捨てて対応してるフレームワークなりなんなりみてみろよ
綺麗に切り分けられクラス名は短くなってる
0997nobodyさん
2010/12/12(日) 04:00:46ID:???されてねーよ。
定義側は省略形で書けるかもしれんが、
実際に使用する側はフルパスで書かないといかんだろ。
打開策として use で別名エイリアスが付けられるが、
エイリアスが他クラスと被る可能性があるという本末転倒っぷり。
それならエイリアスなんか作らず
$className = 'Hoge\Moge\Class';
$class = new $className;
と書く方が利口。
どちらにせよ、当初の目的は果たせていない。
0998nobodyさん
2010/12/12(日) 04:01:27ID:???Javaで言えばジェネリック拒否
C#で言えばラムダやLINQ拒否
オブジェクト指向拒否に関数型言語拒否と世の中前を向かない人間なんてザラにいる
一々そう言う奴等を説き伏せてたら時間がいくらあっても足りないでしょ
0999nobodyさん
2010/12/12(日) 04:04:45ID:???1000nobodyさん
2010/12/12(日) 04:06:37ID:???頼むから他の言語の名前空間を使用してから言ってくれ…
エイリアスが他クラスとかぶる可能性とか何を言ってるんだと言わざるを得ない
jsですらjqueryやらprototypeやら他のライブラリつかって名前空間を表現しようって風潮なのにどんだけ取り残されてるんだよ
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。