新手程序员从入门到大师级别都会经历这些...

转载 2018年01月06日 00:00:00

从一个编程初学者,到一个程序开发菜鸟,再到技术高手、技术大牛、大师级人物, 必有一个成长路线。


作者根据自己的学习开发经历,一个程序员的成长之路可以按照如下循序渐进地学习。文章分为两大段,第一段为技术能力提升,第二段为职业能力提升。



1


技术技能



1. 初学编程:


找一两本优秀的编程语言书籍,按照例子敲代码。 每一种主流开发语言都有一些非常优秀的入门书籍。


如果国外书看得不大懂,可以先找国内编程书籍看看,一般国内书籍更注重技术和技巧,而国外书籍更注重思想和思路。



2. 内功修炼:


用所学语言,实现常用数据结构和算法, 可以习得编程的基本功底;初步涉猎一些优秀的编程书籍,比如《程序设计实践》 、《Linux 程序设计》、《数据库开发》等。


一般要涉及数据结构、算法、操作系统、数据库、网络等专业基础课程的学习和训练,这是成为专业程序员、编写更强大应用的必经之路。



3. 小试锋芒:


待编程功底修炼到一定阶段,就会参与项目开发,一般会从增删查改等基本功能开始练起,逐步实现更复杂的功能。 

开始做时可能会有点吃力,但一定要勇于尝试,跨越每一道槛,你都会看到更广阔的世界,功力会更上一层。


一般需要三个月到半年左右能够适应项目开发,独立承担项目功能模块开发和维护任务。



4. 熟练开发:


这一阶段, 你将大量接触开发工作,阅读已有项目的源代码,学习使用开发框架, 广泛涉猎各种编程书籍, 语言类、框架类、技术类以及思想类。


你将能基本胜任开发任务,实现功能, 对程序的质量需求有初步的了解和掌握。



5. 突破瓶颈:


成为一名较熟练的开发人员后, 将遇到第一次真正意义上的瓶颈——必须确定今后的技术方向。


在能够胜任日常开发工作的基础上,你希望能够提升自己的开发质量, 希望自己能够写出更加稳固可用的代码,希望自己能够深入框架内部实现,而不是停留在使用的层面。


因为使用框架会遇到比较棘手的调试问题,这也迫使你必须大量阅读优秀源代码,而不再着迷于编写那些初级的代码,更注重从系统整体角度来思考和解决问题,以实现真正的飞跃性进步。


突破瓶颈后, 才会从一名编程菜鸟真正晋级为一位技术高手,从技术高手到大师级人物的成长。



突破瓶颈之法:

1. 大量阅读和重用源代码, 建立一套行之有效的源代码阅读、利用和管理方法。


2. 更注重程序和应用的质量属性,从系统设计的角度去理解和实践开发活动。


3. 探索框架的内部实现、交互及使用,跨越框架。






2


职业技能



1. 初学编程:


沉浸于编程的乐趣中,主要是习得编程技能,与同学进行编程心得的交流,一般不涉及很强的沟通,此阶段主要注重编程技能的修炼。



2. 内功修炼:


主要也是习得基本的编程技能, 交流编程心得,需要参与程序文档的阅读和编写。在此阶段,最好能够同步提升英语阅读能力、技术交流、基础的文档编写能力。


有兴趣的话,可以邀请同伴一起来做一些小项目,此阶段注重编程技能的提高、技术交流能力、英文阅读能力和文档编写能力。



3. 小试锋芒:


习得更高级的编程技能(使用开发框架),与项目组成员进行讨论和沟通,表达自己的意见,编写程序文档, 浏览知名的IT网站和官方文档,学会用搜索来解决编程问题。


此阶段注重编程技术的学习、项目组交流能力、表达能力以及网络资源利用能力。



4. 熟练开发:


学习特定领域的编程技术, 阅读和探索源代码,项目讨论与决策,开发与维护, 学习软件开发工具的使用;编写程序文档, 可能的话,会涉及到与客户的谈话、沟通与系统演示工作。


