バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

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

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
seasoft
投稿日時: 2010/8/12 13:54
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
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
居住地:
投稿: 2313
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
居住地:
投稿: 2313
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公式 Amazon Payプラグイン

統計情報

総メンバー数は88,809名です
総投稿数は109,973件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1644
8
red
1570
9
mcontact
1289
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

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

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