バージョン選択

フォーラム

メニュー

オンライン状況

36 人のユーザが現在オンラインです。 (24 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 36
もっと...

サイト内検索

機能要望 > その他 > SC_DbConn を削除しました

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
seasoft
投稿日時: 2010/8/12 13:54
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7333
Re: SC_DbConn を削除しました
引用:

おっしゃる通りなのですが, SC_Utils がデカ過ぎて, 9月末までというスケジュールを考えると難しいのではないかというのが正直な印象です.

SC_Query や, SC_DB_DBFactory の中で, SC_Utils の使用は比較的限定されているので, まずは SC_Utils を切り離した方が, 本来すべき DB まわりの抽象化に工数が割けると考えた次第です.


「SC_Utils の使用は比較的限定されている」という前提でしたら、「SC_Query や SC_DB_DBFactory の中から使用する SC_Utils のメソッドは、他の EC-CUBE クラスに依存させない」といった方針はいかがでしょうか?


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

nanasess
投稿日時: 2010/8/12 15:46
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2157
Re: SC_DbConn を削除しました
引用:

seasoftさんは書きました:

「SC_Utils の使用は比較的限定されている」という前提でしたら、「SC_Query や SC_DB_DBFactory の中から使用する SC_Utils のメソッドは、他の EC-CUBE クラスに依存させない」といった方針はいかがでしょうか?


賛成です.
ゆくゆくは, SC_Utils は他のクラスに依存せず, できるだけ単独で動作することを目標にしましょう!
nanasess
投稿日時: 2010/8/12 20:07
対応状況: −−−
登録日: 2006/9/9
居住地: 大阪
投稿: 2157
Re: SC_DbConn を削除しました
引用:

nanasessさんは書きました:
以下の方針で, 追加の修正をしようと思います.

* SC_Query のコンストラクタの第2引数を true にすることで, DBエラーが発生しても処理を続行するように修正
* SC_DB_DBFactory_Ex::getInstance(); の引数で, SC_Query のインスタンスを渡す. これにより, SC_DB_DBFactory 内部での SC_Query の循環参照を防止する
* SC_DB_DBFactory では, SC_Utils を使用しないよう修正. SC_Query は, 他の EC-CUBE クラスに依存せず, 単独で動作するように.


1番目の対応も含め, SC_Query を singleton にして, 異常な循環参照を防ぐよう対応してみました.

http://svn.ec-cube.net/open_trac/changeset/18784

SC_DB_DBFactory_Ex::getInstance(); で SC_Query のインスタンスを渡すアイディアは, Ex のインスタンスで SC_Query のインスタンスを参照できないため断念しました.
その代わり, SC_Query::getSingletonInstance() で, SC_Query のインスタンスを Singleton で取得できるようにし, 無駄に SC_Query のインスタンスを生成しないようにしてみました.

その他, PHPDoc コメントを書いたり, setXXX 関数で Chain of Responsibility パターンをサポートしてみたりしましたので, 興味のある方は是非試してみてください!
« 1 (2)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

公式ストアEC-CUBE4系デザインテンプレート続々リリース中

統計情報

総メンバー数は72,331名です
総投稿数は101,703件です

投稿数ランキング

1
seasoft
7333
2
468
3037
3
AMUAMU
2712
4
nanasess
2157
5
umebius
2011
6
yuh
1612
7
red
1452
8
h_tanaka
1088
9
tsuji
936
10
fukap
907
11
shutta
835
12
tao_s
793
13 ramrun 789
14 karin 689
15 sumida 641
16
homan
633
17 DELIGHT 572
18
patapata
502
19
flealog
485
20 tonton 437


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.