老师你好,请问如何深入学习Java GUI?

来源:2-11 课程所使用的GUI编程模板

TaraTara

2020-09-15

老师你好,我有一点Java基础,但是没有专门学过GUI这一块,基本就是看这个课程入门了一下,感觉非常有趣!想请问老师,如果要专门深入学习Java GUI编程,比如这里用到的Java Swing,有什么推荐的学习资源吗? 或者学习方法经验之类的建议也可以。非常感谢!

写回答

1回答

liuyubobobo

2020-09-15

首先,其实现在时代稍微有些不同了。Java Swing 稍微有一些过时了,表现就是,Java Swing 相关的资源已经非常少了。只不过 Java Swing 是一个非常简单的 GUI 框架,我可以再这个课程中很快讲清楚,然后快速带领大家到真正这个课程的重点——算法上来,所以,我在这个课程选择了 Java Swing 框架。


整体,Java Swing 是比较轻量级的框架,但如果深入 Java GUI 方面,可能这个时代学习 JavaFX 更合适。整体比较新的 JavaFX 的书籍也比 Java Swing 多很多。(我搜索感觉现在 Java Swing 的资料近乎绝迹了。。。)


但是,非常关键的一点在于:其实 Java 不适合做 GUI。Java 更适合做底层服务。


我非常理解很多同学对 GUI 感兴趣,但在 GUI 编程方面,Java 确实不是一个最好的选择。如果真的对 GUI 编程感兴趣,我个人的建议是:


或者学习一个前端框架,比如基于 Web 的 Canvas,或者基于移动平台的 iOS 开发,Android 开发等。前端框架天生为 GUI 而生,同时,自己做出的东西也很容易展示出来(直接放到网上或者直接发布 app),这些都比使用 Java 写 GUI 强太多。


如果想认真研究桌面的 GUI 开发,我的建议是:

1)或者强平台相关,比如 Windows 的那一套,或者 macOS 的那一套;

2)如果一定要做兼容性,我个人更推荐 Qt。因为 Qt 本身是一套更成熟的 GUI 框架。但是我只接触过基于 C++ 的 Qt,对于 Qt 的其他扩展或者对其他语言的支持不是很了解,如果你一定要基于 Java,还需要自己再差一些资料。 

 

但我还是想在强调一下,用 Java 做 GUI 不是一个好的选择。


继续加油!:)


1
1
TaraTara
谢谢老师解答!
2020-09-16
共1条回复

7个经典应用诠释Java算法精髓

课程重应用、重实践、重思维,真正应用于实际工作开发中

1888 学习 · 112 问题

查看课程