下面从偶自己的Java学习历程中,列举一下Java给偶的惊喜
惊喜一、Java的语法严谨,类库结构清晰
偶在大二开始学习Java(由衷感谢@马士兵老师,主要靠马老师的Java视频教程入门的Java),在学习Java之前还学了C++,VB之类的编程语言,VB简单不过找不到编程的快感,C++又各种让人不悦,反正偶自己是看不到编程的美。更加恶心的是微软的MFC学起来,真是边学边骂WTF,直到后来在遇到了Java之后,真心感觉这个世界清爽了好多,再也没有那些乱七八糟的宏定义,不用自己管理内存回收,也不用管让他头疼的指针。虽然现在很多语言都做到了,不过那时候在偶能接触到的选择项里面貌似只有Java,C#,偶选择了Java。另外说个插曲,早年比尔盖茨接触Java后,就喜欢java并且在VisualStudio里面加入了J#,不过被Sun公司给告了,赔好几亿美金。后来盖茨在Java的面向对象思想下发明了C#,才有C#和Java的竞争局面。这个孝插曲这个足以证明Java当时的魅力。
惊喜二、强大的社区力量
Java本身的类库已经很丰富,不过Java的社区力量也是非常强大
1优秀的架构不断升级革新
在大学时候就开始学习Spring,Structs2,Hibernate感觉其中Structs2,hibernate难度还是有点大的,不过很快就有SpringMVC,MyBatis框架更大降低学习成本。可以看出只要一个框架不够优秀很快就有一个新的框架出来替代。
2各种工具框架应有尽有
研究生时候要研究搜索引擎技术,很快在开源社区找到了lucene和solr。后来要研究的机器学习mahout又可以拿来学习借鉴。基本上和业务无关的技术框架,技术工具都能在社区找到。真是极大提高了软件研发的效率。
惊喜三、Java生态时刻跟在技术发展潮头
如果说技术上的热点不得不提一下微服务,大数据及人工智能,虽然这些热点和编程语言无关,不过整体来看还是以Java来实现的居多。
说到微服务,真的要感谢大家的Spring生态,SpringBoot,SpringCloud给微服务提供了一个非常优秀的微服务解决放案。
大数据这块的hadoop,Hbase,Zookeeper,Flink等大部分以Java实现为主,也有部分基于JVM的语言实现,也能算是Java生态圈内。人工智能领域也同样有很多Java实现的算法库。
惊喜四、带偶进入互联网行业
由于自己对java的学习,使得自己硕士毕业后就得到了互联网大数据方面工作机会,还是写一下,尽管干这行压力大,不过偶没有后悔,感谢自己对技术的热爱,搞技术还是可以有很多快乐的。
为什么一直坚持主攻Java?
因为熟悉Java所以工作中基本方方面面都用到Java。为了工作效率更高,自然要坚持学习研究好自己的吃饭家伙。也正因为熟悉Java,项目中基本选择用Java
分享一个自己的事:在上家公司为了和其他系统匹配,偶选择了Python作为开发语言开发系统,由于大家都不熟悉,问题不断排查及其困难,后来还是一狠心换回到Java才保证了项目的稳定上线。所以对一个语言的实习程度,直接关系到项目的成功与否。
个人感想:
随着现在很多JVMbase的语言被发明出来,如groovy,scala,kotlin等,及一些其他native的语言都再不断的挑战Java的核心地位,且这种挑战会一直持续,偶觉得这个对Java的发展绝对是非常有利的,Java只有不断吸取其他编程语言的优秀思想才能不断进步。
不过偶对语言的整体观点:做技术还是解决问题最为重要,语言只是工具,如果有其他更加高效的语言,偶也会积极学习。不知道你是否同意偶的观点,欢迎留言交流