写给学软件的师弟师妹们今年软件工程被提升至一级学科,没有挂在计算机科学之下了,而且软件学院开始招收工程博士生了,真是可喜可贺。 我读软件学院本科的时候,软院才刚成立不久,35所示范性软院之一,那个时候想找个师兄问一问大学四年该怎么度过,软院第一届的师兄们都还没毕业呢,也很懵懂,咋给我经验呢。只好自己摸索着学习了。现在,我从软院研究生毕业了,就让我来给大家讲讲在软件学院的本科该如何学习吧。 大学本科的教育重点是基础教育,软件学院也应该是(但实际做法可能不是)。大家不要把诸如j2ee,.net当成什么不得了的技术,你们去大专学校的主页看看,现在大专生都学这个,而且只学3个月,如果你大学本科四年只会这个东西,那你学到的东西真的很少。 我觉得本科就是要掌握基础知识,学软件首先需做到两点: 第一、精通一门编程语言; 第二、精通算法。 做到这两点,你本科毕业就能找到不错的工作了。对于找工作,都是锦上添花的东西,利用大三的选修课,或者大三的暑假学学吧,大专生都只学三个月的技术,你难道要学四年吗?切不可本末倒置,得了芝麻,丢了西瓜。下面从时间分成四个主题,按时间顺序来说明我认为在软件学院大学四年该如何学: 精通一门编程语言 讲讲大一。如果你中学的时候没接触电脑,那就先练习一下打字吧,因为打字太慢会影响编程的,安装一个金山打字通,每天睡觉之前打字30分钟,坚持一个月。买个笔记本,现在笔记本便宜了,不像我上本科那会用台式机,配置的话内存至少2G,CPU频率过得去就行,价格在4-5k就可以,实在没钱就买神舟笔记本,据说有几款性价比不错。 大一是肯定学编程语言的,不管学的是哪门语言,都要做到精通。精通一门就好了,开始的时候别想学太多,这样对你掌握语言反而不好。我建议你学C++,因为我学这个,嘿嘿。学习C++,主要是学习面向对象的思想,还有要清楚C++是如何分配内存的,以及派生,多态,重载,虚函数,构造析构,STL等,特别关注内存泄露。如果是入门学习的话,建议你看看书籍《EssentialC++》,《C++Primer》,然后再去读读《C++编程思想》,《EffectiveC++》,《深入理解C++对象模型》,《设计模式》这几本书。编程环境建议使用VC++,。 如果你是想做java程序员的话,java就简单许多了,经典的书籍也很多,比如《Java编程思想》,自己网上搜一搜吧。 当然,大一你可能还会学其它东西,但是精通一门编程语言是你最重要的任务。 算法是软实力的体现 大二的时候,该学数据解构和算法了吧。软件学院的学生,常号称自己动手能力强,真的强吗?你听说过ACM竞赛吗?如果想证明自己动手能力强,就该去参加这个程序竞赛,,只会拖控件这也叫动手能力强?想想自己本科那会真是天真啊。 如果你用大二一年的时间去参加ACM竞赛,这绝对对你的职业生涯产生不可估量的影响。如果你基础好,应该从大一的下学期就参赛。最好经常去北大,浙大的ACM网站做题目。买几本算法书,如果是入门级别,给你推荐的书籍有:《数据解构与算法C++描述》,《算法竞赛入门经典》(刘汝佳),《编程珠玑》,提高的书籍有:《算法艺术与信息学竞赛》(刘汝佳、黄亮),《实用算法的分析与程序设计》(吴文虎、王建德)。这些书在书
写给学软件的师弟师妹们 来自淘豆网m.daumloan.com转载请标明出处.