一个java程序员如何从新手慢慢成长

作者&投稿:琦胜 (若有异议请与网页底部的电邮联系)
Java程序员刚入职一个月,怎样快速成长起来~

刚入职,了解公司的工作性质,看看自己技术上有什么不足的地方,下班后要赶紧充电学习。上班的时候遇到不会的要主动和同事沟通,不要怕丢人,能完成工作才是最重要的。

对于软件开发人员来说,通常,他们职业发展有几个选择:专注于技术,成为技术专家;转型到技术型销售、技术支持等;所以要想走得远一点,必须有一项本领是过人的。 随着技术成长,从技术性管理到高级管理。这是大家都看得清楚的方向,也都在向这些方向的金字塔尖努力。
程序员要根据本身的基本素质、技术能力选择开发层次,由低到高,逐步发展。 也是一名程序员本身具备相应素质的循序渐进的发展轨迹,包括很强的技术背景和综合管理才能等素养,这也就是所谓‘两条腿走路’的职业规划发展路线。”如果这样的话,我相信你总有一天能达到自己的理想标准。
希望可以帮到你,谢谢!

一、首先初识语法的阶段,必须要学会怎么操作对象,操作if和for,操作list set
map,然后是线程、IO和jdbc什么的,其余的,若是一时不理解,可以后边需要时再学。
这阶段完了,你可以写些能在控制台打印出来的小程序,锻炼下逻辑思维。也就是号称JAVASE毕业了,其实不过是入门而已,如果要往WEB方向发展,这些倒是基本足够了。
二、接下来要学HTML JSP SERVLET 数据库 JAVASCRIPT
TOMCAT,目标,写出第一个动态网站,也许只是个登陆功能,只能展示下个人资料,但这是很重要的一步,你要弄清楚的是,一个用户的点击产生的请求,是从哪里发起,哪里接收,哪里处理,哪里返回,你得理解浏览器和服务器的关系和分工,cookie和session,request和response。这个是个WEB开发的学习初级阶段,这都是些JAVA诞生以来最原始的最官方的WEB开发技术,当然现在真正的项目很少直接采用这些技术了,为了不断提高技术的易用性、开发效率和可维护性、可扩展性,无数开源项目都是在这些原始技术的基础上封装、改进。所以这个阶段不要盲目乐观地跑去找工作或者对实习挑三拣四,你会被打击到的。
三、初始阶段完成,开始进入WEB开发的正题,首先是传说中的三大框架,struts hibernate
spring成为熟练的增删改查程序员是必须的,在这个阶段你还要理解为什么要用这仨而不是那些JSP SERVLET
JDBC,你要体会到写MVC、三层架构的好处。这个阶段不要轻易质疑三大框架的价值,也许刚开始你会觉得麻烦,觉得他们有时候是多此一举,一两年后回过头来你会觉得少了这些框架你已经很难干活了。这个阶段还要避免的心态是能熟练地增删改查了,就认为写程序不过如此,然后往简历上填个精通,这也是新手面试被批得体无完肤的原因之一。如果你学得好,这会应该能熟练地写个博客啊,小论坛啊之类的WEB项目了,也就是达到了就业的基本要求。
接下来就没有固定模式了,你的第一家企业对你的影响会很大,在这头一年里,定个标准吧,你应该能做到的有:
1、把一些常用的琐碎技术学会了,比如xml的作用和实际运用,如何操作文件,如何运用日志,如何简化封装常用的工具类,比如日期操作、编码处理、分页模块等等,这些小东西会占用你大量的时间去处理摸索。
2、把数据库用好。数据库不是会增删改查就可以了的,你要关注事务设置是否合理,是否有可能产生脏数据,是否要动用乐观锁悲观锁等等,重要数据出了错,无论是技术上还是业务上都是很麻烦的事。
3、懂得什么是集群,什么是分布式,懂得怎么向别的系统发请求,交换数据,webservice。
4、如果你也写页面,你要会用JAVASCRIPT,不一定要很深入,你可以用JQUERY代替,做到无刷新的页面操作以及AJAX请求。
第一年能达到这个程度,你绝对已经在平均水准之上了。
下一个阶段,你应该考虑你的代码质量了。
1、多线程和异步、并发的概念会忽然变得很重要,因为在一个对性能有要求的系统里,是不会允许你把各种琐事都排着队一件件去办的,你不能老写些a方法调b方法再调c方法再调d方法然后返回的代码。
2、你会发现数据库性能实在不行,出于不甘现状,或者赶时髦,你该去了解nosql了,memcached redis
mongodb,眼花缭乱,没关系,试着用用,能很好地缓解mysql之类关系数据库的压力。
3、出于公司某些业务需要,你可能会钻研一个特定技术领域,比如全文搜索技术,lucene\solr,比如工作流jbpm,比如权限系统,单点登陆之类的,又或者某些特定业务领域的算法研究,这些是你的加分项。
4、你开始发现你的代码很乱,久了以后自己都看不懂,重复的,难以重用的代码堆积如山,不想维护,BUG百出。于是你要开始重视设计模式,合理地改造下自己的代码习惯,不再被僵化的SSH,MVC三层架构束缚住。
5、Google和各种资料是你进步的动力,极少再遇到必须请教别人才能解决的问题,如果你这个阶段还老是问别人,你的技术生涯也就快到头了。
这个阶段,如果你的交际和自我推销能力不是太差,你的收入将是白领水平,至少接近了。
接下来又是个全新的阶段。
1、你要读读优秀开源项目的源码,你要搞懂一些当年不懂的基础知识,你开始理解thinking in
java的精髓,你能写一些底层的代码,有时还会觉得自己封装的比某些开源工具更好用更简单。
2、WEB的难点和重点永远都在于性能、负载能力上,而现在网络的发达造成了数据量和操作密度的大大上升,硬件却没有相应的进步,你得试着更好地运用更多的服务器来协同工作,从WEB端到服务端到数据库,全都需要集群,需要分布式,需要合理的控制数据的流向,掌握好网站上下,一大堆机器的平衡,找出性能的瓶颈,找出稳定性和安全性的瓶颈,硬件出现故障,第三方技术出现错误,将被当成家常便饭融入到你的系统和代码里仔细考虑。
3、开始觉得方案无比地重要,一将无能累死千军将不断应验,一个不好的设计,一个不好的方案,会让一群优秀的程序员工作成果大打折扣。你要关注架构知识,不能再满足于SSH三层架构到底。领域驱动设计,面向事件开发,敏捷开发等等一系列的思想在关键时刻能决定你项目的生死,这个阶段不再有标准范例让你照抄,你只知道思想和原理,实践却需要自己不断尝试和改进。
4、多关注各种杂七杂八的开源技术,有些你可能前面已经接触过了,和通信有关的,和集成开发环境有关的,和架构有关的,各个领域你都应该能信口说上几个主流技术,虽然你可能只是听说过,了解,但关键时刻你得知道如何去选择技术,并快速掌握它。你还会去考虑尝试下别的语言,这里不是说转向什么C++
C#之类的,那和JAVA程序员不相干,我说的是一些运行于JVM之上的语言,比如scala和groovy,初识他们时你会觉得java真的老了。但当你回到一个综合性的大型项目中,又会觉得java积累下来的整个体系技术是如此完善,就像一个工业化标准一样。
你能把这个阶段实践好,胜任项目经理,乃至中小公司的技术总监都是可以的。

