我作为自由职业者工作了很长时间,几乎 90% 的项目都是关于 Java Swing(桌面应用程序)的。还有很多项目涉及从Visual Fox Pro等语言迁移到Java,这很痛苦,因为困难的部分不是在已经完成的逻辑中思考,困难的部分是把乱七八糟的代码转过来遵循良好实践并使用设计模式,将代码转换为好看的代码,这就是为什么在您的脑海中制作一个模式或地图是一个好主意,您可以按照模型、视图、控制器的概念来分离您的代码。
如前所述,MVC 可帮助您拥有美观、可维护且易于阅读的代码,并遵循编程范式和良好实践。
视图:显然,与用户交互的部分(用户界面),在 Swing 的情况下,你的窗口、框架、面板和所有涉及你的应用程序所需的图形组件的代码。
控制器:涉及您为应用程序建立的核心或业务逻辑,在这个“层”中,您应该包括功能和“我的应用程序将如何实现目标?”。
模型:与您管理的数据相关,例如,代表您要管理或维护的数据的实体和类。
应用 MVC 并不难,但正如我所提到的,当您必须将代码从非应用 MVC 结构迁移到 MVC 结构化应用程序时,有时可能会很痛苦。使用 MVC 开始编码更容易。
我习惯它的一种方法是使用 maven 并将我的应用程序分成小“模块”,当然,你不需要 maven,我只是在那一刻发现它很有用,但无论如何你可以尝试练习或获得通过将应用程序分成小项目来习惯于 MVC,例如:
Java项目1:application-data-model(包含所有与数据管理相关的代码:entities、dtos、beans、daos)
Java 项目 2:application-core-controller(包含所有业务逻辑和功能,如果您想让代码在与视图相关时更加“透明”,可以在此处使用外观模式)
Java 项目 3:application-view-ui(包含所有面板、框架和图形组件)
以这种方式工作帮助我(并迫使我)习惯于分离我的代码并密切关注对我正在从事的项目真正重要的事情。例如,如果我在应用程序数据模型上,我专注于数据模型,我不会考虑业务逻辑或图形界面。
冗长的解释,也许有人可以做得更好,但希望我能帮助你,或者至少帮助你。
此致。