黄舟2017-04-18 10:40:31
入门的话,当然是swing简单了。
你应该知道eclipse和pentaho的kettle。这两个都用了AWT。
我也曾接触过一丢丢AWT,个人觉得AWT这东西还是挺繁琐的,资源也得自己回收。
上大学的时候对swing还是颇有研究的。不过现在几乎全忘了!因为我工作中用不到。
我周围的一些搞Java的,对于swing这一块东西是直接忽略的,因为他们大都是拿Java来做服务端程序。
如果你只是一时好奇桌面应用开发的话,个人建议没必要学,我并不是贬低AWT和swing,任何东西的存在都是有价值的。eclipse这些东西也还是靠他们!
毕竟时间是有限的,还是建议你多研究和自己工作相关的技术。当然,如果你的工作是以开发桌面应用为主的话,建议先学swing。
几年前我见过一个swing高手,用swing写了一个和QQ长得一模一样的应用。从外观根本看不出来是他自己写的QQ。不过据他说他研究swing时看了一本和新华字典差不多厚的书,书名叫啥我忘了。
编程这东西吧,无论什么编程语言,入门都很简单,但要深入,想要做一位大师就看个人悟性和付出了!
高洛峰2017-04-18 10:40:31
Swing 和 AWT 并不是可分割的,Swing用的事件是 AWT 中的事件 —— 但AWT组件功能太弱,推荐从 Swing 入手,对于掌握 GUI 编程有很大的帮助
高洛峰2017-04-18 10:40:31
swing这东西很强大,sun的语言开发功底不是盖的,原始代码很优雅。但是,swing这家伙的运行效率挺一般的,做出的界面不是太好看,还有点吃内存。 swt 具体没太用过,原单位有和用过的同事请教过,那个同事说不太推荐,可扩展性太小了。
天蓬老师2017-04-18 10:40:31
不要用Java。Java的GUI组件默认的控件风格和字体渲染和系统默认的不一样,所以做出来界面会比较突兀。而且跑起来也很慢,其实除了Eclipse和NetBeans,可以算好看的Java桌面GUI程序屈指可数(而且都很慢)。最适合Linux GUI开发的是用C++和Qt。
ringa_lee2017-04-18 10:40:31
要容易,我还是建议楼主试试HTML的方案.
"浏览器运行时"是最简单的跨平台UI实现,HTML是最简单的跨平台UI语言.
Electron和NW.js是两个基于HTML+Node.JS的方案:
用Electron和NW.js开发跨平台桌面应用有个明显的缺点就是生成的应用安装包太大了,动辄好几十MB. 毕竟自带了一个Chromium浏览器环境,应用工作时相当于打开了一个浏览器实例,实在太耗资源.
HTML+PHP+SQLite是另一个方案:
把内置HTTP服务器和SQLite数据库的HTML预处理器PHP部署到客户端(包括Android/iOS),配合浏览器或WebView就能开发出可离线运行的独立应用:
php -S 127.0.0.1:8080 -t /www
xdg-open http://127.0.0.1:8080
因为是直接调用浏览器访问本地PHP服务,不需要打包浏览器运行时,所以基于HTML+PHP的方案的软件打包会小得多.而且PHP源代码可以用PHP7的opcache.file_cache导出成opcode实现保护.