常常思考自己的未来,也从自己的思考中总结出了一些东西,想来谈谈程序员的阶段

  • 第一阶段----三年

  • 我认为三年对于程序员来说是第一个门槛,这个阶段将会淘汰掉一批不适合写代码的人。踏出校园,从书本上的内容迈向真正的企业级开发。我们知道如何团队协作、如何使用项目管理工具、项目版本如何控制、我们写的代码如何测试如何在线上运行等等,积累了一定的开发经验,也对代码有了一定深入的认识,是一个比较纯粹的Coder的阶段。

  • 第二阶段----五年

  • 五年又是区分程序员的第二个门槛。有些人在三年里,除了完成工作,在空余时间基本不会研究别的东西,这些人永远就是个Coder,年纪大一些势必被更年轻的人给顶替;有些人在三年里,除了写代码之外,还热衷于研究各种技术实现细节、看了N多好书、写一些博客、在Github上分享技术,这些人在五年后必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个Coder逐步走向系统分析师或是架构师,成为项目组中不可或缺的人物

  • 第三阶段----十年

  • 十年又是另一个门槛了,转行或是继续做一名程序员就在这个节点上。如果在前几年就抱定不转行的思路并且为之努力的话,那么在十年的这个节点上,有些人必然成长为一名对行业有着深入认识、对技术有着深入认识、能从零开始对一个产品进行分析的程序员,这样的人在公司基本担任的都是CTO、技术专家、首席架构师等最关键的职位,这对于自己绝对是一件荣耀的事,当然老板在经济上也绝不会亏待你

  • 第一部分总结一下,我认为,随着你工作年限的增长、对生活对生命认识的深入,应当不断思考三个问题: 1、我到底适不适合当一名程序员? 2、我到底应不应该一辈子以程序员为职业? 3、我对编程到底持有的是一种什么样的态度,是够用就好呢还是不断研究? 最终,明确自己的职业规划,对自己的规划负责并为之努力。



