帮帮文库

返回

抽象过程-软件外文翻译 抽象过程-软件外文翻译

格式:word 上传:2025-07-21 06:53:02
问题的表述。相比以前我们所拥有的所有语言,这是种更灵活和更强有力的语言抽象。所以,允许以问题的形式来描述问题,而不是以执行解决方案的计算机的形式来描述问题。但是它仍然与计算机有联系每个对象看起来都有点像台微型计算机它具有状态,并且能够执行你赋予它的各种操作。如果要在现实世界中对对象作类比,那么说它们都具有特性和行为似乎不错。曾经总结了第个成功的面向对象语言,同时也是赖为根基的语言之的的五个基本特性,这些特性表现了种纯粹的面向对象程序设计方式万物皆为对象。将对象视为奇特的变量,它可以存储数据,除此之外,你还可以要求它在自身上执行操作。理论上讲,你可以抽取待解问题的任何概念化构件狗建筑物服务等,将其表示为程序中的对象。程序是对象的集合,它们彼此通过发送消息来调用对方。要想产生个对对象的请求,就必须对该对象发送条消息。更具体地说,你可以把消息想象为对个特定对象的方法的调用请求。每个对象都拥有由其它对象所构成的存储。你可以通过创建包含现有对象集合的包的方式来创建新类型的对象。因此,你可以在程序中构建复杂的体系,同时将其复杂性通过对象的质朴性得以屏蔽。每个对象都拥有其类型。按照通用的说法每个对象都是个类的个实例,其中类就是类型的同义词。每个类中最重要的区别于其它类的特性就是你可以发送什么消息给它特定类型的所有对象都可以接收同样的消息。这是句意味深长的表述,你在稍后便会看到。因为圆形类型的对象同时也是几何形类型的对象,所以个圆形对象必定能够接受发送给几何形对象的消息。这意味着你可以编写与几何形交互并自动处理所有与几何形性质相关的事物的的代码。这种可替代性是中最强有力的概念之。提出了个对对象的更加简洁的描述对象拥有状态行为和标识。这意味着每个对象都可以拥有内部数据它们给出了该对象的状态和方法它们产生行为,并且每个对象都可以唯地与其他对象相区分开,具体说来,就是每个对象在内存中都有个唯的地址。每个对象都有个接口亚里士多德大概是第个深入研究类型的哲学家,他曾提出过鱼类和鸟类这样的概念。所有的对象都是唯的,但同时也是具有相同的特性和行为的对象所归属的类的部分,这种思想被直接应用于第个面向对象语言,它在程序中使用基本关键词来引入新的类型。,就像其名字样,是为了开发诸如经典的银行出纳员问题这样的仿真程序而创建的。在银行出纳员问题中,有出纳员客户账户交易和货币单位等许多对象。在程序执行期间具有不同的状态而其他方面都相似的对象会被分组到对象的类中,这就是关键词的由来。创建抽象数据类型类是面向对象程序设计的基本概念之。抽象数据类型的运行方式与内置类型几乎完全致你可以创建类型的变量按照面向对象的说法,程其为对象或实例,然后操作这些变量称其为发送消息或请求你发送消息,对象就能够知道需要做什么。每个类的成员或元素都共享相同的性质每个账户都有结余金额,每个出纳都可以处理存款请求等。同时,每个成员都有其自身的状态每个账户都有不同的结余金额,每个出纳都有自己的名称。因此,出纳客户账户交易等都可以在计算机程序中被表示成为唯的实体这些实体就是对象,每个对象都属于定义了特性和行为的个特定的类。所以,尽管我们在面向对象程序设计中实际所作的是创建新的数据类型,但事实上所有的面向对象程序设计语言都使用关键词来表示数据类型。当你看到类型词时,请将其作为类来考虑,反之亦然。既然类被描述成了具有相同特性数据元素和行为功能的对象集合,那么个对象都有个它所能提供服务的高内聚的集合。在良好的面向对象设计中,每个对象都可以很好地完成项任务,但是它并不试图多更多的事。就像在这里看到的,不仅允许些对象可以通过购买获得打印机接口对象,而且还使对象在处重用成为可能支票排版目录对象。将对象作为服务提供者看待是件伟大的简化工具,它不仅在设计过程中非常有用,而且当其他人试图理解你的代码或重用个对象时如果他们看出了这个对象所能提供的服务的价值所在的话,它会使将对象调整到适应其设计的过程变得简单得多。被隐藏的具体实现将程序开发人员按照角色分为类创建者,那些创建新数据类型的程序员和客户端程序员,那些在其应用中使用数据类型的类消费者是大有裨益的。客户端程序员的目标是收集各种用来实现快速应用开发的类。类创建者的目标是构建类,该类只向客户端程序员暴露必需的部分,而隐藏其它所有部分。为什么要这样呢因为如果加以隐藏,那么客户端程序员将不能够访问它,这意味着类创建者可以任意修改被隐藏的部分,而不用担心对其他任何人造成影响。被隐藏的部分通常代表对象内部脆弱的部分,它们很容易被粗心的或不知内情的客户端程序员所毁坏,因此将实现隐藏起来可以减少程序的。实现隐藏的概念再怎么强调也不会过分。在任何相互关系中,具有关系所涉及的各方都遵守的边界是十分重要的事情。当你创建个类库时,你就建立了与客户端程序员之间的关系,他们同样也是程序员,但是他们是使用你的类库来构建应用,或者是构建更大的类库的程序员。如果所有的类成员对任何人都是可用的,那么客户端程序员就可以对类作任何事情,而不受任何约束。即使你希望客户端程序员不要直接操作你的类中的些成员,但是如果没有任何访问控制,将无法阻止此事发生。所有东西都将赤裸裸地暴露于世前。因此,访问控制的第个存在原因就是让客户端程序员无法触及他们不应该触及的部分这些部分对数据类型的内部操作来说是必需的,但并不是用户需要的用来解决特定问题的接口的部分。这对用户来说其实是项服务,因为他们可以很容易地看出哪些东西对他们来说很重要,而哪些东西可以忽略。访问控制的第二个存在原因就是允许库设计者可以改变类内部的工作方式而不用担心是否会影响到客户端程序员。例如,你可能为了减轻开发任务而以种简单的方式实现了个特定类,但稍后你就发现你必须改写它才能使其运行得更快。如果接口和实现可以清晰地分离并得以保护,那么你就可以轻而易举地完成这项工作。使用三个关键字来在类的内部设定边界。它们的含义和用法非常易懂。这些访问指定词决定了紧跟其后被定义的东西可以被谁使用。表示紧随其后的元素对任何人都是可用的,另方面,这个关键字表示除类型创建者和该类型的内部方法之外的任何人都不能访问的元素。就像你与客户端程序员之间的堵砖墙,如果有人试图访问成员,就会在编译时刻得到信息。关键字与作用相当,差别仅在于继承类可以访问成员,但是不能访问成员。稍后将会对继承进行介绍。个类就确实是个数据类型,就像所有浮点型数字具有相同的特性和行为集合样。二者的差异在于,程序员通过定义类来适应问题,而不再被强制只能使用现有的被设计用来表示在机器中的存储单元的数据类型。你可以根据需求,通过添加新的数据类型来扩展编程语言。编程系统欣然接受新的类,并且给予它们与内置类型相同的管护和类型检查。面向对象方法并不是仅局限于构件仿真程序。无论你是否同意任何程序都是你所设计的系统的个仿真的观念,面向对象技术确实可以将大量的问题降解为个简单的解决方案。旦类被建立,你想要创建该类的多少个对象,就可以创建多少个了,然后去操作它们,就像它们是存在于你的待解问题中的元素样。事实上,面向对象程序设计的挑战之,就是在问题空间的元素和解空间的对象之间创建对的映射。但是,你怎样才能获得对你有用的对象呢必须有种方式产生对对象的请求,使对象完成诸如完成笔交易在屏幕上画图打开开关之类的任务。每个对象都只能满足些请求,这些请求由对象的接口所定义,决定接口的便是类型。以电灯泡为例来做个简单的比喻接口定义了你能够对特定对象发出的请求。但是,在程序中必须有满足这些请求的代码。这些代码与隐藏的数据起构成了实现。从过程型编程的观点来看,这并不太复杂。在类型中,每个可能的请求都有个方法与之相关联,当你向对象发送请求时,与之相关联的方法就会被调用。此过程通常被总结为你向个对象发送消息产生请求,这个对象便知道此消息的目的,然后执行对应的程序代码。上例中,类型类的名称是,特定的对象的名称是,你可以向对象发出的请求是打开它关闭它将它调亮将它调暗。你以这种方式创建了个对象定义这个对象的引用,然后调用方法来创建该类型的新对象。为了向对象发送消息,你需要声明对象的名称,并以圆点符号连接个消息请求。从预定义类的用户观点来看,这些差不多就是用对象来进行设计的全部。前面的图是形式的图,每个类都用个方框表示,类名在方框的顶部,你所关心的任何数据成员都描述在方框的中间部分,方法隶属于此对象的,用来接收你发给此对象的消息的函数在方框的底部。通常,只有类名和公共方法被示于设计图中,因此,方框的中部并不绘出。如果你只对类型感兴趣,那么方框的底部甚至也不需要被绘出。每个对象都提供服务当你正是如开发或理解个程序设计时,最好的方法之就是将对象想象为服务提供者。你的程序本身将向用户提供服务,它将通过调用其它对象提供的服务来实现这目的。你的目标就是去创建或者最好是在现有代码库中寻找能够提供理想的服务来解决问题的对象集合。着手从事这件事的方式之是询问如果我可以将问题从表象中抽取出来,那么什么样的对象可以马上解决我的问题呢例如,假设你正在创建个簿记系统,你可以想象系统应该具有些包括了预定义的簿记输入屏幕的对象,个执行簿记计算的对象集合,以及个处理在不同的打印机上打印支票和开发票的对象。也许上述对象中的些已经存在了,但是对于那些并不存
下一篇
温馨提示:手指轻点页面,可唤醒全屏阅读模式,左右滑动可以翻页。
抽象过程-软件外文翻译.docx预览图(1)
1 页 / 共 12
抽象过程-软件外文翻译.docx预览图(2)
2 页 / 共 12
抽象过程-软件外文翻译.docx预览图(3)
3 页 / 共 12
抽象过程-软件外文翻译.docx预览图(4)
4 页 / 共 12
抽象过程-软件外文翻译.docx预览图(5)
5 页 / 共 12
抽象过程-软件外文翻译.docx预览图(6)
6 页 / 共 12
抽象过程-软件外文翻译.docx预览图(7)
7 页 / 共 12
抽象过程-软件外文翻译.docx预览图(8)
8 页 / 共 12
抽象过程-软件外文翻译.docx预览图(9)
9 页 / 共 12
抽象过程-软件外文翻译.docx预览图(10)
10 页 / 共 12
抽象过程-软件外文翻译.docx预览图(11)
11 页 / 共 12
抽象过程-软件外文翻译.docx预览图(12)
12 页 / 共 12
预览结束,喜欢就下载吧!
  • 内容预览结束,喜欢就下载吧!
温馨提示 电脑下载 投诉举报

1、手机端页面文档仅支持阅读 15 页,超过 15 页的文档需使用电脑才能全文阅读。

2、下载的内容跟在线预览是一致的,下载后除PDF外均可任意编辑、修改。

3、所有文档均不包含其他附件,文中所提的附件、附录,在线看不到的下载也不会有。

  • Hi,我是你的文档小助手!
    你可以按格式查找相似内容哟
DOC PPT RAR 精品 全部
小贴士:
  • 🔯 当前文档为word文档,建议你点击DOC查看当前文档的相似文档。
  • ⭐ 查询的内容是以当前文档的标题进行精准匹配找到的结果,如果你对结果不满意,可以在顶部的搜索输入框输入关健词进行。
帮帮文库
换一批

搜索

客服

足迹

下载文档