ウェブプログラミングで使えるデザインパターン (170レス)
ウェブプログラミングで使えるデザインパターン http://medaka.5ch.io/test/read.cgi/php/1069451782/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
110: nobodyさん [sage] 04/01/07 18:00 ID:??? >>109 PEAR パッケージでよく使われてますが、 PHP4 でも普通に書けますよ。 class Hoge { function &singleton() { static $instance; if (!isset($instance)) { $instance = new Hoge; // $instance = HogeHoge::factory; } return $instance; } $instance = &Hoge::singleton(); http://medaka.5ch.io/test/read.cgi/php/1069451782/110
111: 107 [sage] 04/01/08 05:49 ID:??? >>110 >>109 の言う「小汚い」部類じゃないかね、そのコードは。 クラス内唯一のインスタンスなんだから、論理的に言えばクラスが static 変数として持つべきだろう。 > PHP5 だと static あるから Singleton は書けるようになるが と言っている時点で >>109 の言いたい事は自明だと思うんだが…。あんた大丈夫か? PEAR のコードや Do You PHP にあるデザインパターンのサンプルでも良く見掛けるが、 PHP4 自体の機能が足りずに他の言語ではしなくていいような事をしている点がいくつもある。 少くとも俺は PHP はオススメしない。 http://medaka.5ch.io/test/read.cgi/php/1069451782/111
115: nobodyさん [sage] 04/01/08 08:32 ID:??? >>110 クラス・メソッドを使わずnewすると普通に別のインスタンス作成出来るよね? http://medaka.5ch.io/test/read.cgi/php/1069451782/115
116: 110 [sage] 04/01/08 09:17 ID:??? >>115 できますよ。 言語特性や制限はありますが PHP や Perl では Private メソッドも含めてそういう ものは書く側が慣習的に守るというだけのことです。 111 さんがいうようなことも 当然ありますけど、だからといってその言語の利点があるわけですから使い分けるの が良いというだけの話でしょう。 http://medaka.5ch.io/test/read.cgi/php/1069451782/116
123: 110 [sage] 04/01/09 11:34 ID:??? >>122 私の知る限りでは Apache::DBI はコネクションプールをしているわけではな くて PHP の持続的接続と同等の機能を提供するはずです。 つまり DSN 毎にコネクションを維持するだけ (さらにプロセス毎に) だと理 解していますが。 さらにコネクションプールは SQL Relay 等で実現できますよ。 http://medaka.5ch.io/test/read.cgi/php/1069451782/123
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.313s*