图11.1 包可见性的初始图景
图11.2 隐藏“场景元素”的“场景”包接口
这是给“投资组合”包的最佳接口,“投资组合”包不需要知道“场景元素”。
图11.3 给图11.1添加应用包
问题在于“场景管理应用”需要的”场景”包接口比”投资组合”包所需要的大得多。
图11.4 带有协议的图11.3中的包
每个协议意味着一个分离的接口。
图11.5为”场景结构” 使用额外的包
图11.1 包可见性的初始图景
图11.2 隐藏“场景元素”的“场景”包接口
这是给“投资组合”包的最佳接口,“投资组合”包不需要知道“场景元素”。
图11.3 给图11.1添加应用包
问题在于“场景管理应用”需要的”场景”包接口比”投资组合”包所需要的大得多。
图11.4 带有协议的图11.3中的包
每个协议意味着一个分离的接口。
图11.5为”场景结构” 使用额外的包