软件学科基础是哪些 软件工程专业学什么课程
学习软件工程要有什么学科基础?请问谁知道上交大825软件学科基础方面的参考书啊,软件工程入门学些什么?上海交大825软件学科基础都考些什么??能具体说嘛?学习软件工程需要哪门学科基础好,软件工程专业基本知识是什么?
本文导航
软件工程专业学什么课程
最近很多人都在问如何学习编程。我觉得学习编程最重要的是入门,如果你入门的时候有一个好的方法和思路,打下比较扎实的基础,对今后的编程工作是很有益处的。即使在学习新的编程语言也无所谓,因为它们有很多相通之处,可以相互借鉴。
我认为可以先学习一下pascal,这个语言比较严谨,适合初学者。pascal它被称为教学语言,结构严谨,不像C语言那么灵活,易于理解和学习。 然后可以继续学习C语言,这个语言比较灵活。有了pascal的基础,在进行C语言编程就不会因为C语言的灵活而有问题 。后面的就可以学习VC什么的了。
C语言的书推荐谭浩强的,比较好。
我当时学习pascal和C语言的时候是将书后的习题都做了一遍,感觉效果很好。
当然了,学习什么语言也要看你具体准备从事什么行业。例如你要进行嵌入式开发,C就是很好的选择,如果是Windows开发,那么VC就不错。还有数据库方面的开发、网络开发等等。不同的语言适合不同的方面。要看自己的选择的,呵呵 。
还有很多人说自己的基础很差,甚至中学毕业什么的。其实这个并不重要,比较说英语,在计算机语言里所用到的单词量很少,而且都是常用词,经常使用就记住了。当然,如果你要看原文资料或者帮助的话,专业词汇比较多,不过在金山词霸的帮助下,经常看,也是没什么大的问题的。至于数学什么的,其实数学只是培养你一个逻辑思维能力,在初学编程的时候影响不是很大。况且,作为一个基础编程人员来说,上面还有系统分析师、项目经理,他们会把需求分析、概要设计和详细设计做好的,你只要按照文档写代码就OK了。不过,要上更上一步的话,其他基础知识就非常重要了,毕竟你不能写一辈子代码。
在你学习好C语言以后,个人建议好好学习一下数据结构和软件工程。这两门对你的水平提高都是很有帮助的。特别是软件工程,它能够使你按照科学的工程方法进行软件开发,对今后的发展很有好处。
只是一家之言,有不到之处,还望见谅!
参考资料:http://hi.baidu.com/deathdog/blog/item/de92046eea406dde81cb4ab4.html
上交大工科试验班能转专业吗
专业课参考书你可以武文远上交大考研网查看,我就是在上面找到的。
《算法设计技巧与分析》 阿苏外耶 电子工业出版社
《C++ Primer中文版》Stanley B.Lippman 人民邮电出版社
《软件工程:实践者的研究方法》 普雷斯曼著 郑人杰译 机械工业出版社
软件工程入门知识
这些日子,研究了下软件工程专业的课程体系。
正巧遇到一些同学感觉迷茫,不知道该学些什么。
那好,我就来从头分析下,每个学期该学些什么,看些什么。
以下的分析主要讨论实践学习,至于理论学习和研究,留待以后分解。
第一学期
通过阅读大量的C代码,了解计算机程序设计方法和一般规则,为以后学习打下坚实的基础。在计算机文化基础部分,可以考虑学习网页设计(最好是从HTML和JS开始,别直接用工具),C代码可以找些开源项目的代码片段阅读。本学期除了课堂要求,最少要完成500行以上的代码量,并在假期完成一个至少200行程序的小型程序。
专业课程
计算机文化基础
课外学习
《深入理解计算机系统》
C语言
阅读大量的C代码
数字逻辑
第二学期
本学期是的专业课程不多,建议将大量的时间投入在数据结构和算法上边。C++同样要阅读和书写大量的代码。计算机组成原理是单片机和嵌入式方向的基础,要将各功能电路部分完全看懂和活用,如果有机会做整机实验(就是那个课程设计),一定要认真思考,另外,这个课程是考研课,考研的同学要认真了。数据结构是这个学期的重点内容,其核心是各种数据结构的特性,在算法初步那部分,要认真对待排序和查找的内容,最好多做练习,这个也是考研课。另外,完全照搬和硬套某些算法或者莫名其妙的使用某种数据结构来设计程序,是非常不理智和有害的,这样做使得对问题的认识过程出现错误,而且将问题复杂化了。
专业课程
C++
课外学习
《C++ primer》
数据结构
《Thinking in C++》
计算机组成原理
《算法导论》
《代码大全》(第二版)
深入研读《深入理解计算机系统》
第三学期
这学期的课程,可以说是软件工程专业最为重要的了,在java部分,已经可以开始思考面向对象和设计模式的问题了。操作系统可以说是计算机科学与工程实践之集大成者,其中大量的运用了数据结构、计算机组成原理等课程中学习的设计方法,包含了计算机工程实践方面遇到问题时的解决方案,而且本身就是代码阅读的最好素材。能够深入理解了计算机操作系统理论与实践的人,想不牛都难。数据库啊,这东西是以后大部分人混饭吃的看家本事了,重要性你看着办吧,一定要多写SQL啊。至于软件工程这门课,就冲着你是软件工程专业的学生也要学好啊。书本上的过程和方法不是写着玩的,这可要想学好,不思考、不实践可不行。
专业课程
Java
课外学习
《代码阅读》
操作系统
《Thinking in C++》
数据库
《操作系统-设计与实现》
软件工程概论
《linux 0.11内核完全解析》赵炯
《数据库系统概念》
《统一软件过程》
第四学期
本学期的专业课程压力很大,计算机网络课程不是你上课听讲,写个socket程序就能够学好的。真正从事这方面实际工作的话,这里面有相当多的工程问题,要慢慢的积累。当然《TCP/IP详解》的第一卷和第三卷是不能少的,还有套《用TCP/IP实现网际互联》也很不错,另外思科的CCXX系列教程也是必读的。网络的学习,不能够光看应用层的东西,其历史沿革、底层原理都是要看的。软件体系结构这门课,是软件架构设计的宏观性的基础课程,对于以后的软件架构设计来说,是必不可少的。我个人建议大家在课余的时间多在网上看看(并且收集)一些著名的(或者在建设中的)软件项目的设计文档,对你以后的软硬件架构设计很有好处,以后写设计方案的时候,眼界也开阔很多。主流数据库是上学期课程的升级版,不管课上学的什么,大家至少要找台Oracal服务器来配置、管理一下,最好把四大主流都试试(MS SQL Server, ORACLE, DB2, MySQL)。汇编与接口,是嵌入式的入门课程,大家要好好学习,多做实验,具体的不多说了。软件项目管理,使软件工程专业最重要的管理类课程了,同样,光研究理论是没用滴,实践啊!Team leader不好当啊。另外,我在写一篇关于学生团队项目管理方面的文章,还没完成,这里就不多说了。
这学期在学习的同时,还要关注一些项目管理类的课外书籍,多多益善啊。毕竟大部分人都不可能做一辈子程序员的。
专业课程
计算机网络
课外学习
《TCP/IP详解》
软件体系结构
《Thinking in C++》
主流数据库
《人件集》《人月神话》《最后期限》
汇编与接口技术
《程序开发心理学》
软件项目管理
《设计模式》四人帮那本
第五学期
Dot Net这东西啊,毁誉参半啊。Dot Net这东西,你要是练成了Code Copyer那你基本就是个编程匠了,而且还很臭。人家微软不是让你RAD之后就不管架构了,这点一定要注意。编译原理这课,学起来有点枯燥,但是这里面很多方法还是很有用处的,而且像形式语言部分就是很多研究工作的基础内容。其他的课程不多说了。
这学期,就多学习一下自己感兴趣的方向吧,毕竟下学期就分方向了,然后就是实习、就业,时间不多了。
专业课程
MS Dot Net
课外学习
《敏捷软件开发:原则、模式与实践》
编译原理
《解析极限编程:拥抱变化》
面向对象&UML
《计算机软件测试》
软件质量保证与测试
系统分析与解决方案
图像处理
第六学期
实习就业,迫在眉睫,自己看着办吧,毕竟我说什么大家也不相信,一个个都很牛了。
专业课程
J2EE
课外学习
《方向课读物》
ERP方向
移动计算方向
嵌入式方向
好咧,终于写完了。
这个课表可能会发生变化,这是以05级的课表为参考写成的。如有变化,自己看着调整。计算机学院的同学也可以参考。
写了这么多,希望对大家有所帮助!
上海交大机械硕士考试科目
《算法设计技巧与分析》 阿苏外耶 电子工业出版社
《C++ Primer中文版》Stanley B.Lippman 人民邮电出版社
《软件工程:实践者的研究方法》 普雷斯曼著 郑人杰译 机械工业出版社
软件工程要学哪些课程
软件工程和许多学科联系密切。
如计算机科学、数学:用于软件模型的建立与算法设计
工程管理科学:用于制订规范和文档标准,建立成本分析、监督复审的技术
管理科学:用于软件计划、资源、成本的控制与管理。
并不需要多么高深的理论,具备基本的知识就可以,要看你的学习目的和具体的领域。最好是要实际进行软件设计的经验,哪怕是实验或课程设计也行,否则就是纸上谈兵了。
软件工程专业要学哪些课程
01.软件工程基础知识免费下载
链接:https://pan.baidu.com/s/1VaFN2EcsQ39SHryP9iwSfw 提取码:gis6 ;
软件工程是一门研究用工程化方法构建和维护有效、实用和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。同时,各个行业几乎都有计算机软件的应用,如工业、农业、银行、航空、政府部门等。这些应用促进了经济和社会的发展,也提高了工作效率和生活效率 。