【发布时间】:2012-10-10 09:17:00
【问题描述】:
我需要创建一个播放列表,我想通过使用两个类来分离代码/逻辑和 GUI:
-
Playlist(代码/逻辑) -
PlaylistGui(图形用户界面)
应该可以单独使用 Playlist 类,例如在某种命令行环境中。现在的问题是,当使用 GUI 时,如何将两个类组合在一起?到目前为止我的想法:
- 从
Playlist类公开一个可观察列表,在PlaylistGui类上创建一个方法setItemSource(Playlist source) - 不确定在 Java 中是否可行,只需从 .NET 中了解:让
Playlist类触发事件并让PlaylistGui捕获它们,应该导致解耦代码吗? :-)
欢迎新想法 :-) 注意我使用的是 Java 7 和 JavaFX,虽然我猜 JavaFX 不会限制可能性,只是扩展它们。
【问题讨论】:
-
代码/逻辑部分应该是一个 API,这样如果您用文本界面替换 GUI,源代码中的任何内容(可能除了配置)都不会发生变化。