http://www.wanLaohu.cn/21.php http://www.pt1828.cn/29.php http://www.pt988.cn/36.php http://www.daLaohu678.cn/22.php http://www.hubobo.cn/16.php http://www.5881828.com/58.php http://www.hubobo.cn/16.php http://www.daLaohu678.cn/22.php http://www.jdb1828.cn/32.php http://www.989899898.com/15.asp http://www.wanLaohu8.cn/23.php http://www.pt885.cn/35.php http://www.383833838.com/10.php http://www.wanhu678.cn/19.php http://www.282822828.com/9.php http://www.787877878.com/14.php

      <kbd id='pzm1'></kbd><address id='vdsq'><style id='whfk'></style></address><button id='hx8l'></button>

          大赢家电玩城上分微信


          时间:$时间$    文章来源:大赢家电玩城上分微信    点击次数:46140    参与评论 30187人


          W68年,EdsgerDijkstra发表f—篇关于多道程序系统设计的文章,名为

          犮件体系对构介结

          有经验的二进制编程人员不愿意改变他们的习惯,不愿意采用新的工作// 式并且抵制闩动程序设汁。但是,在丨ntcrnationa丨Business Machines (!BM) 公司为科学计算程序疰立了一个名为FORTRAN < FORmu丨a TKANs!a〖or)的自 动程序设计系统后,自动程序设计已经成了占支配地位的模式。自动稈汴设计 不仅提高^编程人员的生产率,而且还使程序可以在不同的硬件平台上移棺p 在自动程序设计前,将程序移椬到新硬件上盂要审新编写幣个秤序,这样做成 本很高,妨碍了硬件的销肖。在20世纪60年代中期,FORTRAN成了科学程卞 设计的主要语言。

          在20世纪60年代后期,人们已经淸楚地知道,软件开发与物理结构的建造 不一样:不能通过简单地雇用更多的编程人员来加快一个滞后的项目(Brooks, 19乃)。软件已经变成了许多系统的一个关键组件,而且由于太复杂,不一定 能按计划或质量进行开发。这引起金融和公共安全方面的关注。这种状况发栈 成了所谓的软件危机(software crisis),为应对这种悄况,软件开发闭体创立 了软件工程(software engineering)这门学科。它要求软件制造业述立相传统 的用于丄程部门的理论基础和规程之上。

          犮件体系对构介结

          根据Pah丨(Pah丨,丨996>的观点,工程师的主要任务“足将他们的科学和 工程知识应用于技术问勉的解决方案,然后在需求和约束条件的范围内,根据 素材、技术、经济、法律、环境及与人有关的条件优化这些方案。”我们可以 扩充这个定义来说明软件工程师的主要任务。非正式地说,软件L程师的主抝 仟务适将他们的逻辑和程序设计知识应用于技术和务问题的解决方案。然后, 他们在滞求和约束条件的范围内,根据逻辑(软件工程家材)、软件技术和经 济、法徉、环境、安全等条件优化这些解决方案。

          C++和Java这样的强有力的通用程序设计语言提供^建立许多复杂问韪解 决方案的能力.它们允许稃序设计R将精力集中于手头的问题.而不用拘心H. 体的硬件功能。通用的面向对象的语言并不能独自解决复杂的问题;它们必顼 与指导原则和设计橡式一起使用。诸如God Class (Riel,丨996)这种类.它实 际上只是结构化子稈序的一个大集合,这种类足不经常吞到的。

          术语工程(engineering)在应用于软件时,并不总是完仝恰3的。本人认 为,软件作为一个专业来说,其范围太宽了。软件开发涉及许多子学科这些 子学科包括诸如数据库设计和实现、结构S询语言(Structured Query Language,SQL)、Java、C++程序设计、可扩展样式表语言转换(eX丨cnsihle Stylesheet Language Transformations,XSLT )编码等专门研究9 这些专业甚至 还可以史为详细地划分。就俅电子和机械工程学科中龟々家那样,这些技术中 的每一种技术都滿要专家。这些领域的每一种技术都可以进一步专收化。丨1前, 我们认为软件开发是一个印一的工程学科。实际上,它炝儿个相关的学科、、想 像一下给予XSLT的组件开发人员非常淸楚的规格说明,这呰规格说明必须与 给定的转换或样式表一致,其中包括良好定义的输入和输出。该XSLT设计者 可利用现有的工具和方法生成一个样式表,有可能的话,茧用现冇XSLT库的 组件。这要假定我们能够提供良好定义的规格说明。

          1.1软件开发的演变

          笫二次模式转变发生在20世纪70年代前半期.那时,结构设计和软件幵发 模切已经取得f进展。它们基于更为有机的发展方法,有别于硬件「.程的基f 淨布的方法,软件设计的定坫研究已经开始,但从未在主流行业中发展起来, 部分原闪足山于软件系统的阂有特件所决定的。这一时期的研究人员开始将粞 力集中在软件设计上,H的是解决幵发复杂软件系统的问题。这个工作假设. 软件歼发中的软件设计是一项独立于软件实现的活动,它需要自己的二具、技 术和违模语言。

          ?可以拷贝和修改的,成荇不用修改就能使用的源代码(例如,来自共皁 软件库或从书屮拷贝下来的C++箅法)。

          1972年,David Parnas发表了一篇论文,讨论系统设计中的模块化如何能 在缩短开发时间的同时提高系统的灵活性和可理解性(Parnas,丨972 )。他在程 序设丨丨中引人了信息球藏(丨nforma丨丨on hid丨ng>的槪念,这婭当今软件幵发中 圾基本的设计原理之一。

          一般来说,每隔I0年软件开发领域在软件设计模式方面都要经历一次转变。 随着问题和技术越来越复杂,设计方法和工具必须有所发展,软件开发大约诞 生于丨949年,当时创造了第一台存储程序计算机,剑桥EDSAC。程序最初是 作为二进机器指令建立的。这种程序设计方法很慢也很困难,因为人不容易记 住长长的复杂的二进制串。当时为设计程序构思f—种容易阅读的简写方式。 最初,程序设计简写方式所依輓的概念是让一个程序设计员设计程序,另一个

          ?可在编译时链接到某个程序或在运行时加载和绑定的二进制代码“啤” (如 socket库)。

          为y冇效地琅用组件,必须按照绀件的抽象槪念来表示解决方案很多时 候,某个特定的抽象槪念(如关系实体)不合要求,就橡自然语^不具有表达 某些概念的词汇一样。与创造新的诃汇一样,我们必须创造新的技术a向向讨 象的数据库就楚这种创造的一个例子,当面向对象的程序设计开始取代现打结 构化语言(如C和Pascal )时,在程序设计语n的信息表示和数据序的信息表 示之间就产生了语义间隙许多文章和书供将其称为对象关系映射问挫\ I丨的, 我们已经看到了帮助克脤这个问题的对象关系映射模式方面的文审:

          20世纪80年代,软件工程研究的审点又有所变化,主要研究如何将设丨丨及 设计过程集成到管理的环境中。坫构设汁力法已经跟不L软件系统复杂性的增 长,在20世纪80年代后半期,开始出现一种新的设汁梭式.即面向对象 (objec丨-orienta丨丨on)的设计模式。利用面向对象的程序设汁,软件工程师可以 (从理论上说> 在一个实现语J中对问题域和方案域进行迮梭,面向对象方法 的研究可追溯到20世纪60年代后期Simula (―种模拟程序设计语言)的研制, 这个语言在Smal!丨a!k中得到丫进一步的改进。随者C++的出现,面向对象的挥 序设计开始流行起来。此时,关十敁用程序设计有一个抟变,即从基于文本的 终端到阉形用户界面(GUI)的转变。面向对象的程序设汁很适合于GU丨的研 究。在20世纪80年代后期和90年代初期,术语软件体系蛣构(software archi丨ec丨ure)开始在文献中出现。

          20世纪80年代,软件工程研究的审点又有所变化,主要研究如何将设丨丨及 设计过程集成到管理的环境中。坫构设汁力法已经跟不L软件系统复杂性的增 长,在20世纪80年代后半期,开始出现一种新的设汁梭式.即面向对象 (objec丨-orienta丨丨on)的设计模式。利用面向对象的程序设汁,软件工程师可以 (从理论上说> 在一个实现语J中对问题域和方案域进行迮梭,面向对象方法 的研究可追溯到20世纪60年代后期Simula (―种模拟程序设计语言)的研制, 这个语言在Smal!丨a!k中得到丫进一步的改进。随者C++的出现,面向对象的挥 序设计开始流行起来。此时,关十敁用程序设计有一个抟变,即从基于文本的 终端到阉形用户界面(GUI)的转变。面向对象的程序设汁很适合于GU丨的研 究。在20世纪80年代后期和90年代初期,术语软件体系蛣构(software archi丨ec丨ure)开始在文献中出现。

          有经验的二进制编程人员不愿意改变他们的习惯,不愿意采用新的工作// 式并且抵制闩动程序设汁。但是,在丨ntcrnationa丨Business Machines (!BM) 公司为科学计算程序疰立了一个名为FORTRAN < FORmu丨a TKANs!a〖or)的自 动程序设计系统后,自动程序设计已经成了占支配地位的模式。自动稈汴设计 不仅提高^编程人员的生产率,而且还使程序可以在不同的硬件平台上移棺p 在自动程序设计前,将程序移椬到新硬件上盂要审新编写幣个秤序,这样做成 本很高,妨碍了硬件的销肖。在20世纪60年代中期,FORTRAN成了科学程卞 设计的主要语言。

          1.2.4建模语言和表示法

          ?以二进制(编译过的)形式得到,耐以导入或链接到其他祖件或砬用系 统的商用成品软件(COTS >组件。包括:

          将软ft体系结构设计师视为一种软件工程师?他不必在所冇特定软件丁程领域 内都是专家。这个软件专家是体系结构设汁方而的专家,他了解各种技术,足 以把这些技水集成到…个复杂间题的解决方案中。

          http://www.wanLaohu8.cn/2/ http://www.hubobo.cn/1.html http://www.9881828.com/2/ http://www.dzLhj.cn/1.html http://www.585855858.com/1.html http://www.585855858.com/1.html http://www.pt1828.cn/3/1.html http://www.xd1828.cn/1.html http://www.hubobo.cn/3/1.html http://www.hubobo.cn/2/ http://www.pt1828.cn/2/ http://www.byb888.cn/3/1.html http://www.niuhuwan.cn/3/1.html http://www.wanLaohu8.cn/1.html http://www.181811818.com/3/1.html