学习啦 > 学习方法 > 通用学习方法 > 学习经验 > 怎么正确有效学习计算机专业

怎么正确有效学习计算机专业

时间: 欣怡1112 分享

怎么正确有效学习计算机专业

  在当今信息技术迅猛发展的时代,不少同学选择学习计算机专业。选择计算机专业的同学,应该怎么正确有效学习计算机专业呢?以下是学习啦小编分享给大家的学习计算机专业的技巧,希望可以帮到你!

  学习计算机专业的技巧

  一、广泛了解,从科普书籍开始

  选择计算机专业的同学,也许是因为原先有一定的基础,也许是因为一时的激情,但更多的人,可能对自己的选择没有深刻的认识,或多或少对计算机专 业有一些神秘的感觉。自己究竟是否喜欢这个学科?才华能够在哪个分支领域有所施展?抑或是真的不适合这个专业?诸多疑问,解决的方法首先便是了解和认识我 们的学科。浓厚的兴趣是学好任何学科的源泉;而广泛的了解则是获得兴趣的途径。当今我们对于信息的获取已非难事,其中“阅读”是一个简洁而有效的方法。

  也许你认为阅读专业书籍对于刚刚步入大学的自己来说有点困难,也很枯燥,那么不妨先从科普书籍看起。科普书籍是了解理论、获得应用知识最好的途 径。相信不少理工科的同学被量子物理和相对论搞得头昏脑胀过。究其原因,是我们的现实生活与抽象的数学模型之间存在思想意识上的鸿沟。

  然而要是读读斯蒂 芬·霍金的《时间简史》,你就会被书中有趣的故事和例证所吸引,从而对抽象的理论有了感性的认识——即使仍然没有读懂,你也至少了解了这个学科研究的领域 和目标是什么,也必然有所收获。所有理工学科都有这样的性质,计算机专业也不例外。

  我们知道,计算机理论是建立在数学基础之上的。大学计算机专业对数学的要求较高,其重要性不必多言。数学令不少同学头痛,除了其“繁”与“难” 外,很大程度上是因为他们没有理解这些抽象理论的实际应用方向。与本科数学专业的课程设置相比,计算机专业的数学课程大都偏重实用性。比如我们的离散数学课程中涉及到的逻辑代数奠定了计算机一切运算的基础,形式语言构成了计算机程序编译的模型,代数系统则是当前各类数据库系统的理论依据等等。

  因此,如果能够提前地了解到并简单地学习一下这些数学知识的具体应用,对理解理论是很有益处的。此外,电子学、信号与系统、控制理论等也是计算机专业学生必修的公共课,然而不少同学往往认为它们与计算机专业的关系不大,从而放松了学习。事实上这些学科是计算机硬件与网络通信的基础,学好这方面知识的前提是认识它们的现实应用及其与计算机的密切联系。

  也许你将来学习图论的时候,对“欧拉路”的概念会很清晰,这是因为你在小时候的图画书上玩过“一笔画”的游戏;然而“二分图”、“生成树”这些概念又是怎么回事呢?你的理解可能就不是那么深刻了——因为你一时难以找到一些生活中的实例,并从中抽取出特性。在这种情况下,翻阅一些涉及这些知识的科普书籍就十分有必要了。我曾读过一套《数学游戏》(《科学美国人》杂志汇编,中文版:科学技术文献出版社),它将图论、逻辑代数、自动机理论等领域的抽象的概念具体化为一个个有趣的故事,引导读者了解这些知识的现实应用,启发读者将抽象思维与感性生活有机结合。我还读过一本《编码的奥秘》(《CODE》, 中文版:机械工业出版社),它则将逻辑代数、数字电路、汇编语言等知识以实物和简单电路的形式进行类比,揭示其中的原理,并引导读者动手实践。事实上这类与计算机专业相关的科普书籍还有很多,在学习课本的间隙阅读一下,绝对能起到催化剂的作用。

  谈到科普书籍,相关的另一个问题便是计算机科学与计算机技术之间的关系。也许不少同学选择计算机专业,是源于对计算机令人眼花缭乱的应用的认识。所谓计算机技术,一般是指包括文字处理、信息管理、多媒体、网站建设等在内的计算机应用技术;而所谓计算机科学,一般指数据结构、组成原理、操作系统、编译原理等计算机内部实现机制。

  前者是计算机在各行各业提高生产力的体现,属于各类职业教育和专科教育的范畴;而后者是研究是计算机本身的理论,是本科计算机教学的重点。市面上大多数计算机书籍与杂志是计算机应用技术方面的,属“技术普及型”,从受众角度来看与科普书籍有着类似的性质。适当地涉猎一些自己感兴趣的应用技术,对培养学习兴趣、增强实践能力、了解业界行情是很有好处的。不过如果确实想在计算机行业长期做下去,仍然应当将主要精力放在对计算机科学的学习方面。毕竟用科学的理论指导实践是大学教育的意义所在。

  总之,广泛了解计算机学科基础科普知识,在今后学习具体理论的时候才会少一些盲目,多一些顿悟。

  二、把握全局,学习计算机导论

  当你对计算机学科涉及的领域有所了解后,就应该着手展开专业学习了。初读本专业的教学计划与课程设置,你或许会被诸如离散数学、编译原理、接口技术等生疏的课程名称弄得一头雾水。这些课程都是研究什么的?它们各自与我们面前的计算机有哪方面的联系?要回答这类问题,首先需要把握全局,从整体上认 识计算机科学。

  国内高等院校一般都为大一学生开设计算机基础课程。这类课程的受众面广,主要涉及计算机基础应用知识。各种版本的计算机基础教程几乎都以计算机科学导论作为开篇。对于把计算机作为应用工具的其他专业的学生而言,导论只算是“内容概要”,他们往往更注重后面的应用型知识;而对于把计算机作为研究对象的我们,则决不能忽略这类指导性的内容。专门地、有意识地学好计算机科学导论,能够使你对计算机科学有一个大局观,清楚地认识到每一个分支学科的研究领域与重要意义,从而在今后的具体学习中明确方向,加深理解。

  依我个人的学习经验,建议初学者阅读一些国外优秀计算机基础与导论教材。与国内大多数讲解软硬件具体使用的同类教材相比,国外教材更偏重以应用为切入点,深入浅出地阐述计算机科学原理。诸如《计算机文化(第8版)》(《New Perspectives on Computer Concepts》,中文版,机械工业出版社)、《计算机科学导论》(《Foundations of Computer Science: From Data Manipulation to Theory of Computation》,中文版,机械工业出版社):前者适合于各种信息类专业的学生或计算机爱好者阅读。该书图文并茂,语言生动,从应用角度出发,广泛涉及计算机软件、硬件、网络的基本原理,同时概述了计算机学科的历史背景与行业现状。

  随书的光盘中给出了不少影音材料,在学习的同时还可以提高计算机专业英语听说能力。后者在风格上与前者类似,但内容更适合计算机专业学生阅读,被美国不少高校定为计算机专业学生的入门课。它以实例作为出发点,系统地讲解了计算机组成、计算机网络、操作系统、数据结构、算法设计等分支学科的研究领域、基本原理和应用方向,而几乎不涉及晦涩的数学模型与实现细节。阅读此类书 籍,可以在潜移默化中理清初学者对于计算机科学学习的思路。

  计算机科学是一个有机联系的整体,每个分支都或多或少地与其它分支存在依赖关系。如果死板地依照教学计划线性地进行学习,往往会遇到知识理解上 的问题。例如算法分析课程与程序设计课程分属理论与实践;组成原理课程与体系结构课程是对计算机系统不同层面的剖析。我们不能简单地找出它们的先修、后修关系,这样难以建立完整的知识体系。

  因此在把握大局之后,我们仍有必要简单了解一下每个分支学科的基础知识。在这方面,推荐大家阅读《编程卓越之道(第一卷):深入理解计算机》(《WRITE GREAT CODE: Volume 1:Understanding the Machine》,中文版,电子工业出版社)这本书。分开来看每一章节,其内容编排结构与国内高校计算机课程体制相近,涵盖了逻辑代数、数字电路、机器指令、体系结构、存储器管理等方面的基础知识和实现方法,特别是阐明了各个分支学科之间的本质联系。有了这些基础之后,在遇到更高阶的问题时,你至少会明白这个问题应该在哪个分支学科中寻找答案了。

  当你有了一定的计算机理论基础,尤其是程序设计基础后,想更加深入地把握计算机科学的脉络,不妨看看这本书:《深入理解计算机系统(修订版)》 (《Computer Systems A Programmer’s Perspective》,中文版,中国电力出版社)。它与《编程卓越之道》系列的共同特点是从程序员的视角观察计算机系统。

  而这本书作为国外数十所高校的计算机系统导论教材,其组织更加严密,风格更加严谨。它以“程序在计算机中如何执行”为主线,全面阐述计算机系统内部实现的诸多细节。当你在学习数据结构、组成原理和体系结构等课程和时候,翻阅一下此书的相应章节,同时编程实现其中的例子,一定会对课本上单纯的文字型理论有更加感性的认识——原来它们是 这样活生生地存在于我的计算机里的!

  正所谓“会当凌绝顶,一览众山小”,从计算机科学全局的高度整体把握其分支学科,在头脑中率先构建计算机科学的整体框架并为其夯实最基层的结构,就能够为你在未来每一步的学习中扫清迷雾,指明方向。

  三、运筹帷幄,掌握编程的思想

  程序设计与开发是计算机学习的一个关键环节,编程能力是衡量一名计算机专业人员素质的重要考核点。这是因为程序是连接理论与实践的纽带,是计算机科学与计算机技术相交融的领域。作为一名计算机专业学生,我们一方面有别于其它专业将计算机作为工具的应用型人才,不能仅仅利用计算机,而要为他人利用计算机提供平台;另一方面我们暂时达不到计算机科学家的水平,不能做出理论研究成果,但能为理论学习铺垫实践基础。因此,只有具备足够的程序设计与开发能力,才能真正体现我们的智慧,同时充分发挥计算机的潜力。

  学习编程,首先应掌握至少一门程序设计语言。C语言作为一种语法清晰、功能强大、应用广泛的高级语言,长期以来被国内大多数高校的定为程序设计必修课。全面理解和掌握C语言的脉络的重要意义这里毋庸多言。市面上C语言的教程多如牛毛,但最经典的当数C语言的设计者Kernighan与 Ritchie 合著的权威白皮书——《C程序设计语言(第2版)》(《The C Programming Language》,中文版,机械工业出版社)。

  书虽不厚,但绝对全面而准确。其语言简洁,例证通俗,实用性强。相比之下国内的一些C语言教材在学习曲线可能比前者平滑,但它们往往以考试为导向,过多地纠缠语法死角,同时大都未遵从ANSI标准。对于计算机专业学生来说,前者能够让我们看到更加严谨与实务的态度。当你的语言功底达到一定程度后,就需要从一个更高的视角来探察语言的本质,不妨看看这本:《计算机程序的构造和解释(第2版)》 (《Structure and Interpretation of Computer Programs》,中文版,机械工业出版社)。它阐述了编程语言本身的机制与实现,同时引入了一门对于大多数中国学生来说不甚了解的语言——LISP。 LISP是很多美国高校计算机专业的入门语言,也是一种结构上与C、Pascal、Java、Basic等完全不同的非冯·诺依曼语言。研读SICP,体味LISP,给你耳目一新的感觉之后更多地可以加深对编程思想本质的理解。

  十大热门计算机专业

  人工智能

  人工智能(AI)是一个复杂而跨学科的计算机科学领域,将人类智力和推理原理纳入到计算机系统中。你将接触到逻辑,概率和编程语言。AI根据外部来源的输入做出合理的决策。AI的目标是创建具有规划、自动推理能力的计算机系统(和软件)。

  工作中,你将会运用知识表达、逻辑推理、机器学习、机器人、自然语言处理(NLP),概率模型与推理以及认知科学。

  机器学习

  机器学习(ML)是应用计算机科学和统计学原理,创造统计模型的另一个热点。这些模型可用于预测未来。机器学习本身就是一种人工智能,允许软件应用程序,在没有明确编程的情况下,预测结果使其更加准确。

  数据科学与分析

  数据科学是关于科学方法、流程和系统的另一个跨学科领域,从与数据挖掘相似的结构化或非结构化的数据中,提取知识或见解。

  大数据与数据分析相结合,可以帮助企业优化运营效率,计算整个风险组合,复查失败的根本原因,并在几分钟内了解消费者行为。

  机器人

  机器人学,是计算机科学的另一个跨学科和激动人心的分支,它应用人工智能和工程概念,来创建和编程机械设备(机器人),可以通过替代人类来执行各种繁琐和危险的任务。

  机器人领域,涉及机器人在各种工业和商业过程中的研究,设计、制造、操作、软件开发、信息处理和应用。机器人的最终目标是建造可以替代人类的机器。

  机器人可应用于核科学、海洋勘探、太空探索、采矿、医学(手术,研究与诊断)、农业、制造业、军事战争、抢险,如拆弹,寻找幸存者在不稳定的废墟或沉船等。

  软件工程

  软件工程涉及软件系统的设计与组装研究。该领域应用计算机科学、计算机技术、管理和工程经济学。软件工程是计算机科学中,最传统但不断发展的领域之一,你要不停的编程。

  人机互动

  人机互动(HCI)是一个高度专业化的计算机科学和用户界面设计(UI)和体验(UX)领域。该领域涉及高级计算、信息可视化和以用户为中心,以及设备兼容的设计思维和方法。HCI的目标是了解消费者(用户)需求,呈现和可视化信息,以及优化界面设计和用户交互。

  信息科学和管理信息系统(MIS)

  这个跨学科领域,整合了数据处理和解决问题的计算机应用程序,旨在通过开发用于数据存储、数据检索、数据处理和决策分析系统,来提高组织效率。

  这个领域横跨通信、计算机科学、语言学、哲学、数学、心理学和社会学。专业涵盖开发数据库和信息系统的应用程序、系统设计、架构和数据库管理,通过应用算法和高级技术(如数据挖掘和机器学习)来对庞大的数据集执行分析。

  网络安全

  网络安全是为了保护计算机、网络程序、数据防盗和被攻击的技术。对于黑客着迷的同学来说,这是一个伟大的领域。

  云计算

  云计算是通过互联网(通过远程服务器 - 云)提供计算服务(如服务器,存储,数据库,网络,软件,分析和其他服务)。

  云计算可以使用在线服务,如发送电子邮件、编辑文档、观看视频、共享文件、托管网站和博客、提供软件、分析数据等。

  云计算已经成为数十亿美元的行业,涵盖了基础设施(IaaS - 基础架构服务)和开发(SaaS - 软件服务)。云计算专业通常包括云架构、云安全、云基础架构管理、云应用开发与服务、数据存储和管理、数据可视化、数据分析编程,以及计算机研究与业务战略。

  理论计算机科学

  理论计算机科学涉及反应系统、编程语言理论和算法。这个领域有点类似于软件工程,但稍微抽象一些。对于对计算机科学的数学方面和数学计算方面感兴趣的学生,这是一个很好的专业。该领域介绍了计算的局限性,算法的实用性等领域。

  计算机专业就业方向介绍

  1、【职位名称】程序员

  【是什么】

  程序员是指从事程序开发、维护的专业人员,一般分为程序设计人员和程序编码员。

  【做什么】

  ① 项目策划、市场调查;

  ② 用户的需求分析,策划程序框架、流程;

  ③ 编写代码,开发程序,同时编写开发文档;

  ④ 测试,运行程序;

  ⑤ 帮助客户解决他们所遇到的问题;

  ⑥ 软件版本的更新。

  【怎么样】

  随着计算机对于社会各个领域的不断渗透,客户对于一些专门的应用软件需求量大增,所以对于程序员的需求也在不断增加,虽然现在中国的程序员数量已经相当可观,但是还是处于求大于供的状态,尤其对于一些技术熟练、有很好的编程习惯的优秀程序员,市场需求量还是很大的。而且程序员的发展空间很大,可以经过努力升级为软件设计师、系统分析员、项目经理等。不过程序员有事工作相对繁琐,有时需要经常加班,技术更新快,所以压力也很大。

  【谁能做】

  ① 大专以上计算机相关专业学历,至少熟练掌握两到三种开发工具的使用,同时对于数据库和操作系统有很深入的了解,有一定的英语水平,有相关的数据结构等方面的知识;

  ② 通过初级或者高级程序员考试或者拿到一些国际、国内认证的证书,有一年以上相关经验;

  ③ 软件结构设计/分析能力,出色的编程能力,掌握了几种软件的开发技巧,同时需要有严格的软件工程思想;

  ④ 较强的逻辑思维能力,团队精神和协作能力,强烈的好奇心和学习精神,具有永攀高峰的精神。

  【小贴士】

  程序员可以分为很多种,像Unix程序员、Windows程序员,或是C++程序员、Delphi程序员,等等,由于新的技术层出不穷,程序员的职业生涯则是一个要求不断学习的过程,永远不能固步自封,稍不注意就会被甩开,所以好多程序员都是做上三五年就往技术管理方面转型。

  2、【职位名称】软件工程师

  【是什么】

  软件工程师指从事软件工程的立项、分析、建模、编程、测试、发布等工作并能够进行软件开发职业的人。

  【做什么】

  ① 指导程序员的工作;

  ② 参与软件工程系统的设计、开发、测试等过程;

  ③ 协助工程管理人保证项目的质量;

  ④ 负责工程中主要功能的代码实现;

  ⑤ 解决工程中的关键问题和技术难题;

  ⑥ 协调各个程序员的工作,并能与其它软件工程师协作工作。

  【怎么样】

  软件工程师收入较高,就业也比较容易,但工作量大,繁琐枯燥。

  【谁能做】

  ① 本科及本科以上学历,软件专业或计算机相关专业毕业;

  ② 通过了软件工程师资格认证考试并取得了微软专家认证、Cisco专家认证、3COM资格认证、ADOBE资格认证、Oracle认证等其中一家或几家的资格认证书;

  ③ 具备1年以上的软件开发和设计工作经验,熟悉一种以上数据库的使用和开发,具有较强的系统分析和设计能力,能独立进行软件架构设计;

  ④ 具备比较高的英语读写与交流能力,较强的逻辑思维能力,分析判断能力,为人诚恳,有敬业精神,有较好的沟通能力,以及一定的团队协作精神。

  【小贴士】

  堪称最走俏职位,在很多大小IT企业都有发挥的空间。

  3、【职位名称】软件测试工程师

  【是什么】

  软件测试工程师是指那些通过使用一定的测试工具,找出软件缺陷从而提高提高软件产品质量的技术人员。

  【做什么】

  ① 修改测试案例;

  ② 用自动测试工具进行测试,尽早找到软件缺陷,并确保其得以关闭;

  ③ 项目可行性、可靠性分析,风险分析;

  ④ 制定测试计划;

  ⑤ 测试自动化开发。

  【怎么样】

  随着IT行业的发展,产品的质量控制与质量管理正逐渐成为企业生存与发展的核心,人们把注意力放在过程设计和测试上,以提高产品质量。目前从事软件测试的工程师的数量远远不能满足企业的需求,软件测试工程师的招聘已经成为IT招聘的一个新亮点。月薪从一千到四五千不等,依个人经验和所在的公司、具体的工作而定。

  【谁能做】

  ① 电子、电机、网络、计算机等相关专业毕业,有一定的编程知识,有穷追到底的精神;

  ② 掌握软件测试的基本原理、方法和组织管理,精通软件测试工具。获取ATA软件测试工程师或elphi初级程序员或Java初级程序员认证;

  ③ 一年以上相关工作经验,具有一定的编程经验,懂测试软件的操作,善于发现问题的症结,同时具有一定的写作能力以书写软件缺陷报告;

  ④ 责任心强,力求完美,具有团队精神,善于沟通,具有一定的逆向思维能力,热爱学习,善于利用书籍、网站等途径不断提高自己。

  【小贴士】

  作为软件测试工程师,有一定的测试经验是很重要和必要的,同时要时刻关心市场上时时涌现出来的软件产品,还要经常通过书籍、论坛等多了解别人的测试经验。

猜你喜欢:

1.计算机专业大学排名

2.计算机专业大学排名

3.大学计算机专业排名

4.计算机专业高校排名

5.计算机专业大学排名

3806941