编程入门学习周期
相信很多刚准备入门的朋友内心都有期待,就是能不能快速成为高手,然后找一份高薪的工作。毕竟很多培训公司的广告,一些速成的书籍,都是打着24小时从入门到精通,三个月包学会等等噱头,让我们心里瞬间觉得编程开发很容易。这里我要给有这样想法的朋友泼冷水了,如果真是这样,劝你早点放弃,换其他赛道。
我们要有基本的认知,任何一行知识,都有积累的过程。即使你是天赋异禀,也难以24小时速成。何况这是一个考验实际技术的职业,知识需要经过实际项目检验才能被认可。一般软件开发岗位的职级成长周期:
初级开发工程师:1-2年工作经验
(图片来自网络侵删)中级开发工程师:3-5年工作经验
高级开发工程师:5-7年工作经验
技术专家&架构师:7+年工作经验
上面列的是大部分人的周期,也是HR和实际用人项目组在给你评级时会考虑的很重要一个因素。另外还跟你工作内容息息相关,不是说年限到了,你就能到相应的职级,年限没到也可以获得高评级,如果无论你的认知能力还是实际动手能力都到了要求的话。
编程入门最佳学习方法大家都经过九年义务教育,擅长解题。我学习编程开发的方式就是在解问题中快速成长,我造个词,管这个方法叫<问题驱动学习>方法(Question Drive Learning), 简称QDL。
既然是问题驱动,首先明白自己的问题是什么,要实现什么目标。比如刚入门,在选定方向后,目标首先要搭建好学习环境,那么我们的问题驱动学习过程的大约如下:
1.选择什么开发工具?可以了解到主流的开发IDE有哪些,比如IdeaIJ,VS
2.在什么系统上开发?大部分服务环境都是linux的,起码要学习常用命令
3.第一个example如何写? 学习大致语法,知道main函数是什么。
4.刚刚代码运行好好的,改了一下就报错了,不知道改了哪里?学习版本管理工具
5.如何调试代码?学习有哪些调试方法,本地调试如何断点,条件断点;线上环境如何调试等
6.项目文件越来越多,找文件花费时间,怎么快速定位?学习IDE的快捷键提高工作效率
....
当不断提问题解问题的时候,技能点就会不断点亮。你只需根据自己的目标不断罗列问题,由浅入深,从点到面,把学习到的知识点,按照自己方式组织起来,做到举一反三,融会贯通,那么就会越学越轻松。总结起来就是:定目标-提问题-解问题。
自学编程的问题为什么要单独把自学拎出来讲?原因是大部分人一开始都是奔着自学成才的目标去的,包括我自己。编程开发是一门需要持续学习的职业,自学能力必不可少。但完全自学容易半路放弃,核心点是目标不清晰,遇到问题容易卡住。如何解决这个问题?
不花钱的方法,千方百计的找关系牵线搭桥,认识这一行有经验且能带你的人,线下如找亲戚、同学、师兄师姐、校友、朋友的朋友等等,线上就去各大论坛,APP发问题或私聊,找如我这样的有热心肠(自夸一个[憨笑]),愿意免费解答的博主咨询。
花钱的方法,花钱的要把钱花得值,特别选择培训机构要慎重,容易打水漂。除了培训机构,我上一篇问题也提到了,我的建议是可以找一对一教学的老师,可以快速学到老师的经验,还有他的人脉说不定也能帮上忙。
编程大部分时间靠自学,老师的作用就是在关键点帮你渡过难关,其他时间靠自己。所谓师傅领进门,修行在个人。
总结本篇主要目的是解决大家的思维问题,先有一个正确的观念和学习方法。下一篇进入实战篇,用QDL的学习方法,讲解搭建开发环境和第一个入门case。选用的语言是JAVA,需要需要C/C++、Python等版本,也可以留言。
关注或评论可得一次语音或视频的沟通机会, 免费一对一解答。