自学软件开发难吗?

近几年,IT界的软件开发工程师可谓是火的不得了,北上广等地区月薪万元以上的不在少数,即便是两三线城市有个两三年经验拿到万元也不是问题。因此笔者周围就有许多人对此流露出极大的兴趣,那么问题来了,对于学习难度颇高的软件开发,究竟是自学好还是培训好呢?在这里整理了一些建议给大家分享。

学习软件开发自学的人

一.“自学”往往很低效

  1. 首先从学习的难度上来讲,自学肯定是难度很高,面对一个陌生的行业而且还是很有难度的东西,学习起来难度肯定是非常大,没有老师指点,需要自己去摸索;在学习知识面上,自学毕竟是靠自己摸索,一些知识点的掌握可能不太全面,基础知识或多或少的有所缺陷。
  2. 过去经常听到的一个误解:在美国生活的华人英文都说得很好。我曾经也如此认为,但去美国念书之后,我才发现事实完全不是这样,很多中国留学生说英文时,发音依旧不准确,带着很重的口音,而且还会犯很多语法错误。
  3. 这是因为,对于那些没有太高语言天赋的成年人来说,发音和语法能力的提高不是一个自然习得的过程,而是需要依赖大量有意识的纠错,即所谓的“刻意练习”,与是否处于英文环境无关。如果你意识不到自己的错误,不去刻意纠正的话,那么即便是在一个英文环境,你也只能是原地踏步。
  4. 如此看来,“自学”之所以低效,原因主要有两个:第一,你不知道什么是正确的,第二,你意识不到自己的错误。这两点都将导致典型的无效努力——重复错误的事情。

二.自学也有自学的好处

自学也有它好的地方,自学出来的工程师一般自学能力强(一个人耐得住寂寞,默默自学),在这个行业很重要,软件开发是一个不断学习新知识的行业;还有解决问题的能力很强(开发过程中必须会出现很多bug),全靠自己一个人摸索,一个人寻求解决的办法。最后自学可以节省很大的培训费。

三.技能学习四个阶段

为了让学习更高效,我们有必要了解一下与之相关的理论,其中最有价值的一个理论叫“Conscious Competence Learning Model”,它完整地描述了初学者从零开始到熟练掌握一门技能所需经历的四个阶段。

  1. 第一阶段叫做不知道自己不知道。举个例子,你在说英文时,有个发音是错误的,但你自己不知道。
  2. 第二阶段叫做知道自己不知道。也可以理解为“学习阶段”,其核心目标就是了解“正确”,或者说“好”的标准是什么,有了标准我们才明白努力的方向在哪。
  3. 第三阶段叫做有意识完成。知道了什么是正确的并不意味着就能做到,在这个从“不会”到“会”的过程中,我们需要进行大量的“刻意训练”。毫无疑问,在练习过程中,我们会不断犯错,要实现高效的努力,我们就必须敏锐地觉察到这些错误,并及时进行纠正,只有这样,我们才能通过不断降低犯错的次数来让自己进步。从某种意义上来说,成长的关键就在于暴露和发现自己的错误,然后进行修正。
  4. 第四阶段叫做无意识完成。当某个技能成为了一种“本能”,不需要意识参与就能熟练完成的时候,我们便达到了最后的阶段。这个时候,我们不再需要去想“技巧”的问题,因为它已经成为了我们的一部分。

三.培训的两大作用

如果说“自学”的主要问题在于我们不知道什么是正确的,以及无法意识到自己的错误,那么培训最关键作用就在于,首先他们能够在学习过程中告诉我们什么是正确的,为我们指明努力的方向,其次在练习过程中,他们能够及时指出错误,并帮助我们纠正。

很多人可能会认为,只有在最初学习的过程中,我们才需要培训,其实不然,就算你已经知道了什么是正确的,培训的作用还是十分关键,因为从开始学到真正熟练掌握需要经历一个漫长的训练过程,由于缺乏经验,我们经常意识不到自己的错误,即时有时能意识到,也可能会因为还不太熟练而无法有效地纠错。举例来说,有人学会了打网球,可以开始对打之后,就不再请教练了,而是找同伴来打。这会有什么问题呢?你的进步会很慢,因为很多技巧你可能还没有掌握好,而同伴则很难指出你需要进步的地方,所以,在还没有熟练掌握网球技巧的时候,最好还是保持有教练参与的训练。

为了追求高效的学习,避免无效的努力,每当开始一个新领域的学习时,我都会找机构对自己进行一个专业的培训。培训不仅能领我入门,更重要的是,他们能够在我成长过程中不断给予反馈和指导,比如,在去年重新学习书法的时候,虽然曾经学过,我还是请了一位书法老师,然后通过上课,系统地学习了书法的笔画、结构和章法。在日后的练习中,我一直和老师保持联系,经常会把自己的练习作品发给老师看,以求指点,而老师每次的反馈,都能让我有不少提高。

那么培训的好处也是很明显的,可以快速的进入软件开发这个行业;因为都是老程序员教学,所以学习的知识点比较全面;最后呢由于周围是一大群又有相同目标的年轻人,所以学习的氛围也是非常好,对于一些自控能力不足的人可以多多考虑。

四.找一个高的培训机构很关键

自从软件开发火起来之后,软件培训之类的机构也如同雨后春笋般冒出来。对于培训来说,首先培训费特别贵,一般四五个月的培训费都是在2万左右。

其次培训毕竟是一种取巧的办法,一般学校出来的学生都是学习几年的(前提是认真学习的同学,一些没有认真学的有些还是选择培训),培训仅仅四五个月也是不够,因此就造成了一种后果–急于就进,培训老师将一些项目直接教给学员,学员照搬,最终限制了学员的思想,不过这都问题不大,程序员经过后期的努力,掌握了充分的知识以后也也会形成自己的思想,不在依赖老师。

最后还有一些机构(个别)交给学员面试经验,给学员讲,面试时候告诉HR自己是两三年经验。

毫无疑问,一个优秀的软件开发培训机构可以帮助我们节约不少的成本,所以我们也要对这一个领域有所了解,关于这个问题,我们潭州软件开发培训机构也为大家做了很多的考虑:因为知道新手们很迷茫,所以现在每天免费为大家讲课解答,为初学者们免费普及关于软件行业的一切问题,现在立即加QQ:2669917937丨丨即可获得免费听课,8年以上实战经验老师为你做相关解答,还有专门的QQ交流群,你们可以在这里得到一切答案。

未经允许不得转载:软件开发培训 » 自学软件开发难吗?
赞(0)

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址