学计算机专业都学什么从哪里开始?

读计算机专业的毕业后能做哪些职位?
读计算机专业的毕业后能做哪些职位?
熟练应用办公软件 1000元
能用PROTEL布线路板 1500元 熟练地高级语言编程(如C++) 2500元
熟悉网络的硬件及软件 3000元 熟悉通讯原理3000元
玩转嵌入式及DSP系统 4000元 单片机编程 1500元
熟练地用硬件描述语言VHDL编程 4500元 &&
1、**页制作,将来去网站工作!
2、学习3D MAX等软件,去作动画!
3、学习美术设计!
4、**络,将来考个CCNA,去专业组网!
5、在保证能顺利毕业的前提下,去疯狂玩游戏,做个职业玩家或做一个或几个网络游戏的GM。(我身边就有这样的人)
如果你是计算机专业的在校大学生,而且想当程序员,那么请往下看:
1、大学生活丰富多彩,会令你一生都难忘,但难忘有很多种,你可以学了很多东西而难忘,也会因为什么都没学到而难忘!
2、计算机专业是一个很枯燥的专业,但即来之、则安之,只要你努力学,也会发现其中的乐趣的。
3、记住:万丈高楼平地起!基础很重要,尤其是专业基础课,只有打好基础才能学得更深。
4、C语言是基础,很重要,如果你不学好C语言,那么什么高级语言你都学不好。
5、C语言与C++语言是两回事。就象大熊猫和小熊猫一样,只是名字很像!
6、请先学习专业课《数据结构》、《计算机组成原理》,不要刚开始就拿着一本VC在看,你连面向对象都搞不清楚,看VC没有任何用处。
7、对编程有一定的认识后,就可以学习C++了。(是C++而不是VC,这两个也是两码事!C++是一门语言,而VC教程则是讲解如何使用MFC类库,学习VC应建立在充分了解C++的基础之上。看VC的书,是学不了C++语言的。)
8、学习编程的秘诀是:编程,编程,再编程;
9、认真学习每一门专业课,那是你的吃饭碗。
10、在学校的实验室就算你做错一万次程序都不会有人骂你,如果你在公司你试试看!所以多去实验室上机,现在错的多了,毕业后就错的少了。
11、从现在开始,在写程序时就要养成良好的习惯。
12、不要漏掉书中任何一个练习题--请全部做完并记录下解题思路。
13、你会买好多参考书,那么请把书上的程序例子亲手输入到电脑上实践,即使配套光盘中有源代码。
14、VC、C#、.NET这些东西都会过时,不会过时的是数据结构和优秀的算法!
15、记住:书到用时方恨少。不要让这种事发生在你身上,在学校你有充足的时间和条件读书,多读书,如果有条件多读原版书,你要知道,当一个翻译者翻译一本书时,他会不知不觉把他的理念写进书中,那本书就会变得像鸡肋!
16、我还是强调认真听专业课,因为有些课像《数据结构》、《编译原理》、《操作系统》等等,这种课老师讲一分钟能让你明白的内容,你自己看要看好几个月,有的甚至看了好几年都看不明白。
17、抓住在学校里的各种实践的机会,要为自己积累经验,就业时经验比什么都有用。
18、多去图书馆,每个学校的图书馆都有很多好书等你去看!
19、编程不是技术活,而是体力活。
20、如果你决定了要当一个好的程序员,那么请你放弃游戏,除非你是那种每天只要玩游戏就能写出好程序的天才!
21、你要有足够的韧性和毅力!有个高手出了一道题测试你的韧性和毅力:找个10000以内的素数表,把它们全都抄下来,然后再检查三遍,如果能够不间断地完成这一工作,你就可以满足这一条。
22、找到属于你自己的学习方法!不要盲目的追随别人的方法,适合自己的才是最好的!
23、请热爱程序员这项工作!
1网络人才逐渐吃香
未来互联网将成为名副其实的当今最大的富翁制造工厂,网络人才将逐渐吃香,其中最走俏最赚钱的是下列3类人才:
2软件工程师一份最新报告显示,从1996年至2006年,我国将有100多万个新职位需要软件技能,目前已有10万至40万人需要电脑软件技能的职位因无人填补而空着。软件工程师的频频告急,引发了一场全球性的争夺大战。据悉,软件工程师由于享受期权股票,不少优秀的软件工程师早已成为百万富翁甚至亿万富翁。
3游戏设计师在我国,电子游戏、电脑动画和特别效果业求才若渴,年营业额50亿美元的电子游戏业需求胃口惊人。
4网络安全师近几年,利用计算机网络进行的各类违法行为在国内呈上升之势。黑客及攻击方法已超过计算机病毒的种类,总数达近千种。我国电子信息网络建设仍处于初级阶段,网络安全系统脆弱,给黑客留下了可乘之机,而“监守自盗”式的内部攻击对网络安全构成了更大的威胁。在美国,仅华盛顿就有3支电脑犯罪侦查队,中央情报局专门将1000名员工调到一个专门负责研究遏制电脑犯罪的信息技术中心去,我国也在组建自己的网络安全队伍。由于信息安全主管单位主办的中国网络安全系统正在紧锣密鼓建设之中,数十家网络安全公司将在各地兴起,网络安全正在成为一门新兴产业。计算机专业:
5IT行业变化很快,正如你学习的专业一样,现在是热门的,等你毕业的时候,未必就是,如果你需要建议,我倒是建议你选择一个自己喜欢的,未来的几年内,计算机人才的需要量还是非常大的,这倒不必担心,网络技术是个不错的选择,特别是网络安全方面的人才,现在相当有市场,至于其他的,软件工程应该也是未来需要量比较大的,此外,还有项目管理人才.
软件技术专业
专业介绍:
本专业培养具有较全面的计算机知识,掌握计算机应用软件的开发方法和工具,具有较强的局域网和互联网平台上的C/S、B/S软件开发与维护能力的高等技术应用性人才。
主要课程:
数字逻辑、微型计算机系统、汇编语言、C语言程序设计、数据结构、操作系统、网站建设与管理、多媒体技术、网页制作、Java语言、面向对象程序设计、软件开发方法、软件测评与安全、网络原理及组网技术、数据库技术、.NET技术应用。
主要证书:
计算机应用二级证书、上海市信息技术认证证书——机房网络管理员证书、机房网络管理三证合一、微软系统工程师证书、数据库应用工程师证书、计算机维护维修(初级)、Macromedia多媒体网页设计师、A级英语、英语(四级/六级)
计算机网络技术专业
专业介绍: 本专业培养具有较全面计算机知识,掌握计算机网络及数据通讯原理,具有规划、创建、管理和维护计算机网络的基本技术和能力,有一定的网络编程能力的计算机网络方面的高等技术应用性人才。
主要课程: 数字逻辑、微型计算机系统、数据结构、操作系统、网络原理、Web应用开发技术、网页制作、网站建设与管理、Java语言、ASP语言、计算机组网技术、网络安全技术、TCP/IP协议及应用。
主要证书: 计算机应用二级证书、上海市信息技术认证证书——机房网络管理员证书、机房网络管理三证合一、微软系统工程师证书、数据库应用工程师证书、计算机维护维修(初级)、Macromedia多媒体网页设计师、A级英语、英语(四级/六级)
计算机多媒体技术专业
专业介绍: 本专业旨在培养适应社会主义市场需求的,德、智、体、美全面发展的,掌握一定的计算机基础理论及计算机基础技术,熟悉多媒体基础知识及基本技术,具有多媒体应用能力:对影视素材进行辑录、组合、配音、配乐的能力;对多媒体素材进行贯串、组织、同步编排的能力。能在企、事业单位进行形象设计,文化传媒部门进行影视剪辑、合成的富有创意的应用型高级技术人才。
主要课程: 数字逻辑电路、微型计算机系统、C语言、数据库技术、网络技术、色彩管理、静态图形图像、动画制作、数码视频设计、数据结构、虚拟现实、多媒体作品制作、流媒体设计与制作、VB实用操作系统、影视剪辑。
主要证书:
计算机应用一、二级证书、多媒体作品制作员(四级、三级)证书、Macromedia多媒体网页设计师证书、A级英语证书、英语四级/六级证书
计算机应用技术专业
专业介绍: 本专业培养具有较全面的计算机知识,掌握计算机应用基础理论与方法,具有一定的软件开发能力、多媒体技术应用能力和以互联网、局域网为主要内容的应用软件开发、计算机网络应用与维护技术的高等技术应用性人才。
主要课程:
数字逻辑、微型计算机系统、微处理器、汇编语言、C语言程序设计、数据结构、操作系统、多媒体技术、网页制作、Java语言、软件工程、网络原理及组网技术、Web应用开发技术、数据库管理系统
主要证书:
计算机应用二级证书、上海市信息技术认证证书——机房网络管理员证书、机房网络管理-三证合一、微软系统工程师证书、数据库应用工程师证书、计算机维护维修(初级)、Macromedia多媒体网页设计师、计算机应用(一级/二级)证书、A级英语、英语(四级/六级)
计算机应用技术专业
一、专业介绍
突出计算机和网络的实际应用。学生将系统地学习计算机的软、硬件与应用的基本理论、基本技能与方法,具有初步运用专业基础理论及工程技术方法进行系统开发、应用、管理和维护的能力。
二、培养目标
培养目标:本专业培养具有良好的科学素质和职业道德,掌握本专业的基础理论、专业知识、基本技能和实用技术,具备在多种行业的有关部门中从事计算机教学,计算机和网络系统开发、管理、维护与应用等实际工作能力的德、智、体、美全面发展的高级应用型人才。本专业软、硬件兼顾,除了学习必要的基本理论和知识外,着重实际技能的训练和创新能力的培养,突出技术知识的实用性和新颖性。学生通过课程考试、毕业设计和国家级职业技能认证考试,将获得大专毕业文凭和若干项职业技能证书。
三、基本要求
1. 掌握计算机系统的基本理论、基本知识和基本技能;
2.具有微型机组装、维护,和局域网安装、维护能力;
3.能熟练使用实用软件进行网页制作、2D/ 3D动画制作和多媒体创作;
4.熟练使用INTERNET和互联网提供的一些服务;
5.具有小型数据库的开发、设计和维护能力;
6.英语应用能力达到B级,并能借助字典阅读本专业英文书刊。
7.获得1~3项国家职业技能证书。
四、主干课程
电路与电子技术、C语言程序设计、操作系统、计算机组成原理、关系数据库及SQL语言、计算机网络技术、软件工程、Asp程序设计及应用、网络数据库技术及应用、多媒体设计与制作、网页设计与制作、计算机常用工具软件、职业技能考证课程等。
计算机科学与技术
本专业主要培养从事计算机软、硬件系统的设计、开发和应用的高级工程技术人才。
学生在校期间,除学习公共基础课外,还要学习电工电子学、离散数学、数字逻辑电路设计、计算机组成原理、 C++语言程序设计、汇编语言程序设计、数据结构、操作系统、数据库系统原理、编译技术、计算机网络、计算机系统结构等专业课程。
通过学习,掌握计算机软、硬件方面的基础理论和基础技能,了解计算机技术发展的最新动向,掌握现代计算机系统的基本知识和软件开发的思想方法,具有计算机软件系统分析、设计和开发的能力,具有计算机硬件系统应用、开发和维护的能力,具有计算机网络系统操作与维护的能力。
计算机科学与技术专业 (计算机通信、网络工程方向)简介
计算机通信方向是一个软件与硬件结合、网络与通信兼顾的计算机学科宽口径专业,以培养计算机通信工程应用人才和 通信 软件工程师为目标。计算机与通信相结合是本专业区别于其他高校计算机专业的显著特色。 本专业学生主要学习计算机科学与技术方面的基本理论和基本知识,包括计算机软件、硬件、计算机通信和网络技术的设计开发及综合应用的知识与技能,接受从事应用与开发计算机系统的基本工程训练,具有参与开发计算机系统和通信系统的基本能力。
网络工程方向培养掌握网络工程的基本理论与方法以及计算机技术和网络技术等方面的知识,可在信息产业以及其他国民经济部门从事各类网络系统和计算机通信系统设计、开发等工作的工程应用型人才。计算机网与通信网(包括有线,无线网络)的结合是本专业区别于其他高校网络工程专业的显著特色。本专业学生要系统地学习计算机网和通信网技术领域的基本知识、基本技能,主要包括:电子技术与数字电路基础,计算机软件硬件的知识与技术基础,网络与通信的知识与技术基础等;学习各类网络系统的组网、规划、设计、评价的基本方法与技术;获得计算机软硬件和网络与通信的开发与应用方面的工程实践训练
本专业培养系统掌握数据通信与计算机网络所必须的基本知识,掌握计算机网络应用和管理的基本技能,具有规划与设计计算机网络系统的初步能力、较强的计算机网络维护与管理能力和外语能力的高级专门人才。
本专业开设的主要课程有:信号与系统、计算机原理、数据通信原理、计算机网络、数据结构导论、网络操作系统、数据库原理、数据安全、网络工程、互联网及其应用等。
本专业毕业生可在国家机关、科研机构、学校、工厂等企事业单位从事计算机应用软件及网络技术的研究、设计、制造、运营、开发及系统维护和教学、科研等工作。
TA的最新馆藏你好,我要上大学了,是个二本,确定计算机专业了,现在要先学习一下c语言,该从哪开始呢?-学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
你好,我要上大学了,是个二本,确定计算机专业了,现在要先学习一下c语言,该从哪开始呢?
来源:互联网 发表时间: 23:28:22 责任编辑:鲁晓倩字体:
为了帮助网友解决“你好,我要上大学了,是个二本,确定计算机专业了,现在要先学习一下c语言,该从哪开始呢?”相关的问题,学网通过互联网对“你好,我要上大学了,是个二本,确定计算机专业了,现在要先学习一下c语言,该从哪开始呢?”相关的解决方案进行了整理,用户详细问题包括:
基础书籍发给我吧(直接传)激尽
,具体解决方案如下:解决方案1:我教程谭浩强《c程序设计》计算机语言种东西必须要实践建议自电脑装VC6.0边看书边编些简单程序编程要规范计算机C基础加油别让暑假荒废解决方案2:
从Helloworld开始
解决方案3:
嗯~~第楼主计算机基础些识学网
没先普及我刚进候计算机文化(进制转换啊操作系统些基础知识啊些计算机识类)建议再始C语言两者同进行~觉些至于C语言书籍入门用谭浩强《C程序设计》提升看看《C primer》(我觉本讲相用于初些问题能半明白)C指针本书用于提高~希望帮助(C primerC指针两本书网都电)
解决方案4:
好的,我是自学的C语言,感觉还不错。就用的这本书
解决方案5:
谭浩强的 c啊,这本就好,其他不建议看太多。
解决方案6:
谭浩强的《C程序设计》,比较经典
5个回答4个回答2个回答1个回答5个回答6个回答1个回答2个回答4个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答1个回答
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 学网 版权所有
京ICP备号-1 京公网安备02号2. 计算机科学与技术(理论-算法)(6)
& & & 一、广泛了解,从科普书籍开始
  选择计算机专业的同学,也许是因为原先有一定的基础,也许是因为一时的激情,但更多的人,可能对自己的选择没有深刻的认识,或多或少对计算机专业有一些神秘的感觉。自己究竟是否喜欢这个学科?才华能够在哪个分支领域有所施展?抑或是真的不适合这个专业?诸多疑问,解决的方法首先便是了解和认识我们的学科。浓厚的兴趣是学好任何学科的源泉;而广泛的了解则是获得兴趣的途径。当今我们对于信息的获取已非难事,其中“阅读”是一个简洁而有效的方法。
  也许你认为阅读专业书籍对于刚刚步入大学的自己来说有点困难,也很枯燥,那么不妨先从科普书籍看起。科普书籍是了解理论、获得应用知识最好的途径。相信不少理工科的同学被量子物理和相对论搞得头昏脑胀过。究其原因,是我们的现实生活与抽象的数学模型之间存在思想意识上的鸿沟。然而要是读读斯蒂芬·霍金的《时间简史》,你就会被书中有趣的故事和例证所吸引,从而对抽象的理论有了感性的认识——即使仍然没有读懂,你也至少了解了这个学科研究的领域和目标是什么,也必然有所收获。所有理工学科都有这样的性质,计算机专业也不例外。
  我们知道,计算机理论是建立在数学基础之上的。大学计算机专业对数学的要求较高,其重要性不必多言。数学令不少同学头痛,除了其“繁”与“难” 外,很大程度上是因为他们没有理解这些抽象理论的实际应用方向。与本科数学专业的课程设置相比,计算机专业的数学课程大都偏重实用性。比如我们的离散数学课程中涉及到的逻辑代数奠定了计算机一切运算的基础,形式语言构成了计算机程序编译的模型,代数系统则是当前各类数据库系统的理论依据等等。因此,如果能够提前地了解到并简单地学习一下这些数学知识的具体应用,对理解理论是很有益处的。此外,电子学、信号与系统、控制理论等也是计算机专业学生必修的公共课,然而不少同学往往认为它们与计算机专业的关系不大,从而放松了学习。事实上这些学科是计算机硬件与网络通信的基础,学好这方面知识的前提是认识它们的现实应用及其与计算机的密切联系。
  也许你将来学习图论的时候,对“欧拉路”的概念会很清晰,这是因为你在小时候的图画书上玩过“一笔画”的游戏;然而“二分图”、“生成树”这些概念又是怎么回事呢?你的理解可能就不是那么深刻了——因为你一时难以找到一些生活中的实例,并从中抽取出特性。在这种情况下,翻阅一些涉及这些知识的科普书籍就十分有必要了。我曾读过一套《数学游戏》(《科学美国人》杂志汇编,中文版:科学技术文献出版社),它将图论、逻辑代数、自动机理论等领域的抽象的概念具体化为一个个有趣的故事,引导读者了解这些知识的现实应用,启发读者将抽象思维与感性生活有机结合。我还读过一本《编码的奥秘》(《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,给你耳目一新的感觉之后更多地可以加深对编程思想本质的理解。
  大学的各类程序设计与开发课程旨在培养我们两方面的能力——算法设计能力与应用开发能力。前者偏重计算机科学,后者偏重计算机技术。算法是用计算机思维解决现实问题的理论,具有较强的数学性。算法学的旷世巨著应数Knuth的《计算机程序设计艺术》(《The Art of Computer Programming》中文版,清华、机工、国防等出版社皆有授权),不过要彻底读懂这个大部头需要相当的数学理论基础与编程实践经验积累。对于初学者,建议首先培养使用常规算法解决小规模问题的能力,并行地提高驾驭语言的水平与抽象问题的思维。针对这个目的,结合程序设计实践一类的课程,可以读读这几本书:《编程珠玑(第2版)》(《Programming
Pearls》中文版,中国电力出版社)、《程序设计实践》(《The Practice of Programming》中文版,机械工业出版社)、《代码阅读方法与实践》(《Code Reading: The Open Source Perspective》中文版,清华大学出版社)、《C专家编程》(《Expert C Programming》中文版,人民邮电出版社)。它们的侧重点各有不同,但对于通过实践来学习算法与数据结构都是很有益处的。
  应用开发方面,实践是第一要务,然而高效的实践是建立在科学的程序设计方法之上的。以C语言为代表的结构化程序设计方法是规范的程序逻辑的基础,目前主要使用在系统级开发中,前面所提到的诸多书籍都或多或少有所涉及。而以Java、C++为代表的面向对象程序设计方法广泛应用于实用项目开发, 这方面的经典之作中,推荐阅读Bruce Eckel的《Java编程思想(第3版)》(《Thinking in Java》中文版,机械工业出版社)与《C++编程思想(第2版)》(《Thinking in C++》中文版,机械工业出版社)。此外软件架构设计、编码规范与风格、代码除错与质量管理以及软件工程的各类原则在实际项目开发中都是及其重要的,在具备了一定的编程经验、准备投入一些实际项目开发的时候务必要了解。建议阅读《代码大全(第2版)》(《Code
Complete》中文版,电子工业出版社)这本大而全的软件构建综合性宝典,它在从总体上指导软件开发的各个环节的同时也引入了一些细节问题(诸如 goto的使用)的讨论,引导我们对一些司空见惯的程序设计理念不但要知其然,而且要知所以然。
  有一位热衷于游戏的同学告诉我,游戏给予他满足控制欲的空间。但是请放眼看看,游戏的控制范围不外乎一个特定进程中他人预先设定好的一系列数据,并以有限的图像与声音形式体现出来。然而如果你掌握了编程这一强大的武器,就能够面对眼前的计算机游刃有余,在硬件条件允许的情况下尽你所能将控制欲升华为创造力,方便自己的同时造福他人。运筹帷幄,掌握编程的思想,无论走向科学研究或是应用开发,这都将为你奠定坚实的基础!&
  四、理性思辨,体味计算机哲学
  Bill Gates对计算机事业充满激情——“每天早晨醒来,一想到所从事的工作和所开发的技术将会给人类生活带来的巨大影响和变化,我就会无比兴奋和激动。”自由软件运动的精神领袖Richard Stallman几十年如一日,将打破知识垄断、共享人类智慧作为己任,带领着数以万计的软件志愿者推动着开源世界的发展。但并非每个计算机业者都能有Gates那样豪迈的气度和Stallman那种坚定的信仰,计算机及其相关技术对于大多数业者来说仅仅是兴趣爱好或者谋生的工具。计算机行业半个多世纪以来形成了其独有的文化氛围,作为一名计算机专业学生,了解专业文化,体味专业哲学,对于学习和从业都是具有指导意义的。
  首先必须承认,计算机世界中存在着形形色色的意识理念差异。诸如微软帝国与开源世界的明争暗斗,不仅仅是一场商战,更多的是两种哲学的搏击。当代大学生多数是在微软Windows光环照耀下认识计算机的。在这种环境下,多接触一些开源世界的事物,对于理解计算机的本质不无裨益。《共创未来:打造自由软件神话》(《Free for All: How Linux and the Free Software Movement Undercut the High-Tech Titans》中文版,上海科技教育出版社)是一本讲述开源世界发展史的书,你可以从中了解自由软件运动及其领袖人物的传奇故事,从而对GNU、
Linux、OpenSource这些概念蕴生人性化的理解。清华大学王垠的《完全用GNU/Linux工作,摈弃Windows——你我共勉》、兰州大学黄平的《自由,你忘记了吗?》等长篇文章则是国人对开源运动的慷慨陈辞。尽管这些文章常常被指为“偏激”,但没有调查就没有发言权,无论支持还是反对, 客观的认识是第一位的。
  其次,我们应该用平和的心态对待知识与技术,衡准专业学习在生活中的位置。一些同学出于种种原因,成为了“先进技术”的追随者:通晓各类流行的编程语言,一有新版本的工具推出立即安装学习,一有新的技术论战立即关注其走向。还有一些同学成为了某些技术的忠实信徒:看准了Java就对.NET的东西置之不理。这些追随者和信徒们往往为突飞猛进的技术所累,以至于有感于学习的空虚。过分追捧技术可谓舍本逐末,死扣某一知识也显得目光短浅。一方面百变的技术离不开计算机科学的本源,在实践过程中深入理解基础知识是关键;另一方面任何技术都有统领其实现细节的思想精髓,观其形不如知其神。我们不妨甩开冗繁的技术,换个角度静下心来读几部计算机文化与哲学作品:
  程序人生方面:《编程之道》(《The Tao of Programming》双语版,电子工业出版社)一书出自一位对东方道家与禅宗思想有着独特理解的美国软件工程师之手,全书由一则则短小而富有哲理故事组成,以类似寓言的形式生动地反映了程序员群体的生活以及计算机文明的演进。闲暇时随手翻阅,即使不能立刻体会到每个故事的真谛,但随着自身阅历的增长,相信你会领悟程序人生的“道法自然”。
  设计理念方面:开源软件界的“斗士”级元老Eric Raymond所著的《Unix编程艺术》(《The Art of Unix Programming》中文版,电子工业出版社)一书,以Unix系统的设计原则为主线,展示了Unix所开启的“KISS”(Keep It Simple, Stupid!)编程文化与思维方式。对于很多干啃千篇一律的课本、禁锢于Windows开发的计算机专业学生来说,这本书一定能够使你眼界大开——“结构化”并非真理,“面向对象”也不是王道;而对于有一定Unix/Linux使用或开发经验的同学,这本书也一定会使你豁然明朗——原来一个程序的设计竟可以如此精巧!
  管理哲学方面:对于有志于软件工程,想涉足项目管理的同学,《人月神话》(《The Mythical Man-Month》中文版,清华大学出版社)这本书就有必要读一读了。它拿真实案例说事,仿佛一部实例化的软件工程课本。如果你在团队开发的道路上陷入了困境,不如参考一下前辈们是如何处理“人”与“月”二者之矛盾的吧。事实上不仅是软件工程,任何事业的成功,往往技术不是关键,社会科学的因素才是埋 头技术的朋友们更应当关注的。
  归根结底,计算机的哲学依旧是人的哲学。抛开理念之争议,超越技术的形式,以人为本地认识我们的行业与自身的地位,或许会使将来的发展道路走得更舒心一些。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:10361次
排名:千里之外
原创:12篇
转载:14篇
(1)(1)(2)(4)(1)(3)(3)(10)(1)

我要回帖

更多关于 计算机专业学校排名 的文章

 

随机推荐