此阶段注重软件开发活动的广泛学习和掌握。



5. 独立担当:


能够独立承担项目模块开发与维护, 与项目组成员顺利沟通, 形成自己的独特见解,具备一定的开发管理能力。


此阶段注重独立承担能力、较强的问题解决能力、沟通能力、表达能力以及一定的领导能力。


每个人的成长路线都不同,但一个优秀程序员的成长必定离不开良师益友。


有一些好伙伴可以一起编程、交流和成长,有遇到若干位好的导师、在人生路上给予很好的指引,遇到好的老板的指点和提携, 都是非常幸运的事情,当然,也是可以去努力争取的事情。


保持平静谦和,忌心高气傲,上帝会给予你最好的礼物。


公众号内回复“1”带你进粉丝群!

0?wx_fmt=gif

程序员、架构师、技术经理、技术总监和CTO有啥区别?

程序员 程序员,英文名coder/programmer,大家常自嘲叫码农的阶段。这个角色职责是把需求或产品实现为用户可用的软件产品。 此职位为执行级别。另外因为经验较少,一般需要求助别人,或与别人...
  • birthmarkqiqi
  • birthmarkqiqi
  • 2016年09月23日 14:29
  • 13716

从菜鸟到Android资深工程师的进阶之路

看到一篇文章中提到“最近几年国内的初级Android程序员已经很多了,但是中高级的Android技术人才仍然稀缺“,这的确不假,从我在百度所进行的一些面试来看,找一个适合的高级Android工程师的确...
  • mary_ml
  • mary_ml
  • 2016年01月18日 22:15
  • 4994

写给我们这些浮躁 不安的程序员

2010年初写过一篇博客(我们是一群和平年代充满浮躁与抱怨的程序员),一年过去了,社会好像更浮躁,也有网友问我这方面的问题,于是有了下面这篇文章,再次写给我们这些刚入行浮躁的程序员,如何成长,以下是列...
  • one423
  • one423
  • 2015年03月03日 02:28
  • 1806

web测试新手入门培训(小白级别).ppt

  • 2015年11月07日 20:35
  • 1.09MB
  • 下载

Java程序员上班那点事儿(java新手入门需知)

  • 2014年08月31日 22:50
  • 2.18MB
  • 下载

(入门菜鸟级别程序员)微信开发java遇到的难题,分享给其他新人微信开发者

我是一名菜鸟程序员,每天习惯到CSDN上逛一下,留意一下国内科技的趋向,因为我接触代码不够一年,所以很多都看不懂,而且也想成为大神级别的程序员,百度了很多,特别CSDN上的大牛都是说每天写博客,代码就...
  • pbpuccino_sone
  • pbpuccino_sone
  • 2015年06月23日 21:39
  • 523

对于入门级别程序员如何避免bug

好多刚刚工作一两年的朋友,最头疼的事情莫过于bug满天飞,测试小妹每天深情的呼唤你。 其实,很多bug在写的时候,其实可以规避,于是我们谈谈几个常见的bug孵化器。 1.理所当然的认为前台...
  • ZFinder
  • ZFinder
  • 2016年12月21日 22:29
  • 144

网络游戏程序员新手入门 [转]

原文地址: http://job.17173.com/content/2008-12-15/20081215172107441,1.shtml 游戏开发流程和部分分工     流程:调研 -- 开...
  • BoYueJiang
  • BoYueJiang
  • 2013年05月10日 00:09
  • 1001

写给程序员新手的话——(2)入门

写给程序员新手的话——(2)入门 2011年12月20日 陈志远         如何快速入门了?很多人都会问这个问题,答案是:没有,是的没有捷径。所以我这里不讲“如果快速入门”,而是讲“...
  • SunnyChen
  • SunnyChen
  • 2011年12月20日 10:30
  • 796

新手指南:DVWA 1.9 全级别教程

  • 2017年01月03日 20:45
  • 12.96MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:新手程序员从入门到大师级别都会经历这些...
举报原因:
原因补充:

(最多只允许输入30个字)