乐于分享
好东西不私藏

给计算机软件专业大学新生的大学四年规划

给计算机软件专业大学新生的大学四年规划

给计算机软件大学新生的话

——大学四年该怎么过

一、核心忠告:专注一门,精通为止

不要在多门编程语言间徘徊,把一门语言玩熟了,其他语言都是纸老虎。

很多同学问我:「现在C#、Java很火,找工作都是招这些语言的,我是不是应该去学?」

我反问:「你已经学C++半年了,刚把基础语法学了个大概,又要去学C#,这不是又浪费半年时间吗?等半年后你又发现Java不错,再去学Java基础,这大学四年就全在'学语言'了。」 

二、学游泳的比喻

学编程就像学游泳:

• 目标派:想把蛙泳、自由泳、蝶泳、仰泳都学会,那样才酷

• 折腾派:蛙泳练两下、自由泳练两下、蝶泳再练两下,折腾几个月什么都不会

• 聪明派:从蛙泳练起,把蛙泳游顺了,有了「水性」,再学自由泳就很快

编程同理:假设学会基础语法需要3个月,找到「编程感觉」需要9个月。

• 如果专注一门语言:12个月后达到「编程感觉」

• 如果两门语言交替学:24个月都未必能达到

三、过来人的教训

我大学大部分时间都在搞Delphi,找工作前只突击了半个月Java,就拿到了Java工程师的Offer,还是笔试成绩第一名。

大一大二时我也走过弯路:感觉Web开发「有前途」,放弃了刚有点感觉的VB,去学ASP、PHP、JSP,结果什么都不会。

后来一门心思搞Delphi,搞熟后再看ASP、PHP、JSP,发现本质都是处理Form、Session、Request、Response、Cookie,大同小异。

四、不要追社会热点技术

「学了一阵子C#,又发现J2EE、J2EE很火,学Java多好呀」——这是死循环。

按热度追:C#、Java已是过气明星,新语言又出来了,累死你也追不完。

事实上:

• IT技术更新一点都不快,是改良性的,不是推翻性的

• 新技术解决老问题的不同只有10%,90%的根基完全相同

• 同一目的,不同实现方式,差异性很小

五、精通一门,其他轻松上手

担心:「一直搞C++,C#、Java职位就放弃了?」

不必担心!把C++玩熟了,找工作前对照C++和C#的异同点突击一下,很快就能从C++高手变成C#高手,照样能打败那些「自称精通C#」的人。

六、一个常见的学习计划(请勿模仿)

很多同学列过这样的「伟大计划」:

编程语言:C#、Java、C、C++、JSP、PHP、Delphi、Python、Ruby、Perl……

数据库:SqlServer、Oracle、MySQL、DB2、PostgreSQL、SQLite……

.NET技术:WPF、Silverlight、WinForm、WCF、Linq、MVC……

结果:大而不精,浪费时间。编程语言选一门足以,数据库找一个就行。

七、学习三境界:知、信、行

朱老师的三个字道出了学习的本质:

知:知道这个道理

信:相信这个道理

行:照着这个道理去行动

只知不信,不如不知。只信不行,不如不信。只有「知道、相信、行动」三合一,才真正属于你。

八、结语

选定了语言就不要移情别恋。用情专一,让自己找到编程的感觉,以后根据实际情况很轻松就能另寻新欢。

编程的本质是什么?把自己的思想转换成计算机的思想。能熟练完成这种转换,什么语言都一样。

记住:

「一通百通」——这才是大学四年该追求的东西。