第一阶段:三年
我认为三年对于程序员来说是第一个门槛,这个阶段将会淘汰掉一批不适合写代码的人。这一阶段,我们走出校园,迈入社会,成为一名程序员,正式从书本 上的内容迈向真正的企业级开发。我们知道如何团队协作、如何使用项目管理工具、项目版本如何控制、我们写的代码如何测试如何在线上运行等等,积累了一定的开发经验,也对代码有了一定深入的认识,是一个比较纯粹的Coder的阶段。
第二阶段:五年
五年又是区分程序员的第二个门槛。有些人在三年里,除了完成工作,在空余时间基本不会研究别的东西,这些人永远就是个Coder,年纪大一些势必被更年轻的人给顶替;有些人在三年里,除了写代码之外,还热衷于研究各种技术实现细节、看了N多好书、写一些博客、在Github上分享技术,这些人在五年 后必然具备在技术上独当一面的能力并且清楚自己未来的发展方向,从一个Coder逐步走向系统分析师或是架构师,成为项目组中不可或缺的人物。
第三阶段:十年
十年又是另一个门槛了,转行或是继续做一名程序员就在这个节点上。如果在前几年就抱定不转行的思路并且为之努力的话,那么在十年的这个节点上,有些人必然成长为一名对行业有着深入认识、对技术有着深入认识、能从零开始对一个产品进行分析的程序员,这样的人在公司基本担任的都是CTO、技术专家、首席 架构师等关键的职位,这对于自己绝对是一件荣耀的事,当然老板在经济上也绝不会亏待你。

初级java开发人员在获得第一份工作后,要做些什么?
答:3.深入研讨特定技能一些有阅历的程序员会成为一项技能的专业人员。你为什么不选择一个有需求的学科(一个技能或结构)深究,假设你这样做,那么你将成为一个肯定的大师,成为一个非常有价值的专家。一般来说,公司都希望能触摸到这样的专家。4.学习一种新的编程言语另一个进一步发展的或许性是学习第二种...

新手java应该怎么学?
答:第三:确定一个主攻方向。Java目前主要的应用领域包括软件开发、Android开发和大数据开发等多个行业。对于Java初学者来说,建议根据自身的实际情况和需求爱好,选择一个适合自己的主攻方向。从哪里开始学呢?1、java 基础 精通不用说,至少常用的应该精通。你一定熟悉JDK带来的一些常用命令及其常用选项。命令...

如何学好Java编程?
答:学好Java编程需要掌握一些基本的技能和知识。首先,理解Java的基础概念和语法规则是学好Java编程的基础。其次,熟悉常用的开发工具和框架,如Eclipse、Spring等,可以提高开发效率。此外,掌握面向对象编程思想和设计模式也是学好Java编程的重要一环。在千锋教育,我们的师资团队由行业经验丰富的专业人士组成,他们...

Java程序员初入职场应该注意什么?
答:一、注意察言观色 作为刚进入公司的Java程序员,学会察言观色是非常重要的,在职场中除了用技能征服别人之外,还必须展示你的情商,体现出处理事情的能力。在刚进入职场时,你对公司的每个人都不是非常熟悉,这个时候,昌平IT培训建议最好不要刻意的去讨好谁。但请记住尊重每个人并尊重每个人做的事情。

如何自学Java开发?怎么学
答:本人从自学Java开始,已经两年有余。现在到达的程度就是,敢接10W以内的项目,2个月内,再加一个美工就能把活完成得漂漂亮亮。以上属于废话,接下来才是重点,完整的把Java学习路线给你说下。1,HelloWord!首先,学习如何把这个单词打印在控制台。这点成功能给你点信心和乐趣。当然,如果你不会,怎么办...

新手应该如何学习Java编程语言?
答:二、学会使用搜索引擎 作为开发人员,了解使用搜索引擎找到问题的答案是非常必要的能力。对于程序员来说,北大青鸟发现很多人比较喜欢使用谷歌浏览器,可以用几个简单的关键字找到问题的答案。三、使用论坛参加讨论 在学习过程中,如果有人能一起讨论,那么对于加快学习的速度有很大的帮助。北京计算机学校建议...

自学Java如何入门?
答:一、Java基础 JavaSE基础是Java中级程序员的起点,是帮助你从小白到懂得编程的必经之路。在Java基础板块中有6个子模块的学习:基础语法,可帮助你建立基本的编程逻辑思维;面向对象,以对象方式去编写优美的Java程序;集合,后期开发中存储数据必备技术;IO,对磁盘文件进行读取和写入基础操作;多线程与并发...

如何学好java语言啊?
答:学习Java的四个阶段:一:Javase基础 二:网页三剑客html+css+js 三:JavaWeb和数据库:四:JavaEE框架:企业级开发,Struts2、Spring框架、Hibernate框架、Maven核心技术、MyBaits框架、高手进阶;如果找不到学习资源,可以点击这里下载。当你学完了Java,应该如何去找工作?一.最重要的还是自身技能,这是...

Java初学者如何学好Java编程?
答:2、学习Java编程的时候,独立思考很重要现在网络很发达,我见很多程序员总爱百度,包括我带的许多人都是这样,一个jdbc这么初级的东东,他们编程几年了,每次用还总是百度查。这个东西应该是熟记于心的,随时用,信手拈来,这样才能成为高手。就好像一个修理工,一遍查手册,一边给你修车,亦或是一个...

作为Java编程初学者,应该知道哪些事?
答:一,学习 加入Java一行除了学习,别无选择。掌握完整的Java知识,是程序员入行的基本技能。Java是少有的一旦开始就停不下来的技术,Java技术不断发展,更新,只有与时俱进,才能不被淘汰。Java要学的技术非常多,Java虚拟机,编程,多线程,前端开发,数据库,以及框架技术,二,实践 学Java重在实践。