如题:没必要参加嵌入式开发培训班
你想知道为什么的话,就请接着向下看.我相信你会收获很多的.一定要耐心看完哦,你会收获很多的,相信我!尤其是最后面我提供的资源
可能在5年前甚至3年前我的回答是错误的,这点我可以坦白的讲,在5年前,android并没有大规模流行起来,而且ios系统也刚开始步入角色,现在回头看看,你会发现nokia随着symbian平台的不给力已经导致nokia公司的颓势有兵败如山倒的感觉了,各大公司开源使用android,赚得盆钵满体的,在这么大的金钱背后,也催发了一类工程师,他们就是嵌入式开发工程师,时代造就了他们,很多在这个浪潮中的工程师也赚了一大把的票子.此是背景,
于是乎,很多的培训机构开始瞄准了嵌入式开发,早前5,6年前培训班的课程从java开发到php开发,再到.net开发等等,这些开发培训班给社会送了太多的人才了,而且人才有点泛滥了,很多技术人员水平参差不齐也就上岗了,所以导致满城尽是搞java,甚至满城尽是程序员.吃饭的人多,难免做饭的人有些心力憔悴了.理所当然,培训班在嵌入式开发打的口号都是包就业,月薪必过5k之类的等等,有时候我感觉这广告有点mad了.总之我感觉,我们应该理性的来看待嵌入式开发这个行业,而不是像培训班所谓的5年年薪几十万多少万等等,倘若一个人纵使是嵌入式开发工程师,但是游手好闲不思进取,那岂不是也没啥好前途?一切还得靠自己,你说对不?
本人曾经在嵌入式开发的培训班接受过培训,也看到身边的学员最后学完的整体情况.总之,个人感觉,在中国这种偏金钱利益过重的培训班,短短的几个月培训,填鸭式的教学,学生是学不了太多的东西的,只能说是学个皮毛,或者学个思路,所以,昂贵的学费,也就为了买个皮毛或者思路,倘若有人给你指路,你还会拿出这上万的学费送给培训班的大老板们啊?本人也是有了经验才写了这篇文章,所以,也算本人之前愚钝,竟然会去参加培训班给大老板们送钱去.
前所说的面也算是一堆的废话,有人知道有人不知道,聪明的人可能提前都知道以上所说的,有些人可能还不知道,这里希望你也知道,知道以后,就不用再给大老板们送钱了,我们还是靠自己的脑子和双手来学习吧,自己给自己找路子(其实互联网足够的资料已经给你铺好路子了).注意我想说的是:从互联网找路子,比如从我这篇文章开始找路子,然后再一步步自己找路子,不要拿着大把大把的钱去找路子,这不值得,你想想含辛茹苦的父母,你就会宁愿自己稍微努力一个礼拜找路子,也不愿意去找培训班找路子了.
从嵌入式开发这块来讲,各大培训机构的课程无非就是以下,可能顺序有些不同,但是大体都是雷同的,而且本人也从事嵌入式开发的某块,所以,路子还是把握很到位的,各大培训班的路子基本都如下所示:
1:程序开发基础
C语言开发基础->Linux系统熟练操作->Linux下C语言开发
2:处理器开发
ARM处理器体系结构->ARM指令以及ARM应用
3:平台开发
ARM平台上uboot移植->ARM平台上kernel移植->ARM平台上根文件系统搭建->Linux下的Qt开发->ARM平台上android系统搭建->ARM平台上Qtopia系统搭建
4:驱动开发
ARM平台上的驱动开发
培训班的大部分课程基本都如上所示,下面我来细细给你分析,告诉你为什么你不需要去培训班.
第一部分的课程主要是让你有一个开发的语言基础,还有对一个操作系统Linux的熟练使用.众所周知,Linux是开源的,所以,很多Soc的芯片直接搭载Linux为核心的系统,毕竟免费的大家都喜欢.
那么这个C语言的基础的话,你可以百度搜索下,那么多的C语言教程,自己下载一套来学习岂不是非常划算?反正培训班的老师也好不到哪里去的,很多互联网上的教程也是相对不错的老师录制才放到网上的,敢情一个很垃圾的视频还敢放到网上岂不是找骂?
Linux系统的使用,我个人建议,要么看视频学习,要么就买一本<鸟哥的Linux私房菜>基础班第三版,绝对可以学会,要是学不会,那我只能说下面的文章你也别看了,连Linux都掌握不了,未来的各种移植还是不做的好了.
Linux下的C语言开发,同样的,你也可以自己找相应的视频,比如国嵌的开发视频,网上都有很多的资源的,只要你努力下去搜索下,便可找到自己的资料了.Linux下的C开发,让你了解下Linux系统里面的各种机制,比如Linux的进程,还有Linux的通信以及更多有关Linux的特性.这块推荐一本书<UNIX环境高级编程>,这本书是业内最棒的一本书,可以买一本.
第二部分的课程主要是学习处理器的体系结构,因为在移动领域,还有智能家电这块,ARM芯片的处理器非常适合,所以,各大培训班也都学习ARM处理器了,当然,处理器的很多知识也都是一脉相承的,X86处理器跟ARM处理器其实都大同小异的.
ARM体系结构的学习,可以买一本杜春雷的<ARM体系结构与编程>来学习,或者百度下载视频,网上是肯定有的,就怕你不去搜索,你只要努力搜索下,你会发现国嵌也有这块的视频,而且是免费的,所以,果断拿过来自己学习即可了
ARM的指令,其实在体系结构有的学习的,不过本人单独列出来,只是希望你熟练arm指令的使用.
第三部分的课程想必是很多人最感兴趣的一块了,可以自己移植各种开源的软件到Soc板子上,所以,既然这么感兴趣,互联网也一样感兴趣啊,所以,这块的资料一搜一大堆.这部分就需要你买一块开发板了,市面上板子也非常多,个人感觉买个mini 2440,或者买资料丰富的板子即可,一定要配套资源丰富的,好的卖家会把一套资料都送给你的,很值的.在淘宝买即可了.
第四部分的教程也是最感兴趣,但是相对前3个部分,驱动是最难的一块,主要是驱动涉及到的知识太多,融汇了上面三部分的各家精华,但是网上还是有一大部分的视频教程,依然可以学习.
当你前三部分学完的时候,已经可以找工作了,工作的性质可以是:Linux下的C开发工程师,也可以是系统移植工程师,也可以是Linux下的Qt开发工程师等等
看完以上我的描述,你是不是有点小心动了,感觉互联网真的这么多资料?我告诉你,没错,努力去找下吧,下面是本人推荐的资料,可以参考下:
==============================================================================
C语言基础开发:http://sdrv.ms/11gUahf
C语言进阶开发:http://sdrv.ms/11gUcFK
Linux系统学习:http://sdrv.ms/11gUht8
ARM处理器开发:http://sdrv.ms/11gUmwU
Linux相关的精品书籍:http://sdrv.ms/Wf7xIQ
韦东山的ARM处理器以及ARM系统移植课程:http://www.simplecd.me/entry/1lredTSw/ (倘若时间久远链接失效,那就靠你自己去找资源了哦)
韦东山的ok6410开发板裸机学习教程:http://www.simplecd.me/entry/Nok4T68z/
国嵌的开发课程,一整套的,当然国嵌有部分课程是需要钱买的,不过我们网上都有替代它的,暂时不需要买的,没必要买的:http://www.enjoylinux.cn/videos.asp (倘若时间久远链接失效,那就靠你自己去找资源了哦)
驱动开发书籍:<linux设备驱动开发>这本书足以,是大牛写的,看完绝对会写几个基本的字符驱动了.
申嵌开发的一位老师也贡献了一套视频:http://www.cnblogs.com/hanson/
==============================================================================
综上所述,集百家之长,我们也能打造出一套培训课程了,对不对?所以,你还去不去培训班呢?如果家里有钱,懒得去自己找,懒得去思考,那你还是去吧.
最后希望各位沉下心来学习,制定好计划安排,相信你一定可以步入嵌入式开发的大门.如需转载,请标明原处.
附:
原文出处:http://www.jyguagua.com/?p=817
极具价值参考的帖子:http://www.jyguagua.com/?p=601
勤奋的小青蛙
2013.2.3