Documentation
¶
Index ¶
- func NewCities(name string) *cities
- func NewEpidemicProtectionDecorator(station Station) *epidemicProtectionDecorator
- func NewHealthyPancakeBuilder() *healthyPancakeBuilder
- func NewNormalPancakeBuilder() *normalPancakeBuilder
- func NewSecurityCheckDecorator(station Station) *securityCheckDecorator
- func NewSubwayStation(name string) *subwayStation
- func NewTown(name string, population int, gdp float64) *town
- type Button
- type Circle
- type Config
- type CreditCard
- type CreditCardAdapter
- type DatabaseLogger
- type DatabaseLoggerFactory
- type Directory
- type File
- type FileLogger
- type FileLoggerFactory
- type FileSystemElement
- type GUIFactory
- type HTMLReportBuilder
- type Logger
- type LoggerFactory
- type MacOSButton
- type MacOSFactory
- type MacOSMouse
- type Map
- type MapData
- type MapPrototype
- type Mouse
- type OpenGLRenderer
- type PDFReportBuilder
- type Pancake
- type PancakeBuilder
- type PancakeCook
- type PayPal
- type PayPalAdapter
- type Payment
- type Quantity
- type Rectangle
- type Region
- type Renderer
- type Report
- type ReportBuilder
- type Shape
- type Station
- type VulkanRenderer
- type WindowsButton
- type WindowsFactory
- type WindowsMouse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewEpidemicProtectionDecorator ¶
func NewEpidemicProtectionDecorator(station Station) *epidemicProtectionDecorator
func NewHealthyPancakeBuilder ¶
func NewHealthyPancakeBuilder() *healthyPancakeBuilder
func NewNormalPancakeBuilder ¶
func NewNormalPancakeBuilder() *normalPancakeBuilder
func NewSecurityCheckDecorator ¶
func NewSecurityCheckDecorator(station Station) *securityCheckDecorator
func NewSubwayStation ¶
func NewSubwayStation(name string) *subwayStation
NewSubwayStation 创建指定站名地铁站
Types ¶
type Config ¶
func GetConfigInstance ¶
func GetConfigInstance() *Config
type CreditCard ¶
type CreditCard struct{}
被适配的类:具有不同接口的支付方式
func (*CreditCard) Charge ¶
func (c *CreditCard) Charge(amount float64) string
type CreditCardAdapter ¶
type CreditCardAdapter struct {
CreditCard *CreditCard
}
适配器:将不同的支付方式适配为统一的 Payment 接口
func (*CreditCardAdapter) ProcessPayment ¶
func (a *CreditCardAdapter) ProcessPayment(amount float64) string
type DatabaseLogger ¶
type DatabaseLogger struct{}
func (*DatabaseLogger) Log ¶
func (l *DatabaseLogger) Log(message string)
type DatabaseLoggerFactory ¶
type DatabaseLoggerFactory struct{}
func (*DatabaseLoggerFactory) CreateLogger ¶
func (f *DatabaseLoggerFactory) CreateLogger() Logger
type Directory ¶
type Directory struct {
// contains filtered or unexported fields
}
复合节点:文件夹
func (*Directory) Add ¶
func (d *Directory) Add(element FileSystemElement)
type FileLogger ¶
type FileLogger struct{}
func (*FileLogger) Log ¶
func (l *FileLogger) Log(message string)
type FileLoggerFactory ¶
type FileLoggerFactory struct{}
func (*FileLoggerFactory) CreateLogger ¶
func (f *FileLoggerFactory) CreateLogger() Logger
type FileSystemElement ¶
组件接口:表示文件系统中的元素
type GUIFactory ¶
type HTMLReportBuilder ¶
type HTMLReportBuilder struct {
// contains filtered or unexported fields
}
func (*HTMLReportBuilder) Build ¶
func (b *HTMLReportBuilder) Build() Report
func (*HTMLReportBuilder) SetBody ¶
func (b *HTMLReportBuilder) SetBody(body string) ReportBuilder
func (*HTMLReportBuilder) SetFooter ¶
func (b *HTMLReportBuilder) SetFooter(footer string) ReportBuilder
func (*HTMLReportBuilder) SetTitle ¶
func (b *HTMLReportBuilder) SetTitle(title string) ReportBuilder
type LoggerFactory ¶
type LoggerFactory interface {
CreateLogger() Logger
}
type MacOSButton ¶
type MacOSButton struct{}
func (*MacOSButton) Render ¶
func (b *MacOSButton) Render()
type MacOSFactory ¶
type MacOSFactory struct{}
func (*MacOSFactory) CreateButton ¶
func (f *MacOSFactory) CreateButton() Button
func (*MacOSFactory) CreateMouse ¶
func (f *MacOSFactory) CreateMouse() Mouse
type MapData ¶
func NewMapData ¶
func NewMapData() *MapData
type MapPrototype ¶
type MapPrototype interface {
Clone() MapPrototype
}
type OpenGLRenderer ¶
type OpenGLRenderer struct{}
具体实现:不同的渲染引擎
func (*OpenGLRenderer) RenderShape ¶
func (r *OpenGLRenderer) RenderShape(shape string)
type PDFReportBuilder ¶
type PDFReportBuilder struct {
// contains filtered or unexported fields
}
func (*PDFReportBuilder) Build ¶
func (b *PDFReportBuilder) Build() Report
func (*PDFReportBuilder) SetBody ¶
func (b *PDFReportBuilder) SetBody(body string) ReportBuilder
func (*PDFReportBuilder) SetFooter ¶
func (b *PDFReportBuilder) SetFooter(footer string) ReportBuilder
func (*PDFReportBuilder) SetTitle ¶
func (b *PDFReportBuilder) SetTitle(title string) ReportBuilder
type PancakeBuilder ¶
type PancakeCook ¶
type PancakeCook struct {
// contains filtered or unexported fields
}
PancakeCook 摊煎饼师傅
func NewPancakeCook ¶
func NewPancakeCook(builder PancakeBuilder) *PancakeCook
func (*PancakeCook) MakeBigPancake ¶
func (p *PancakeCook) MakeBigPancake() *Pancake
MakeBigPancake 摊一个巨无霸煎饼
func (*PancakeCook) MakePancakeForFlavour ¶
func (p *PancakeCook) MakePancakeForFlavour(hasCoriander, hasShallot, hasSauce bool) *Pancake
MakePancakeForFlavour 摊一个自选调料霸煎饼
func (*PancakeCook) SetPancakeBuilder ¶
func (p *PancakeCook) SetPancakeBuilder(builder PancakeBuilder)
SetPancakeBuilder 重新设置煎饼构造器
type PayPalAdapter ¶
type PayPalAdapter struct {
PayPal *PayPal
}
func (*PayPalAdapter) ProcessPayment ¶
func (a *PayPalAdapter) ProcessPayment(amount float64) string
type ReportBuilder ¶
type ReportBuilder interface {
SetTitle(title string) ReportBuilder
SetBody(body string) ReportBuilder
Build() Report
}
type VulkanRenderer ¶
type VulkanRenderer struct{}
func (*VulkanRenderer) RenderShape ¶
func (r *VulkanRenderer) RenderShape(shape string)
type WindowsButton ¶
type WindowsButton struct{}
具体产品
func (*WindowsButton) Render ¶
func (b *WindowsButton) Render()
type WindowsFactory ¶
type WindowsFactory struct{}
func (*WindowsFactory) CreateButton ¶
func (f *WindowsFactory) CreateButton() Button
func (*WindowsFactory) CreateMouse ¶
func (f *WindowsFactory) CreateMouse() Mouse
type WindowsMouse ¶
type WindowsMouse struct{}
func (*WindowsMouse) Click ¶
func (b *WindowsMouse) Click()
Click to show internal directories.
Click to hide internal directories.