【发布时间】:2019-07-10 09:09:45
【问题描述】:
我被一个问题困扰了很久。
我正在制作一个简单的教育 Java 软件,但我没有找到任何用于在页面之间切换的导航系统示例。 我的意思是我正在制作一个“核心”,公开一个 API 和不同的用户界面,包括命令行界面(cli)、图形用户界面(gui)、web 界面,可能还有一个 android 应用程序。 我的问题是关于 CLI,但可能也应该应用于 GUI:你将如何从一个页面切换到另一个页面?
我试图将其作为实现接口的枚举,包括实例化视图的函数。这样,视图返回要显示的视图的特定枚举。然后执行枚举以创建视图。但它确实看起来效率低下且复杂,即使它是可扩展的。
这是我的目标的简单表示。
Launcher
-> System.out.println("welcome");
-> go to Authenticate
Authenticate
-> System.out.println("1: sign in, 2: login")
-> if(input == 1) go to SignIn
-> else go to LogIn
SignIn
-> System.out.println("enter username and password")
-> username = input
-> password = input
-> new User(username, password)
-> go to Authenticate
LogIn
-> print("enter username")
-> go to Etc...
如果视图被另一个视图调用,是否应该集中导航以避免内存丢失? “菜单”不应该集中所有视图调用以使代码可读吗?
可能是一个愚蠢的问题,但我还没有找到答案,我真的很想要一个......
【问题讨论】:
标签: java user-interface architecture navigation command-line-interface