【PHP】PHPフレームワーク総合スレ15
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2010/12/12(日) 10:47:08ID:???●国外産●
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】PHPフレームワーク総合スレ14
http://hibari.2ch.net/test/read.cgi/php/1253912143/
0002nobodyさん
2010/12/12(日) 10:47:46ID:???14http://hibari.2ch.net/test/read.cgi/php/1253912143/
13http://hibari.2ch.net/test/read.cgi/php/1237825268/
12http://hibari.2ch.net/test/read.cgi/php/1229960175/
11http://hibari.2ch.net/test/read.cgi/php/1219581817/
10http://hibari.2ch.net/test/read.cgi/php/1202521438/
. 9http://hibari.2ch.net/test/read.cgi/php/1197383840/
. 8http://hibari.2ch.net/test/read.cgi/php/1192604501/
. 7http://hibari.2ch.net/test/read.cgi/php/1181350116/
. 6http://hibari.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/
0003nobodyさん
2010/12/12(日) 11:19:10ID:???既に実装されてしまった内容なんだから、使う使わないは案件なりで決めれ
不満があるなら開発途上の段階で割り込んでおけよと
仕様みてみたが、バックスラッシュは格好悪いけど、実装自体は普通のnamespaceじゃん
バックスラッシュは格好悪いけど、常に完全修飾名を要求されるとか、使い方知らないだけじゃ
再利用を考えたら、結局namespaceは必要だしな。バックスラッシュは格好悪いけど
ほんとバックスラッシュは格好悪いけどな
わざわざコード書く環境だけ正しいフォントに直すのも面倒だし
0004nobodyさん
2010/12/12(日) 11:57:31ID:???992 nobodyさん [sage] 2010/12/12(日) 03:24:51 ID:???
PHPの名前空間は、
http://www.php.net/manual/ja/language.namespaces.rationale.php
Prefix付の長いクラス名を何とかする為のアプローチに見えるな。
実際には、使用時に絶対パスで記述しないとクラス名の衝突が起こる可能性があるので、
何も解決出来ていない(結局絶対パスで記述する必要がある)
情弱は使えばいいよ。
993 nobodyさん[sage] 2010/12/12(日) 03:46:35 ID:???
なんでこいつは名前空間とパスを同一視してるの?
こんなんだからPHP使いはレベルが低いとか言われるんだよ…
994 nobodyさん [sage] 2010/12/12(日) 03:49:53 ID:???
>>993
パス=クラス名への絶対修飾子って意味ね。
Zend_Hoge_Moge と書くのも \Zned\Hoge\Moge と書くのも同じだし、
このように絶対パスで書かないとクラス衝突は防げない。
となると本来目標にかかげていた、冗長なクラス名の廃止はどうなったのかと・・・
明らかに設計ミスだろ。
0005nobodyさん
2010/12/12(日) 11:57:47ID:????
その目的の為の名前空間でありそれは達成されてるわけだが?
5.2を切り捨てて対応してるフレームワークなりなんなりみてみろよ
綺麗に切り分けられクラス名は短くなってる
997 nobodyさん [sage] 2010/12/12(日) 04:00:46 ID:???
>>995
されてねーよ。
定義側は省略形で書けるかもしれんが、
実際に使用する側はフルパスで書かないといかんだろ。
打開策として use で別名エイリアスが付けられるが、
エイリアスが他クラスと被る可能性があるという本末転倒っぷり。
それならエイリアスなんか作らず
$className = 'Hoge\Moge\Class';
$class = new $className;
と書く方が利口。
どちらにせよ、当初の目的は果たせていない。
0006nobodyさん
2010/12/12(日) 12:11:41ID:???namespace + 新しい規約で
なんとかしろや。
0007nobodyさん
2010/12/12(日) 21:55:13ID:???ぶっちゃけ今更感が半端無い
3年前の話題だろ…
0008nobodyさん
2010/12/13(月) 04:12:37ID:???symfony2.0
0009nobodyさん
2010/12/13(月) 19:03:50ID:???ただsymfony2もだけど、PEAR命名規約のアンダースコアをバックスラッシュに変えただけ感はある。
前スレ>>1000
他の言語と比較した上での発言だ。
>エイリアスが他クラスとかぶる可能性とか何を言ってるんだと言わざるを得ない
namespace project;
use lib\ClassName as ClassName;
という記述があった場合に ClassName が project\ClassName と衝突する可能性があるから、
基本的には絶対パスでの記述になる。
コンパイル時に走査してくるような言語とは使い勝手が全く違う。
>jsですらjqueryやらprototypeやら他のライブラリつかって名前空間を表現しようって風潮なのにどんだけ取り残されてるんだよ
それらは疑似名前空間で、実装ではなく規約の話だ。
PHPのアンダースコア区切りのクラス名と同類だよ。
namespaceの実装が望まれたECMA4が廃案になったのは知ってるかい?w
0010nobodyさん
2010/12/13(月) 19:11:09ID:???フレームワーク関係ないね、すまそ
0011nobodyさん
2010/12/13(月) 19:37:03ID:???>>10
:: はクラス内のスタティックメソッドやプロパティやクラス内定数の参照の時に既に使ってるし、そっちとかぶるからじゃない?
0012nobodyさん
2010/12/13(月) 19:57:00ID:???全部ピリオドにすればよかったのに
0013nobodyさん
2010/12/13(月) 22:06:38ID:???0014nobodyさん
2010/12/13(月) 23:31:53ID:???0015nobodyさん
2010/12/13(月) 23:54:10ID:???オライリーですら擁護しきれずに綺麗な部分だけ使おうっていう本を出してるぐらいにねw
0017nobodyさん
2010/12/14(火) 01:58:34ID:???0018nobodyさん
2010/12/14(火) 03:45:08ID:???namespaceが中途半端な機能で、
区切り文字がバックスラッシュになったのも、
fainallyが実装されないのも、
ZendEngine2への実装が困難だからだよ。
0019nobodyさん
2010/12/14(火) 07:54:18ID:???0020nobodyさん
2010/12/14(火) 16:44:36ID:???そろそろリリースかな
0022nobodyさん
2010/12/15(水) 01:19:20ID:???0024nobodyさん
2010/12/15(水) 02:14:25ID:???0026nobodyさん
2010/12/15(水) 06:24:51ID:mlC32vduhttp://bugs.php.net/bug.php?id=32100
0027nobodyさん
2010/12/15(水) 06:35:05ID:mlC32vduWhy doesn't C++ provide a "finally" construct?
http://www2.research.att.com/~bs/bs_faq2.html#finally
0028nobodyさん
2010/12/15(水) 08:08:22ID:???0029nobodyさん
2010/12/15(水) 08:15:57ID:???中々面白いギャグだ
マジだったらプログラムを一からやり直して欲しいレベル
0031nobodyさん
2010/12/15(水) 20:09:51ID:???0032nobodyさん
2010/12/15(水) 21:17:34ID:???0034nobodyさん
2010/12/15(水) 22:28:49ID:???0035nobodyさん
2010/12/15(水) 22:29:38ID:???0036nobodyさん
2010/12/15(水) 22:39:21ID:???http://bugs.php.net/bug.php?id=32100
return文との兼ね合いで、構文が複雑になるから実装しなかったって事?
それとも技術的な問題?
0037nobodyさん
2010/12/15(水) 22:40:05ID:???0039nobodyさん
2010/12/16(木) 00:33:53ID:???0040nobodyさん
2010/12/16(木) 01:20:05ID:???27はリソースの開放は利用側じゃなくて利用されるデストラクタで実装すべきという主張。C だが
0041nobodyさん
2010/12/16(木) 01:54:17ID:???「finallyも,もしよい実装があれば追加されるかも知れません。」
PHP構文的に排除したのでは無く、実装が困難だから実装されていないだけだ
>>26-27
お前英語読めないだろ?
せめてメーリングリストのログ持って来いよ
■ このスレッドは過去ログ倉庫に格納されています