学软件技术从什么开始入门比较好?(软件特征和软件开发的基本概念的习题1:软件的特征 软件的特征有以下几点: 1. 软件的开发方式不同于传统的生产制造方式。软件开发是通过脑力劳动和手工开发来实现的,大部分软件产品是“定做”的。 2. 软件不会磨损。与硬件不同,软件不受引起硬件磨损的环境因素的影响。理论上来说,软件的故障率曲线在初期会有较高的故障率,但随着错误的改正和维护,故障率会趋于平稳。 3. 软件的可复用性差。与硬件构件不同,软件很难通过已有的构件组装而成,每个软件故障都表明了设计或转换过程中的

软件特征和软件开发的基本概念的习题1:软件的特征软件的特征有以下几点:1. 软件的开发方式不同于传统的生产制造方式。软件开发是通过脑力劳动和手工开发来实现的,大部分软件产品是“定做”的。2. 软件不会磨损。与硬件不同,软件不受引起硬件磨损的环境因素的影响。理论上来说,软件的故障率曲线在初期会有较高的故障率,但随着错误的改正和维护,故障率会趋于平稳。3. 软件的可复用性差。与硬件构件不同,软件很难通过已有的构件组装而成,每个软件故障都表明了设计或转换过程中的错误。因此,软件维护比硬件维护更加复杂。综上所述,软件具有与硬件完全不同的特征,它是基于脑力劳动和手工开发方式的逻辑产品,不会磨损,且可复用性差。

1.1 软件的基本概念

1.2 软件工程

1.3 软件生存周期

1.4 结构化的软件开发方法

1.5 面向对象的软件开发方法

习题1 ;1.1.1 软件的特征  要理解软件的含义,首先要了解软件的特征。软件是逻辑的而不是物理的产品,因此,软件具有与硬件完全不同的特征。  (1) 软件的开发不是传统意义上的生产制造。  软件开发与硬件制造之间有一些相似之处,但却有着本质的区别。软件产品的生产主要是脑力劳动、手工开发方式,大部分产品是“定做”的。  ;  (2) 软件不会“磨损”。  硬件在其生命初期有较高的故障率(这些故障主要是设计或制造的缺陷),这些缺陷修正之后,故障率在一段时间内会降到一个很低的水平;随着时间的推移,故障率又将提升。硬件故障率的变化曲线如图1.1所示。;图1.1 硬件故障率的变化曲线;  软件并不受引起硬件磨损的环境因素的影响。因此,理论上讲,软件的故障率曲线呈现出如图1.2所示的形式。软件在其生命初期具有较高的故障率,但在这些错误改正之后(我们假设理想情况下改正过程中并不引入其他错误),曲线就会趋于平稳。软件不会被磨损,不过它会退化,这一点可以通过图1.2来解释清楚。在其生命期中,软件会经历修改(维护),随着这些修改有可能会引入新的错误,使得故障率曲线呈现为图1.2所示的锯齿形。;图1.2 软件故障率的理想曲线与实际曲线;  硬件和软件之间的不同还表现在当一个硬件构件磨损时,可以用另外一个备用零件替换它,但对于软件就没有备用零件可以替换了。每一个软件故障都表明了设计或是将设计转换成机器可执行代码的过程中存在错误。因此,软件维护要比硬件维护复杂得多。;  (3) 软件的可复用性差,不能通过已有的构件组装而成。  我们先来看一下一个基于微处理器的控制硬件是如何设计和建造出来的。设计工程师画一个简单的数字电路图,做一些基本的分析以保证可以实现预定的

编程语言的入门学习建议和学习方向

写在开始之前:应该学习哪种语言,我觉得应该根据你的工作需要或者说你的发展方向而定。基本上两大类吧:C/C++和Java。比如,如果你要做企业级应用的你应该学习Java和C#;如果你想做嵌入式,那么应该学好C语言;其他情况下,在你不知道要做什么之前你可以选择学习C/C++。学会这两大类中的一类,对于你学习其他语言都将是比较轻松,包括脚本语言,动态语言……  1、我的入门是从学习C语言开始的(其实课程是C++),这是我们学校的公共课,我上课比较认真(虽然老师讲得很差,而且一段时间后,我就发现自己的基础掌握比她好,当然理解深度没她好),因此,我认为对于完全没有基础的人而言,听别人讲比较容易入门。当时的教材是学校自己编的,挺烂的。  建议一(以C/C++为例),对于刚想进入编程的人(就是从来都没有接触过编程的人),最好是听课的方式(自己看的话估计要很慢,而且很痛苦),可以找视频或者培训等。C语言推荐入门教材:谭浩强的C语言,最新版是第三版,不过第二版应该也可以了(蓝色的)。说明一下:坚决不同意直接看K&R的《The C programming language》,这本书绝对不是初学者可以看懂的,里面讲语法的并不多,语法都是合在程序里面讲。不过这本书非常好,入门以后一定要看的一本书。  当然可以从C++直接入门,C++之父强烈推荐从C++直接入手。C++推荐入门教材:钱能的C++(红色的,清华大学出版),这本书第一版不是ISO C++,不过比较经典,作者现在也出了第二版了,第二版好像不是太好。国外的最好的入门教材据说是:《Acclerated C++》作者是Koenig和Moo夫妇,非常厉害。他们的著作还有《c陷阱与缺陷》《c++沉思录》。《Acclerated C++》这本入门的书我没有看过,我觉得还是先找本国内的书好好看,看的差不多了,国外的经典书籍随便看就会觉得很有味道,否则你可能会很受打击。  入门的书至少要看两三遍(要彻底理解哦 ):)。如果是C++,我建议后面类的部分至少要理解三到五遍。说明一下,c++模板的部分可以先不用看,如果有兴趣的话,等把c++学的差不多了,我觉得可以把模板、STL、泛型编程结合起来学习,这个又是一个很大的工作量了,又得下很大的功夫。所以说,C++博大精深啊。  建议二、学习过程中要结合简单的算法,像冒泡还有类似c语言程序百例这样的小例子做做;更进一步应该做点大一点的项目,最好是控制台程序。或者你已经着手学习win32、MFC或linux,你也可以结合平台做点小的项目。  2、第一阶段是最苦的,接下来相对就知道应该怎么去学习了。这时候假设你已经有了扎实的c++基础。这是你可以选择也应该选择发展方向了,做企业级应用,还是系统开发,嵌入式设计或者游戏开发……  那时我其实并没有考虑那么多,因为我不是学计算机的,因此我就把参加一些计算机之类的考试当作学习目标。我当时其实C++语言基础已经很不错了,但是上机实践很少(那时我没有电脑),因此参加省计算机二级,全国计算机三级和全国计算机四级考试,结果上机都没有通过。我很郁闷,二级的时候是我不知道怎么样进那个DOS界面把题目调出来,三级的时候是很快就编好了,也通过运行了,可是成绩出来却不及格,四级的时候是编好了,可能是我那题目比较难,好像用了两次循环,结果那破机器竟然承受不了。后来一乱就毁了(当然主要是上机太少了)。不过我那些上机都没有去补考。二级和三级的时候是自恃水62616964757a686964616fe59b9ee7ad9431333332643335平已经远远超过考试要求了(^_^,见笑了,可能是因为等级考试还是比较简单的),四级的时候则因为自己已经通过高级程序员考试,觉得补考上机好像没必要。(我高程和四级都是在2003年考的)。  建议三:定位学习方向(见附录一)并好好学习计算机基础知识。在你还不确定学习方向,或者你还在大学本科期间,那么我认为应该先把计算机的基础知识好好学习一下。我认为计算机必学的基础课程而且要精学——首先是数据结构,其次是操作系统、软件工程,数据库。这四门课不管你将来想从事哪个方向的基本上都会用到。当然,有时间的话,其他基础课都是应该掌握的,离散数学、组成原理、体系结构、网络、编译原理甚至跨学科的。方向是很重要的,因为知识其实是无限的,一个小小的领域就够你研究很久了。本科生可能还没有什么方向的感觉,但是到了研究生你一定要清楚自己到底想要做什么,要往哪个方面发展,不要盲目学,瞎学乱学,否则最后可能看似什么都会,其实什么都不会。  我也曾经学习过Java一段时间,这篇文章既然是谈编程语言的入门学习,我也简单说一说。因为有了比较C++扎实的语言基础,所以Java学起来比较轻松。我先找了国内一本薄薄的教材很快看了一遍(几乎都理解,但是只看了一遍),空闲的时间配合清华张孝详老师的java视频。以后其实才算我真正要开始入门JAVA的学习,我用了是《core java》中文第六版(本来想用候捷翻译的第二版的《Thinking in Java》,发现被同学弄丢了),这本书我差不多用了20天才把里面的知识都搞懂,当然包括程序风格的模拟,最重要的时我把有关GUI编程的那三章里面的程序例子几乎可以默写出来(当然,那是因为我理解了,其实这样就变成了我的知识了),里面的API我也记得差不多了。(说明:Java里面的GUI编程没什么用处了,建议大家先跳过,GUI不是Java的长处,如果以后需要的话再查手册或者再记忆学习)。  其实学习了C++以后,学习Java是比较容易了,但是建议不要两种都学啦,他们的用途是不一样的,你应该熟悉其中一种,更重要的是熟悉其应用领域所需要的专业知识甚至平台,以及使用他们的企业,有创业计划的还应该考虑一下他们的应用领域,最重要的是思考他们的潜在的应用领域。   对于初级的学习就讲到这里,接下去的学习其实都是高级部分,先不介绍了,因为:一、我自己都还没有学懂,这里乱吹会误人子弟。 二、高级东西的学习很多,有很多选择,又需要很多繁琐的知识,可能也一下子没办法讲清楚。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 490382048@qq.com 举报,一经查实,本站将立刻删除。

相关推荐

大家在看

返回顶部