首先在我从事Swing编程的几年中我听到过各种奇谈怪论、大致意思就是Swing桌面软件不合适、我只能呵呵。一个人能力有高低、对事物的看法有不同,都可以接受、但是把无知当个性只能说你太勇敢了。尽管甲骨文如今力推JavaFX、但是Swing还是目前Java桌面开发的主流技术。

本人从事Java语言编程超过11年、其中有五年左右的时间是在从事Java Swing桌面应用程序开发、其它几年是在从事J2EE与spring3 MVC开发,结合自身实践感慨颇多,感觉自己技术进步最大最快的几年恰恰是从事J2SE Swing桌面开发的这几年,几年之后我接触了spring3 MVC开发项目、感觉做WEB如果除去前端那些事情、所有的问题我在桌面开发中都遇到过,而且体会相当深刻,相比做Swing桌面应用、做WEB应用有一堆框架可以供你挑选,更别谈MVC模式、你做Swing桌面开发的时候MVC是自己设计与实现,而做WEB是别人已经设计好的各种组件,绝大多数时候你只需要使用,你没有机会实现MVC等模式与分层,因为框架已经替你做好了,大多数WEB程序员只是根据框架提供的分层模式,写好各个层级的代码、分工明确、如果让一个WEB程序员去做Swing桌面应用,要求它分层,做到MVC我想他们其中一半的人会彻底迷失、更不要谈事件传递等等、同时大多数时候Swing桌面应用涉及线程、设计模式等各种知识运用。毫不夸张的说同等规模的软件、Swing桌面实现远比WEB客户端复杂很多、Swing桌面应用开发涉及到各种技术可以最大程度的考察一个JAVA程序员的J2SE技术能力与真实技术水平。我在做桌面应用的时候使用Spring也使用Hibernate、同时还使用Log4J等各种第三开源库。同时Swing开发还能考察一个JAVA程序员真实的架构与设计能力,而WEB开发大量框架的使用,降低了这种要求与需要。在提供开发速度与提高生产力的,老板攫取更大的商业利益,但是程序员本质上并没有从项目中获取最大化技术收益。

       所以我录制JAVA Swing桌面应用程序系列课程就是让JAVA初学者不再走弯路,从一开始就知道JAVA Swing 桌面应用程序开发不是学会几个Swing组件使用、而是学会Swing组件的设计与架构思想、学会应用程序分层与模块化开发、学会怎么实现MVC架构、夯实J2SE各种基础知识,为以后向更高更远的目标迈进打下良好基础。让大家不仅“知其然、而且知其所以然”,为JAVA程序员职业生涯的开端打下良好的基础。

最后看一下课程中实现的Swing界面,是不是颠覆了你的认知。

java为什么不能做录屏功能 java为什么不适合桌面开发_java


转载于:https://blog.51cto.com/gloomyfish/1701850