java 板


LINE

一时有感,抒发七年前学 java 到现在的心得感想,文长请斟酌服用。 ------- 早在 2005 年左右,不少深刻了解 java 优缺点的美国顶尖开发者就在出书或撰文 讨论 java 的未来。 当时许多人除了提出很多建议之外,唱衰的也非常多。 嫌它慢、嫌它语法罗嗦、嫌它动不动就在拿大炮打苍蝇、嫌开发工具落後, 总之就是老爷车啦! 1995 问世的东西好像就该被淘汰一样.... 尤其是 2007~08 左右,android 开发还未完全火热的那阵子是 .net 的大进击, 扑天盖地的宣传和好评以及 Visual Studio 的功能展示令求学中的我怀疑 java 是不是要完蛋了,学这个会不会以後很难找工作。在看到学长用 .net 写出 windows 作业系统上漂亮的视窗应用程式,而我的系统分析课却只能交出很延迟的 java swing 应用程式之後,我更是在想 java 是不是要塌了... 就算後来 android 开发大红大紫使得 java 在 TIOBE 的使用者比例再次回到 15% 我仍旧怀疑 android 开发不再红之後的 java 到底能活多久。 这种心情令我虽然毕业後进入以 java 开发 ERP为主的大公司,但还是不信任 java, 我经常想找机会去当前端工程师,用网路很红很潮的 nodejs 平台相关工具开发 应用程式。两年後我也成功了,上面让我可以直接拿上班时间专心学 nodejs 的东西。 这两年之间也不是混吃等死,随着我越来越熟悉 java 世界,特别是开发相关的工具, 我才开始注意到 java 的社群好像还是很有活力,jvm 上面各类型的工具与函式库 几乎都有,而且往往还是不错的解决方案,只是在台湾不知道为什麽开发者们多半 很低调,不像 .net、javascript、ruby、python 等社群的人经常表露出一副我们 就是比较酷的样子,写 java 的感觉就比较土。 例如同事和我前阵子在寻找适合开发 cordova 平台应用程式的 IDE, 他对 visual studio 完整的文件、高度的整合性与智慧的整合方式赞叹不已, 当然也顺便抱怨了 java 世界近几年发展缓慢的 eclipse (intellij 不错我知道, 但因为要花不少钱就被同事忽略了)。 他欣赏 VS 的程度高到就算我们後端系统是以 spring 为基础的 java 应用程式, 他还是想把我们团队的 IDE 都换成 visual studio,即使他知道这可能会让开发环境 的建置更加麻烦,新进人员的上手速度可能也会减慢.... 至於我呢... 一开始看到 visual studio 的强大威武差点被征服,但试玩两三天之後, 回家想想虽然它好威,但这麽多功能又不是每个都是用来开发我们应用程式的, 如果只讨论特定类型应用程式的开发功能,那 java 社群的解决方案未必比较差。 於是我仍坚持引进 IDE 的衷 - 必须能同时开发 cordova 与 java web, 这 IDE 不旦要好用,最好还不要什麽钱。 运气好的我也找到了,它就是六年前被我嫌慢,前 sun 公司主导开发的 netbeans。 多年不见没想到它已非吴下阿蒙,ui 比以前流畅许多,功能完整、资源的整理有系统, 尤其是看到它前端的开发功能以一个免费的 IDE 来说真的还不错。 接连几件事看下来.... java 社群还是很有活力嘛~ 也许 java 再过几年会因为语法的问题而没什麽人想写,但 jvm 上的应用程式应该 还可以活很长一段时间。 最近几天我在学 nodejs 平台上的主流任务执行工具 (task runner) grunt 与 gulp 又有一些体悟。我发现前者被人家嫌没有用串流 (stream) 处理建置档案问题, 而後者虽然引入 stream api,还在官方的档案库煞有其事地分享为什麽用串流处理 建置过程的文章,但 gulp 的功能好像还是没有 java 的 gradle 完整.... grunt 与 gradle 的特性大概要结合在一起才能比较接近 gradle 的水准。 此外,过程中我也猛然想起 java 早在十几年前发展平台时就已经将 I/O 以串流的 概念抽象化,学习 java 的人非常习惯使用 stream 来承接资料以减少记忆体消耗, 没想到这种概念在 nodejs 这样的新平台却不是每个开发者都很熟悉。 忽然.... 我感觉到有点骄傲啊...! 或许 java 不会在每个平台都很快、它语法罗嗦、它动不动拿大炮打苍蝇、 它开发工具不是最好用的.... 前阵子 .net 开发者甚至在 soft_job 板笑 java 无法 在 iOS 上面开发应用程式,哪能算得上 write once run everywhere.... 但是 java 语言配上 jvm 执行环境终究还是一个 工具与函式库完整、高度透明、充满许多厉害又开源免费工具的开发平台, 只是因为发展成熟,就业市场的需求比较 M 型化而已。 想到这里我就想替那些学习 java 与 jvm 的新手加油打气。 java 还是一个很不错的工具,只是为了应付专业需求而比较复杂, 不能像一些设计单纯的平台三两下就完成你的需求,但只要愿意投入时间去跳过 那不低的门槛,终究还是能用非常低廉的代价学到很多先进的技术, 努力绝对不会白费的! 与大家共勉! --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.136.196.240
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1451756936.A.D6A.html
1F:推 longlongint: 一出生就是老头的java 越来越年轻的过程 01/03 15:04
2F:推 gn00742754: intelij 社群版不用钱 01/03 19:33
重要开发功能只在进阶版提供
3F:→ Neisseria: IntelliJ 我用过 Ultimate 版的,真的蛮好用的 01/04 12:07
4F:→ Neisseria: 还可以吃多种程式语言,现在变成我的主力 IDE 01/04 12:08
5F:推 gmoz: 泪推netbeans 01/04 15:34
我觉得现在 netbeans 很猛了,只是 java 世界待久的人常常印象还停在五六年前, 那时候的 netbeans 真的被 swt 做出来的 eclipse 屌打。 ※ 编辑: dream1124 (118.168.74.247), 01/04/2016 21:43:53
6F:推 gmoz: 7.4跟8.1使用中,我也觉得很好用阿QQ 01/06 09:49
7F:推 marsyang1: netbeans跟IntelliJ都有用,但真心觉得In 02/05 12:06
8F:→ marsyang1: telliJ 可以让我更早下班。 02/05 12:06







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:WOW站内搜寻

TOP