分享

计算机学生理想的学习计划(毕业总结)

 不想记住 2012-03-07
吉林大学牡丹园站 -- 主题文章阅读 [讨论区: CCST]

发信人: fuliang (liangzi), 信区: CCST
标  题: 计算机本科生理想的学习计划(毕业总结)
发信站: 吉林大学牡丹园站 (Sat Jun  5 22:18:00 2010)


一、利用一些容易被忽视的时间:
1、最大化自己的自学时间,提高自己的自学能力。有些课如果老师讲课只是在念书,那你
没有必要去上课,你完全可以利用这些时间学习到更多的东西,提高自己的自学能力。

2、不要对自己的成绩要求过高。考试成绩并不代表你学到东西的多少,特别是大学,很多
人为了考到90甚至100分,花费了大量的精力去死记每一个知识点,生怕有遗漏。如果说60分
万岁你觉得堕落,那么80分好了。其实从80到90~100需要花费大量的时间,80分基本上说明
你原理已经学明白,只是一些无关紧要的细节没有记住,而这需要浪费大量的时间(之所以
说是浪费,原因是考完试1个月,这两种分数的同学可以回忆到的知识已经差不多了)。可以
利用这些时间学习更多的东西,比如参加竞赛、写程序或者阅读与课程相关的经典书籍来加
深和扩展对所学到知识的理解。

二、学习方法和途径:
1、树立学习不是为了考高分而是为了提高自己的技能,为工作打下基础的观念。很多同学
考完试就把学过的课程抛之脑后,而一些重要的课程需要不断地阅读相关的书籍不断加深来
提高自己的技能。比如以为《数据结构》考了高分,就可以万事大吉,很多教材介绍的相对
浅显,可以学习一些更高级的数据结构,比如并查集、Trie、线段树、后缀树、
后缀数组、B+树等高级的数据结构,并多加练习。强烈推荐参加学校的ACM竞赛,经常去a
cm网站做题,这是对《数据结构》和《算法》等课程深入理解的绝佳方式,也是大学期间提
高自己编程能力的绝佳的途径。


2、尽一切可能提高自己的动手和实践能力。有机会可以参加开源项目,申请学校本科生创
新项目,参加学校组织的ACM竞赛,同时可以认识更多热爱编程的同学,虚心向他人学习。

3、经常去向csdn、javaeye等优秀的社区论坛中了解一些新的技术,保持对各种技术的敏
感性,最好拥有自己的技术博客,这样可以和更多的技术牛人交流。

三、要掌握哪些技术:(本文只介绍了偏软方向的,不适用于搞硬件方向的同学)
1、学习好第一门程序设计语言,咱们学校是C语言。学好第一门语言是自己提高自己动手
能力和实践能力的第一步,理解语言具备的基本要素,会写基本的程序。推荐教材《The 
C Programming Language》(C语言程序设计),学习方式:先把书中的例子敲下来,能够
运行出来,然后改造它完成一个类似的功能,或者把这个程序应用到实际中,最后完成书
中的课后题的代码。

2、学习好数据结构和算法。数据结构和算法是程序设计的基础,写程序其实就是用一门计
算机语言,利用数据结构和算法解决问题的过程,所以学习好数据结构和算法尤为重要。
推荐教材《算法导论》,学习书中的算法,参加ACM比赛,到ACM在线评测系统做相应的题
目,有一些对poj题目分类的帖子,也可以到joj上从易到难的做题,不要一直做水题。


3、学习好操作系统。操作系统的课程介绍了操作系统的一些概念和技术,但是如果不结合
实际的操作系统,很难理解其中的一些概念。学习使用Linux/Unix,开始学习一些shell脚
本、系统编程,理解进程、线程、信号、互斥量等概念。推荐参考书籍:
《操作系统概念》、《Linux入门经典》、《The Design of the UNIX Operationg Syste
m》、《Unix环境高级编程》。

4、学习好数学。计算机其实是一门数学的应用科学,数学知识是计算机的基础。《概率》
、《线性代数》在计算机中的应用最为广泛,另外《离散数学》也很重要,《高等数学》
其实关键是个极限和离散化的概念,至于如何去按照公式去求导、积分我感觉
并不重要。除了教材外推荐《Concrete Mathematics A Foundation for Computer Scien
ce》 Donald E.Knuth的经典之作。(如果此书还不过瘾的话,推荐继续阅读Donald E.Knuth的《计算机程序设计艺术》)


5、学习好面向对象的思想。咱们学校开设了《面向对象程序设计》的课程,用C++来讲述
,很多同学误将重点在C++语言身上,其实重点是理解面向对象的思想。当然可以同时把C
++语言学好。推荐书籍《C++ Primer》、《Thinking in C++》、《Effecitive C++》
、《More Effective C++》、《设计模式:可复用面向对象软件的基础》。

6、学习好编译技术。学习编译原理课程,实现实验课中的词法分析、语法分析、语义分析
。参考书籍:《Compilers Principles Techniques And Tools》,传说的龙书。

7、学习一门脚本语言。脚本语言和编译型语言不同,可以学习新的编程思维和方法。学习
正则表达式,基本的文本处理。推荐Ruby、Python或者Scala语言。推荐书籍:《精通正则
表达式》以及语言本身的经典书籍。

8、学习中大规模程序设计,并初步学习到软件工程的思想。可以学习Java语言或者Linux
下C开发,进行大规模程序设计。可以开始写自己感兴趣方面的应用,比如从一个小游戏开
始(比如单机俄罗斯方块游戏-->联机版俄罗斯方块),有机会可以参加一些开源的项目,
逐渐掌握复杂的编程技术。推荐《代码大全》、《重构:改善既有代码的设计》、《程序
员修炼之道--从小工到专家》

9、另外如果你想从事其他方面的编程,比如游戏方面,你可能需要自学一些相关的技术。


10、如果你有时间和精力去实习,那么尽可能去实习,来提高自己的实践能力、积累工作
经验。

11、提高自己的英语阅读能力,经常阅读原版书籍、在线文档。

当然最好是有兴趣才行,兴趣是最好的老师,马上毕业了,以上是本人学习中的一些经验
和教训的总结,希望对学弟学妹们有用。

--
Welcome to my blog:
http://fuliang.
http://blog.csdn.net/fuliangliang

﹋ . ,``,, ,  ,., ,.  ,,  ,, ,.  ,, ,
 ╱◥██◣  ,, ,.  ,,  ,, ,.  ,, ,.


※ 来源:.吉林大学牡丹园站 bbs.jlu.edu.cn [FROM: 219.217.8.*]


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多