计算机学习三宗罪——计算机达人成长之路(1)(转载自朱云翔老师笔记)

 

 

论道:(一)数学是基础

《数学分析》,《线性代数》,《操作系统》,《数据结构》,《离散数学》

计算机专业与其他非计算机专业相比,我们的优势就是专业基础课:

第一类、是数学基础课

第二类、基础课程就是计算机专业课程(其他专业可能只开编程课,比如Pascal编、Matlib编程、C语言编程,但不会开设很多专业课程,比如《数据结构》、《操作系统》、《编译原理》、《汇编语言》、《数据库原理》等等

 

 

三宗罪之一:冒进

追求‘时髦’知识,忽略专业基础知识的学习

比如还不知《面向对象程序设计》为何物,就到处看MFC设计;把《数据结构》《计算机组成原理》等课程抛到一边,直接设计某某系统;《汇编语言》和《密码学》不学,就钻营黑客与破解。今天流行VC就去学习VC,明天听说Java有潜力就去看Java,后天打听到Windows编程有趣又改读Windows编程。追来追去,最终学校的课程没有学,基础没打牢,哪些所谓时髦的东西自然也读不懂,结果是什么都没有学到。

整个大学阶段都应该是打基础。

招聘单位一般都会有两套试题分别针对往届生和应届生,前者涉及很多专业知识和开发技巧,但后者一般都是数据结构试题!而且招聘单位从来就没有期望应届生是某某项目组长,他们看重是否在项目组里干过,是否了解一些项目开发的基本情况,至于项目组长,他们会作为人才引进,而不是从应届生中招聘。还有,单位招聘应届生后都会培养,都需要进行专门的业务培训,没有人指望应届生能立刻成为业务骨干。当然单位都希望能够缩短成长时间,而对于不必备成长指数的应届生也会无情的抛弃,所以与其在大学期间学习所谓的‘时髦’知识,不如扎实掌握专业基础,以便于在参加工作的后能够快速的充电,缩短成长时间,尽快成为业务骨干。

三宗罪之二:浮躁

想编写一些所谓漂亮的、能够拿得出手的程序,而对于一些底层的支持程序置之不理。

其一,这些所谓的程序,往往只需要对知识应用,并不需要刨根究底研究知识的本身,甚至有很多加入了很多相当专业的内容,并不适合于初学者学习。比如VC中的MFC就是一个典型的误导初学者的工具。利用MFC可以很方便的编写出DIAG界面程序或者视图文档程序,从表面上看风光无限,但对初学者却祸害无穷!假如使用VC学习C++,大部分时间将用于消息的处理,控件的处理,还要阅读大量的视图文档结构类库说明,这些操作将耗费了你大量的时间,得不偿失。而且VC++的大部分编程是在某些位置插入代码,至于C++部分系统自动实现了,留给你的是纯C语言操作。同学请注意,你学习的是C++,不是VC类库,也不是VC操作!

其二,编写这些程序,往往伴随大量的交互式界面设计。事实上,编程有个二八原则,即编写80%的核心内容将耗费你20%的时间,而另外20%的功能将耗费你80%的时间。不幸的是,那些漂亮的给人风光无限的东东恰好就是耗费80%时间的20%功能,得不偿失!

 

 

计算机专业普通大学生欲比非计算机专业大学生更有优势,或者欲在同专业学生中脱颖而出,就必须精通专业基础

你可能感兴趣的:(计算机学习三宗罪——计算机达人成长之路(1)(转载自朱云翔老师笔记))