난 그냥, 부하, 스프레드 시트 작성과 관련된 모든 기능을 처리 저장하는 하나의 스프레드 시트 클래스를 사용하려면, 쓰기 등 현재 내가 스프레드 시트를 생성하는 하나의 오픈 소스 라이브러리 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;
}
}