如何自学成为程序员?
我不建议你从“基础”开始,尤其是什么:C语言,数据结构,离散数学……之类的,那是把你逼疯的节奏(感觉这是知乎学院派的风格)。如果你自觉是神人级别的,当我没说。
其实软件工程发展到今天,编程已经是一个很“职业化”的技能。业内自嘲“IT民工”,每天“搬砖”之类的,就是这种现象的反应。不扯远了,总之一句话,基本上都是些是个人都能学会的技术,没有什么神秘的。某些培训机构招一些高考失利的考生,培训两年就把他们往公司里送,他们也一样能胜任工作。所以自学也不是件难事。但前提是,你走对了路。
如果你从二进制、编译原理、数据结构……这些开始,我估计你陷在里面就出不来了——除非有名师指点或者天赋异禀,再或者有大机缘?
不要急着做这些“学究”式的学习研究,就像学开车一样,不需要你从发动机原理学起是一样的。程序/语言是让你用的,就像车是让你开的,明白了这一点,你就可以立马轻松100倍。
所以,先选一辆“好开“的车,迅速的跑起来,享受这种微风拂面的快感和刺激,才是最重要的。
由于你的问题过于简单,我不知道你成为程序员是想干什么,所以无法给你具体的建议。大致的:
如果你是想做网站,可以向从静态页面(Html、CSS、javascript)入手,做一个漂漂亮亮的页面出来,先;然后加上一些功能,比如可以发布一篇文章,自然就需要构建动态页面的语言,我推荐http://ASP.NET,原因无它:好上手。当然,你还需要数据库,我推荐MSSQL,原因无它:好上手……这样一步步下来,你很快就能看到自己的成果,可以不断的产生自激励,你才能走得更远。
其他方面,我不是很了解。但大致思路查不多,你想学游戏,就尽快弄出一个坦克大战出来;你想学Android,就马上整一个小APP出来;你想做嵌入式,就尽快弄个小机器人出来,呵呵。总之,要尽快做出东西来,丑也好俊也好,都要有个东西放在那里。看着自己的作品一点点成型的快感是难以言喻的!
这就是我反对从数据结构,离散数学开始的原因,一是这些东西很难学,更重要的是,费了九牛二虎之力,学了你也就学了,你能用它干什么?学这些应该是你有了一定的基础,需要进一步提高钻研的时候,才应该考虑的东西。
+++++++++++++++++++++++++++++++
安利一个自己早年的经历:
从包工头到程序猿·一起帮
17bang.ren
++++++++++++++++++++
最后很煞风景的加个推广,两个QQ群:
飞哥办了一个IT培训班,http://ASP.NET全栈开发,线上全程直播,可以免费收看;线下拎包入住,按周收费。如果你有兴趣了解一下,可以加QQ群:729600626(一起帮·源栈·有意向)另外一个QQ群:716207562(一起帮·老码农-4),也不说啥交流啦,就吹牛灌水,老码农小菜鸟打发时间聊聊天O(∩_∩)O~