一位在校的大二学生朋友给我发邮件,内容如下:
您好,我是名在校的大二学生,我已经很认真地看完您写的文章,心有感触,我有些问题想请教您!
1、从事软件开发对需要具备怎样的编程技能?现在我总觉得算法是比较难,有些算法一点都不理解,感觉在这方面很困难,因为暑假一直想自学算法的,但学了几天,实在是学不下去了。您能给我点建议如何学习算法吗?
2、在软件开发的过程中,算法是自己写的还是网上有源代码???那如果是网上抄代码,还需要理解得多透彻????
3、英语是否要考6级才好就业,英语对计算机行业有什么影响???是否一定要考6级?
我的答复如下:
同学,你好!
读了你的邮件,我还不能了解你现在的基本情况(包括你的专业、学习状况等)。以后给其他人发邮件咨询,请记得先告知自己的基本情况。
下面,我来回答你的问题。
(1) 从事软件开发需要具备怎样的编程技能呢?我总结了一下,需要具备的技能(不仅仅是编程技能)包括:1) 熟悉或精通至少一门编程语言;2) 对计算机的运行原理有一个比较清楚的认识;3) 快速的学习能力及灵活的应变能力。很多人都以为在学校里面要学很多很多东西才行(我在学校的时候也这么认为),但实际却不是。只要你熟练掌握了一门编程语言,其它的很多东西都是需要在实际工作中来学习的。当然,在大学里面,你要尽可能的多了解一些东西,以后在工作中用到时,才能够很快地回忆起来,才能够找到学习的途径。
(2) 对于算法的学习,我建议你不要按照书上的章节来学习,那样非常的枯燥,而且效率也很低下。你可以在算法论坛(如CSDN的算法论坛)上面去找一些有意思的问题,然后看自己能否编写算法来解决。在解决的过程中,你要随时翻看算法教材,加深理解。当一个问题被解决了,你会很有成就感,而且你也在不知不觉中体会到了算法的妙用,达到了课堂教育达不到的效果。
(3) 在软件开发的过程中,算法大部分是自己写的。千万不要认为网上什么东西都有,那些东西很多都是错误的,也是不规范的。
(4) 对于英语的要求,一般说来,本科毕业是要过四级才好找工作,而且很多学校要求学生要过英语四级(至少是校内四级)才能拿到毕业证。当然,你能够过英语六级最好。鉴于中国IT行业基本是山寨美国的多,英语对计算机行业的影响是很大的。很多先进的技术资料都是英语的,因此,你要能够读懂英文资料,这是对一个IT从业人员的基本要求。
另外,我提个小小的建议。由于当前大学本科的计算机教材很多都是落后的,因此,你可以经常访问一些技术博客或论坛实时地获取一些知识,这样对你的学习也是很有好处的。
最后,希望你好好珍惜在校的时光,努力学习。请继续关注本人博客。
周兆熊
2014年9月17日
(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,微信号:245924426,欢迎关注!)