知识卡片
透明装饰界面
内容
滚动条、边框等界面修饰可以包裹在组件外层,同时保持相同接口。客户端只面对图元接口,不必区分原始组件和被修饰组件。发散:透明包装能让功能增长不压垮核心类。
参考来源
- 位置:第2章《实例研究:设计一个文档编辑器》2.4.1节「透明围栏」(源文件:_epub-src/OEBPS/Text/part0034.xhtml)
- 结论依据:原文明确提出'透明围栏'概念,说明Border作为Glyph的子类使其接口与图元接口匹配,客户通常分辨不出在处理组件还是组件的围栏,直接支持卡片对界面修饰可包裹在组件外层、客户端只面对图元接口不必区分原始组件和被修饰组件的论述。
- 原始内容:"我们根据这些得出了透明围栏(transparent enclosure)的概念。它结合了两个概念:①单子女(单组件)组合;②兼容的接口。客户通常分辨不出它们是在处理组件还是组件的围栏。"