wwddllhhppqq
大学英语-不要觉得好笑。我极力推荐这门课程是因为没有专业文档的阅读能力是不可想象的。中文的翻译往往在猴年马月才会出来,而现在的许多出版社干脆就直接把E文印刷上去。学习的方法是强迫自己看原版的教材,开始会看不懂,用多了自然熟练。吃得苦下得狠心绝对是任何行业都需要的品质。
计算机体系结构和汇编语言-关于体系结构的书遍地都是,而且也大同小异,倒是汇编有一本非常好的书《80x86汇编语言程序设计教程》(清华大学出版社,黑色封面,杨季文著)。你需要着重学习386后保护模式的程序设计。否则你在学习现代操作系统底层的一些东西的时候会觉得是在看天书。
计算机操作系统原理-我们的开发总是在特定的操作系统上进行,如果不是,只有一种可能:你在自己实现一个操作系统。无论如何,操作系统原理是必读的。这就象我们为一个芯片制作外围设备时,芯片基本的工作时序是必需了解的。这一类书也很多,我没有发现哪一本书非常出众。只是觉得在看完了这些书后如果有空就应该看看《InsideWindows2000》(微软出版社,我看的是E文版的,中文的书名想必是Windows2000技术内幕之类吧)。关于学习它的必要性,ZDNET上的另一篇文章已经有过论述。
数据结构和算法-这门课程能够决定一个人程序设计水平的高低,是一门核心课程。我首选的是清华版的(朱战立,刘天时)。很多人喜欢买C版的,但我觉得没有必要。C的语法让算法实现过程变得复杂多了,而且许多老师喜欢用模块这一东西让算法变得更复杂。倒是在学完了C版的书以后再来浏览一下C的版的书是最好的。
软件工程-这门课程是越到后来就越发现它的重要,虽然刚开始看时就象看马哲一样不知所云。我的建议是看《实用软件工程》(黄色,清华)。不要花太多的时间去记条条框框,看不懂就跳过去。在每次自己完成了一个软件设计任务(不管是练习还是工作)以后再来回顾回顾,每次都会有收获。
Windows程序设计-《北京大学出版社,Petzold著》我建议任何企图设计Windows程序的人在学习VC以前仔细的学完它。而且前面的那本《InsideWindows2000》也最好放到这本书的后面读。在这本书中,没有C,没有GUI,没有控件。有的就是如何用原始的C语言来完成Windows程序设计。在学完了它以后,你才会发现VC其实是很容易学的。千万不要在没有看完这本书以前提前学习VC,你最好碰都不要碰。我知道的许多名校甚至都已经用它作为教材进行授课。可见其重要。
上面的几门课程我认为是必学的重要课程(如果你想做Windows程序员)。
对于其它的课程有这样简单的选择方法:如果你是计算机系的,请学好你所有的专业基础课。如果不是,请参照计算机系的课程表。如果你发现自己看一本书时无法看下去了,请翻到书的最后,看看它的参考文献,找到它们并学习它们,再回头看这本书。如果一本书的书名中带有“原理”两个字,你一定不要去记忆它其中的细节,你应该以一天至少50页的速度掌握其要领。尽可能多的在计算机上实践一种理论或者算法。
id独自等待
想成为软件设计师你要看的书包括:
1:数据结构目前清华大学严蔚敏老师的数据结构是一个经典.可能的话,再搜罗其他版本的教程,这样可以互相印证.
2:操作系统(第三版),主要从资源管理的角度来分析系统功能的实现。假设你要设计一个新的操作系统,如何实现它?操作系统理论就是向读者逐步介绍和解释。重点是五大管理职能的实现及其原理。
3:计算机网络(第三版),要学习ISO/OSIRM七层的划分以及各种协议的功能。传输理论、互联设备、Internet知识,和参考模型理论.
4:计算机专业英语,不是软件考试特有的,是专业知识英语水平,考前不需专业准备,平时有意识地上网读点英文专业资料.
5:软件工程(第二版)要熟悉数据流图和流程图
6:数据库理论.这要求熟悉SQL的语言.
7:C语言或者VB语言应该掌握
最后要学习统一建模语言UML,它代表了软件工程的发展趋势,目前是可视化建模的事实上的工业标准。
计算机学习要经历一个从理论———实践———理论的认识不断深化的过程,这一过程是非常艰辛的.但是要相信“天道酬勤”的道理,你最终会成为一名优秀的软件设计师的~~祝你成功
第一阶段课程内容序号课程名称主要内容参考资料课时①编成基础计算机硬件,软件简介,可视化编成20课时②Java基础面向对象编程,JAVA开发环境,JAVA语法,异常处理,集合框架,数据结构,I/O输入输出流,JDBC,线程,jdk新特性。Java就业培训教程.pdf80课时③完全手册.chm20课时④Javascriptcss客户端脚本语言jscript中文参考手册.课时开发工具MYECLIPSE插件,TOMCAT,ANT,Websphere,resin⑤JSP动态网站servlet,JSP运行原理,JSP语法,HTTP协议,JSP内置对象,COOKIE,JDBC。案例:(购物车,聊天室程序,通讯录,留言板)。80课时⑥JSTL标签库JSTL标签库,自定义标签库。20课时⑦B/S软件架构JSPServletJavaBeanJDBC(MVC架构)20课时⑧数据库原理数据库系统简介,数据库原理数据库操作,sql语句,范式,关系,约束,存储过程,触发器,事务。20课时⑨软件工程(组件化)软件需求分析,软件数据建模,软件架构设计,软件开发规范,原形迭代开发模式,软件架构分析。20课时10项目实践常用组件详细讲解,上传文件组件,分页组件,主键生成组件,权限处理,考试管理系统,小型论坛,网上书店管理,等电子商务系统。20课时软件工程概论简介,开发模式,CMMI12课时项目管理项目计划(项目的整体时间,人员安排,阶段性工作内容),任务跟踪。需求分析需求管理与配置管理:需求调研,分析,系统范围配置标识,版本控制,配置审核(VSS,CVS),实际项目需求数据建模业务建模rose2007(类的关系)。拓展:svn40课时软件测试概论1.测试基础(概述,角色,测试所需条件)2.测试目的以及原则3.测试分类4.测试方法5.静态白盒测试,静态黑盒测试,动态白盒测试,动态黑盒测试6.测试计划,测试用例7.需求评审8.原型评审,设计评审9.实际项目需求评审管理工具28课时(语法,控件应用,远程方法访问)AJAX。拓展:dwr深层研究40课时原型开发原型设计规范软件设计数据库设计概要设计架构设计详细设计设计评审面向对象设计20课时XML扩展的标记语言,XML,XSLT,DTD,SAX,DOM,JDOM等解析20课时STRUTS2过滤器,Struts1,Struts2高级部分(标签库,验证框架,拦截器,源码分析,连接池,国际化,插件安装),AOP基础,JNDI。拓展:JSF,Tapestry,velocity40课时SpringIOC,JDBC,MVC,AOP,事务。hibernate数据持久化。拓展:,搜索功能lucenewebserviceSoap协议,分布式。拓展:JMSOracle数据库大型数据库开发。拓展:DB220课时软件测试单元测试集成测试系统测试验收测试60课时毕业答辩演讲能力,面试技巧,面试题,答辩20课时以上是学成软件工程师的课程体系。
优质工程师考试问答知识库