在數據庫抽象層的OOP設計中,是否適合爲使用它的原始DB對象創建包裝對象?爲了提供所有的用戶,在其內部傳遞並創建一個活動連接,以便諸如CRUD的其他對象可以繼承它並且已經有一個開放的連接?PHP OOP設計:DB積極連接
< - 編輯 - >
一些背景:我想在這裏建立什麼是DB-邏輯和業務邏輯 所以我想創建一個表CRUD對象之間的良好分離被其他業務邏輯對象 繼承,但是當我想到如何連接到數據庫將在這些對象之間傳輸 時出現問題。它沒有感覺很不錯,只是把它作爲參數,如
class TableCrud(AbstractDb $db) {...}
class BusinessObject(TableCrud $tc) { ... }
也是另一種方法,這並不覺得有一個包含數據庫用戶憑據的對象,這樣的權利,在它打開一個連接,讓TableCrud繼承它。
我敢肯定,我錯過了這裏的對象機制之間的一些。
這比「是/否,它是/不適當」要複雜一些。完全取決於你的目的。你所描述的需要一個父級靜態或者可能的單身類來保存所有派生對象或子類的活動連接。你會有多少個不同的連接?網站或應用有多大(以腳本文件而言)?您是否希望腳本可以移植到其他網站/應用程序?您是否預見稍後切換DB擴展? –