D13ba707d1c36b75e8928008b38a7031
大数据需要学什么?(一)语言篇

大概两年前写过同样标题的一篇文章,对于这个问题感兴趣的人不少,后台收到不少同学的提问,所以准备细致地解答一下这些问题,希望能解决掉大家90%的疑问。下次再看到相关的提问我会理直气壮地把这篇文章的链接甩你脸上。但是可能又会有同学有疑问了,那剩下10%的疑问怎么办?关注公众号,加我微信问我哈哈。

言归正传,这一篇讲得是语言,对于新手来说,老是会有类似这样的问题,“做大数据需要学Java吗?”“不会Java可以吗”“需要学到什么程度”...我的回答是“需要!”,“不可以”,“精通”。当然对于一个新手来说让你精通Java是不可能的,写Java没个十年半载真的不敢说精通,但是你得走在通往“精通”的这条路上,精通程度和你拿到的钱是成正比的。

其实我想表达的是,不要有侥幸心理,不要觉得大数据就是搭搭环境,用用组件,大数据是正儿八经需要写代码做开发的,而且对代码能力的要求是比较高的,为什么这么说,因为大数据生态圈有很多优秀的开源组件,如果你的Java是半吊子的水平那我可以很明确地说,你能看得懂的代码可能都不超过100行。不信的话可以找个开源项目看看。关于捣鼓源码的重要性以及如何入手,后面我还会写一篇敬请期待。

Java可以说是大数据开发的第一语言,至少当前还是的,虽然垃圾回收的问题经常被大家诟病,但是有庞大的生态圈在呢,一时半会都还会是Java的天下。“Java要学到什么程度?”JavaSE必须掌握,JVM,多线程之类的都是基础,面试必问系列;JavaEE必须熟悉,丢个Java web项目给你,不求你把底层了解地多么透彻,但是必须得会写,因为大数据开发实际工作中少不了写接口。

SQL。如果说有一门语言可能会撼动Java一哥的位置的话,那绝对是SQL,虽然SQL和Java都算不上是一个层面上的语言,但是它太重要了,太多人的SQL写得太渣了,太多人写SQL的时候不考虑底层优化了,要重视呀兄弟们,不是增删查改就完事了的。有小伙伴问过要怎么提升写SQL的能力?孰能生巧,多写,多了解底层原理,多思考优化的方案。

Scala要学到什么程度?语法得懂,除了基本的,还有什么隐式转换,什么柯里化,什么闭包等等。学Scala最大的目的就是写Spark,Spark在大数据生态圈的存在感太强了,学习一门语言最好的方式就是实践,多写写Spark相关的项目,或者去看看Spark 的源码。什么?缺项目?私人广告 又来了 。

shell也是必不可少的,大数据开发其实一般都会承担起大数据集群的运维工作,说到运维,shell的重要性应该不用我多说了吧。

语言是程序员的兵器,兵器肯定是越锋利越好,种类越多越好,弓箭,刀,剑,盾,都有它们各自使用的场景。程序员不要有侥幸心理,不要得过且过,对于技术来说要知其然且知其所以然,如果你还达不到这个地步,那一定要走在这个方向上。

公众号:老蒙大数据

© 著作权归作者所有
这个作品真棒,我要支持一下!
关于大数据开发的一切。学习,技术,理论,面试,工作,开源,项目,实践等等。
0条评论
top Created with Sketch.