在Java中,使用GUI构建器或手工编码制作GUI(Swings)是一个好习惯吗?

时间:2010-12-05 14:17:50

标签: java user-interface swing

  

可能重复:
  Java, GUI builder or hand coding?

我一直在为几个app手工编写GUI.But我的一些朋友正在使用像netbeans IDE这样的GUI构建器。我最近也尝试了它,但是为简单的GUI生成了大量的代码(大约2个面板,3个文本,2个按钮)本身就是500个线路(只有80线可以接受一些可接受的对齐)。我的观点是,它会使程序变慢吗?它会使代码可维护性变得困难吗?

4 个答案:

答案 0 :(得分:2)

准备很多意见!

我认为这完全取决于要求和目标。如果您的目的是学习Swing,那么我认为您应该避免使用GUI构建器,因为它们会隐藏重要的细节,只要您需要的GUI不仅仅是基础知识,那么您就是小溪。

另一方面,如果您的目标是快速原型设计并且您熟悉Swing,那么请务必使用GUI构建器。

在这两个极端之间,答案各不相同,实际上没有硬性和快速的是或否。只要未在构建器本身之外修改构建器的代码并且其文件未损坏,就可以维护代码。

答案 1 :(得分:2)

  

我的观点是,它会让程序变慢吗?

可能不是,虽然这取决于这500条线的作用。我希望他们主要关注页面布局/外观,并且只有在准备要显示的窗口时才会执行它们。

这500行还可能使最终用户更容易追踪GUI和/或使GUI更好地处理窗口大小调整等...而不是80行版本。

  

它是否会使代码可维护性变得困难?

这取决于。如果使用相同的IDE / GUI生成器来维护代码,就像你在第一时间创建它一样,那么你应该没问题。

答案 2 :(得分:2)

我曾经在学生时生成GUI代码。它很快,我没有理解代码。我没有调试和/或修改代码。它非常适合小型课程项目。

从那时起,我从未使用GUI工具来构建GUI。我们在我工作的公司手工编写了多年的GUI代码,现在我知道这是要走的路。您的代码在您的控制之下。你总是可以让某人负责代码(“不是我这是GUI生成器做了这个糟糕的代码”)。您可以调试代码,您可以更好地处理其可重用性和可伸缩性。您可以完全根据客户需求调整GUI及其功能。

一开始成本可能会更高,但我相信他们会在稍后付款。无论如何,选择取决于您或您的主管已经做出的选择。那就是生活。

答案 3 :(得分:1)

出于开发目的(我的意思是商业开发而非学术项目),现在可用的工具非常成熟,并且生成可由人类维护和阅读的代码。它非常适合生产代码。

几年前,我会建议您手动编写代码,但这是很久以前的事了,从那以后工具已经走了很长一段路。我使用netbeans来构建我的GUI和一个可靠的IDE。

手写代码有时比生成的代码更有意义(就像你指出的那样),但生产力的损失通常是不值得的。

出于学习目的,我建议您手动完成项目以获得经验。