解決的問(wèn)題
解決演示文稿導(dǎo)出各種格式的問(wèn)題。假設(shè)你有一個(gè)演示文稿(Presentation),演示文稿里包含多張幻燈片(Slide),需要實(shí)現(xiàn)將演示文稿導(dǎo)出為PDF、視頻等文件格式。這種情況可以使用Builder Pattern(建造者模式):

Builder Pattern UML.png
其中Presentation的export方法是這樣的:
public void export(DocumentBuilder builder) {
for (Slide slide: slides)
builder.addSlide(slide);
}
export方法實(shí)現(xiàn)了導(dǎo)出一個(gè)文件的過(guò)程,然后將導(dǎo)出文件的具體實(shí)現(xiàn)放在DocumentBuilder里,這樣就支持通過(guò)拓展不同的DocumentBuilder,導(dǎo)出不一樣的文件格式。