在我的控制器类我只是想只用一个电子表格类来处理所有相关电子表格创建功能,保存,加载,写等当不同的库创建电子表格时,使用哪种设计模式?
目前我使用一个开源库phpspreadsheet
创建电子表格,如果后来我想将其更改为另一个电子表格创建库,我不想在控制器类上进行太多改动,相反,我可以为此库创建另一个类,如Spreadsheetlib2。那么哪种设计模式更适合在这里使用? “桥”还是适配器?
//桥梁模式我现在正在尝试。
interface SpreadsheetInterface {
public function create();
public function write();
}
class Spreadsheet extends AbstractSpreadsheet {
public function create() {
}
}
class PhpSpreadsheet implements SpreadsheetInterface {
public function create() {
}
}
abstract class AbstractSpreadsheet {
protected $spreadsheet;
protected function __construct(SpreadsheetInterface $spreadsheet) {
$this->spreadsheet = $spreadsheet;
}
}