您的位置:网站首页 > Java教程 > 正文

想学java还不知道这些怎么行?

类别:Java教程 日期:2018-2-15 20:52:27 人气: 来源:

  互联网发展瞬息万变,程序员就是用一行行代码改变世界,设想你做的app被大家喜爱,你做的网站深受大家亲睐的时候,那种成就感自然是不言而喻的。本文达妹就为大家总结在学习IT技术前,程序员不得不掌握的技能,希望对你有帮助:

  为什么这么问?很简单,996大家听过吧,这是互联网行业奇葩工作时间。做程序员这行尤其是互联网企业里,加班是常有的事,遇到赶项目或者大事通宵也不是不可能,华为加班猝死,阿里大楼凌晨还有不少人加班、双十一通宵,腾讯加班,58的996等等。所以做这行你首先得有个很好的身体,肯吃苦,工资福利好,但是加班也不少。

  做程序员目前工资待遇最好的在国内无非就是互联网公司了,很多应届生都能拿10K以上,年底还双薪,还可能有股票期权,要是遇到一个好的创业公司可能IPO之后瞬间屌丝登上人生巅峰!

  但写代码需要一个相对来说比较能耐得住寂寞的人,如果你坐不住一般来说不会是个好的技术从业者。既需要有解决问题的能力,还要有团队合作的能力,并且大多数码农都是比较闷的,很少有很open的码农,这也许是技术从业者的诸多共性吧。

  互联网公司更是发展迅速,这就更需要你去关注行业形势,关注技术发展,否则的话你很快就被淘汰了。

  越是顶尖的程序员,对于个人天赋的要求就越高,对,做程序员真的需要一定的天赋,天赋是后天怎么样的经验都积累不来的。一般来说,一个优秀的程序员需要较好的数学天赋,数学能力强的往往具备较好的优势,一个好的算法太重要了。如果你从小到大数学都特别好,并且也很喜欢数学那我觉得至少你具备了较好的先件。英语为什么重要?

  因为计算机技术本来就是老美发明的,你需要的文本编辑器、集成开发、技术文档以及很多专业书籍都是英文的,甚至即使有翻译的材料和书籍你会觉得也许英文版会更好,所以随着学习深入英语必定是个很重要的工具。笔者就是因为中学时代对数学、物理的疯狂喜爱和还不错的英语水平选择的这个专业。

  程序猿一定程序上是个青春饭,并且学习的最佳时间也最好早一点,本来就是一个耗费脑力的活,尽早学习优势更大,在国外都提倡孩子从小接触一些简单的编程。比尔盖茨、扎克伯格、杰克多西、亚伦斯沃兹这些人都是从小都学编程的。

  但是国内比较特殊,毕竟应试教育压力很大,所以不太可能从小学,但是如果你说你快三十了才来准备学写代码转行做程序员我一定不会觉得你这样是认真的,因的是有点晚了,因为你不可能有20岁左右的年轻人思维敏捷!当然如果只是作为一个兴趣当然没问题。

  计算机技术可以说是更新最快的了,互联网行业更是日新月异。一个互联网公司可能几年就估值100亿美金,也可能一夜之间关门大吉。

  因此你需要不断学习长足学习,不断的接触新的知识和技术,不断的更新你对行业的了解,并且随着年长你不可能永远在一线写代码,那么就可能往上走,那么你就除了要学必要的技术知识,你还需要学一些管理、合作、沟通的能力,你需要了解很多产品原理,你需要学习更多的业务知识,逐渐成为一个业务理解上的技术专家,而不是只会在一线写代码。

  因为那种真正把技术做到极致永远只在一线写代码的的大神真的不多,阿里这么大的公司也只出了一个多隆,纯粹做技术还做到副总裁级别的高P大神,但人家是一个人就可以搞定N个牛人的活的那种。

  第二我觉得可以从一门特定的语言开始,我从C语言开始,不从C++开始,因为C++学习难度确实有点大,不是一朝一夕的事情。推荐一本书C primer plus,书比较厚要有恒心!可能的话尽量买纸质书吧,比效果好得多。

  推荐用codeblocks写程序,开源免费跨平台(但如果有条件的话MacBook pro对于一个程序员来说还是很有优势的,基于Unix你渐渐会懂的),这时候你没有必要用visual studio这种很强大的但同时也很笨重的IDE,也没有必要现在就开始学习Emacs、Vim这种门槛比较高的工具。

  并且这时候一定要养成良好的代码习惯,学会做注释,学会合理的变量命名等等,千万不要成为一个程序痞子或者代码!如果不知道怎样做好代码规范的,自己去网上搜大公司例如Google、Microsoft的代码规范!

  要强调的是一定要多写多练多实践,看完不要看着答案敲习题的代码,这点非常重要!等你认真看完这本书后你绝对已经打好基础了,后续的话你可以慢慢看看K&R C这本书,毕竟C语言之父自己写的不用解释了吧。

  然后你可以学习一门面向对象的编程语言,你可以选择时下比较火的一些语言。比如C#、Java、Python等都是不错的选择,主要是熟悉面向对象编程的思想。Python的中文资料比较少,单数语法非常漂亮,并且很多语言的设计哲学也逐渐在致敬Python,所以我觉得绝对值得一学。Java和C#就不用多说了,市场份额摆在那里。

  这时候我觉得你有必要选择一个方向并且为自己的能力加成了。自己去了解以后要走哪个方向哪种语言,比如你想做Android,那你必须要学好Java,学习Android开发的一些基础知识,当然最好的教程就是个Google的文档。

  如果你想做iOS,你可能要学Swift,学objective-C等。如果你想学做游戏,你可能要学脚本,虚幻你要学C++,unity你要学C#。如果你想做Java Web你可能要学Java ee,要学Java,要学HTML要学CSS等等。然后根据自己的具体爱好选择相应的语言和技术,而且最终要学的东西比这个多得多,不仅仅是编程语言,你要学类似于框架之类的等等很多东西。

  与此同时,我觉得你应该去学一些算法和数据结构的知识,学习更多的数学知识。纳大sedgewick的算法和算法导论是两本本很不错的书,但千万不要一上手就去看TAOCP,因为这本书其实难度还是比较大的。同时数学方面离散数学及其应用和具体数学是很好的书。这些书不要求你非要每一个问题都弄懂,只要多看就会有进步的。

  确定方向之后就是实践了,网上有很多公开课的平台,国外如coursera、edx等,国内如极客学院、麦子学院、慕课网、百度传课、网易云课堂等等都是不错的平台,这里面有很多免费的课程的。学着去做一些小项目,真正去实践,比如Web你可能还要去学习各种框架等等。同时自己最好也要多写一些单元测试,这是一个优秀程序员的必备课。

  学会利用工具很重要,不可能不遇到问题,Google你值得拥有,论学术能力和专业能力Google确实比百度强太多,至于怎么用Google,你百度一下吧,还有就是stack overflow这绝对是个好工具!

  

关键词:慕课网java
0
0
0
0
0
0
0
0
下一篇:没有资料

网友评论 ()条 查看

姓名: 验证码: 看不清楚,换一个

推荐文章更多

热门图文更多

最新文章更多

关于联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助

郑重声明:本站资源来源网络 如果侵犯了你的利益请联系站长删除

CopyRight 2010-2012 技术支持 FXT All Rights Reserved