在Java中,使用GUI构建器或手工编码制作GUI(Swigs)是一种好的做法吗?

在Java中,使用GUI构建器或手工编码制作GUI(Swigs)是一种好的做法吗?,java,user-interface,swing,Java,User Interface,Swing,可能重复: 我一直在为几个应用程序手工编写GUI。但我的一些朋友正在使用诸如netbeans IDE之类的GUI构建器。我最近也尝试过,但为一个简单的GUI(2个面板、3个文本、2个按钮)生成的代码量本身就高达500行,只有80行具有一些可接受的对齐方式。我的观点是,它会使程序变慢吗?会使代码的可维护性变得困难吗 准备好接受许多意见 我认为这完全取决于要求和目标。如果您的目的是学习Swing,那么我认为您应该避免使用GUI构建器,因为它们会将重要的细节隐藏起来,而当您需要一个不仅仅是基本功能的

可能重复:


我一直在为几个应用程序手工编写GUI。但我的一些朋友正在使用诸如netbeans IDE之类的GUI构建器。我最近也尝试过,但为一个简单的GUI(2个面板、3个文本、2个按钮)生成的代码量本身就高达500行,只有80行具有一些可接受的对齐方式。我的观点是,它会使程序变慢吗?会使代码的可维护性变得困难吗

准备好接受许多意见

我认为这完全取决于要求和目标。如果您的目的是学习Swing,那么我认为您应该避免使用GUI构建器,因为它们会将重要的细节隐藏起来,而当您需要一个不仅仅是基本功能的GUI时,您就麻烦了

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


在这两个极端之间,答案各不相同,事实上没有硬性的“是”或“否”。只要建设者的代码没有在建设者之外修改,并且其文件没有损坏,代码就可以维护。

准备好接受许多意见

我认为这完全取决于要求和目标。如果您的目的是学习Swing,那么我认为您应该避免使用GUI构建器,因为它们会将重要的细节隐藏起来,而当您需要一个不仅仅是基本功能的GUI时,您就麻烦了

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


在这两个极端之间,答案是不同的,事实上没有硬性的是或否。只要建设者的代码没有在建设者自身之外修改,并且其文件没有损坏,代码就可以维护。

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

几年前,我会推荐您手工编写代码,但那是很久以前的事了,从那时起,这些工具已经有了长足的发展。我使用netbeans构建我的GUI,它是一个坚实的IDE

手工编写的代码有时比您指出的生成的代码更为一致,但生产率的损失通常是不值得的


尽管出于学习目的,我还是建议您手工完成项目以获得经验。

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

几年前,我会推荐您手工编写代码,但那是很久以前的事了,从那时起,这些工具已经有了长足的发展。我使用netbeans构建我的GUI,它是一个坚实的IDE

手工编写的代码有时比您指出的生成的代码更为一致,但生产率的损失通常是不值得的

尽管出于学习目的,我还是建议你手工完成你的项目以获得经验

我的意思是,这会使程序变慢吗

可能不会,不过这取决于这500行的功能。我希望他们主要关注页面布局/外观,并且只在准备显示窗口时执行

这500行可能还使GUI更易于最终用户定制和/或使GUI更好地处理窗口大小调整等。。。比你的80行版本

这会使代码的可维护性变得困难吗

视情况而定。如果使用相同的IDE/GUI生成器来维护代码,就像您最初创建代码一样,那么您应该可以

我的意思是,这会使程序变慢吗

可能不会,不过这取决于这500行的功能。我希望他们主要关注页面布局/外观,并且只在准备显示窗口时执行

这500行可能还使GUI更易于最终用户定制和/或使GUI更好地处理窗口大小调整等。。。比你的80行版本

这会使代码的可维护性变得困难吗


视情况而定。如果使用相同的IDE/GUI生成器来维护代码,就像当初创建代码一样,那么应该可以。

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

从那以后,我从未使用GUI工具来构建GUI。我们已经在我工作的公司手工编写GUI代码很多年了,现在我知道这是一条路要走。你的代码在你的控制之下。哟 你总是可以让某个人对代码负责,不是我,而是GUI生成器编写了这段糟糕的代码。您可以调试代码,更好地处理其可重用性和可伸缩性。您可以使GUI及其功能完全适应客户的需要


开始的时候成本可能会更高,但我相信以后会有回报。无论如何,选择权在你,或者你的主管已经做出了选择。这就是生活。

当我还是一名学生时,我曾经生成GUI代码。它很快,我不必理解代码。我不必调试和/或修改代码。它非常适合小的课程项目

从那以后,我从未使用GUI工具来构建GUI。我们已经在我工作的公司手工编写GUI代码很多年了,现在我知道这是一条路要走。你的代码在你的控制之下。你总是可以让某人对代码负责,不是我,而是GUI生成器编写了这段糟糕的代码。您可以调试代码,更好地处理其可重用性和可伸缩性。您可以使GUI及其功能完全适应客户的需要


开始的时候成本可能会更高,但我相信以后会有回报。无论如何,选择权在你,或者你的主管已经做出了选择。这就是生活。

在这篇文章中有很多精彩的评论。谢谢你的链接!在这个帖子里有很多很棒的评论。谢谢你的链接!同意一些不同意上面部分的观点,因为许多布局管理器更适合处理窗口大小调整,但是如果配置文件损坏,请帮助您。嗯。。。这就是我们使用版本控制和备份磁带的目的。同意一些人的观点,但不同意上面的部分,因为许多布局管理器更好地处理窗口大小调整,但是如果配置文件损坏,请帮助您。嗯。。。这就是我们使用版本控制和备份磁带的目的。您指的是哪些工具?您使用什么?用于开发swing应用程序的Netbeans、用于J2EE应用程序的Eclipse和Android?您指的是哪些工具?您使用什么?Netbeans开发swing应用程序,Eclipse开发J2EE应用程序和android