ImageVerifierCode 换一换
格式:PPT , 页数:38 ,大小:588.50KB ,
资源ID:347227      下载积分:100 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-347227.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第三章物件导向的观念-中华大学成就学生为职场赢家.ppt)为本站会员(ga****84)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

第三章物件导向的观念-中华大学成就学生为职场赢家.ppt

1、第三章 物件導向的觀念,軟體工程-物件導向程式設計與UML系統分析實作,3.1 模組與物件,在物件導向程式設計的觀念提出之前,軟體開發者,大多是使用結構化的程式設計。,模組,模組就是用一個單一的函式所組成一連串的程式敘述, 可解決一最小的問題。,圖3-1汽車行駛程式呼叫的模組圖,註:以流程圖來表現,每個方塊代表一個模組,物件導向語言,物件導向語言顧名思義就是以物件為程式設計時最主要考慮到的對象。,圖3-2物件之間靠傳遞訊息,啟動某些操作,3.2物件導向基本觀念,世界是由各種物件(Object)所組成,同類的物件可以再加以抽象化而成類別(Class),而每一類別具有自己的屬性(Attribute

2、)來描述其特性與方法(Method)來描述其動態之行為,彼此間之互動是藉由訊息(Message)傳遞來溝通。,類別(Class),為了簡化問題必須將各個物件加以分類,分類的結果便是產生類別(Class),圖3-3 物件導向類別圖表示法,實體 (Instance),實體也就是物件實體,是經由類別描述過的物件,可說是類別的實體化,也就是產生一個一個的物件。,屬性(Attribute),屬性是物件所擁有的資料描述或項目,亦有稱為資料結構或狀態。有的將靜態的資料稱為屬性,動態的資料稱為狀態(State)。,方法(Method),方法亦稱為操作(Operation)或行為(Behavior),方法是物件

3、的動作,不同的訊息會對應到不同的處理方法。,訊息(Message),訊息是物件之間互相溝通的工具,當物件收到訊息後,物件會依據訊息內容而執行不同的動作。,3.3 物件重要特性,封裝性(Encapsulation)繼承(Inheritance) 多型 (Polymorphism) 覆蓋(Overriding) 動態連結(Dynamic Binding),封裝性(Encapsulation),封裝即所謂資訊隱藏(Information Hiding),主要是將物件的內外部份分開來,其他物件只能藉由外部的界面取得其提供的資料,物件內部的細節資料則隱藏起來,其他物件即無法瞭解此物件的內部細節,若不經過

4、允許之窗口(即此物件提供之方法)便無從更動此物件內之資料。,圖3-5 物件的封裝性,繼承(Inheritance),:又稱為一般化(Generalization)與特殊化(Specialization)的關係,A繼承B乃指物件類別A是物件類別B的一種,因此物件類別A可以繼承物件類別B的屬性與方法。兩個以上類別一般化後之類別稱為超類別(Superclass)。,圖3-6 類別的繼承,多型 (Polymorphism),所謂多型是指類別內同名的方法,因在不同的類別中定義,執行時會有不同結果的功能。,圖3-7多型,覆蓋(Overriding),每一類別會定義所屬之屬性與方法,當此類別被要求提供某種服

5、務而需執行某方法時,若此類別本身定義有此方法,則可以直接執行此方法,否則此類別會沿著類別階層由下往上找,直至找到為止。,圖3-8 覆蓋,動態連結(Dynamic Binding),所謂連結是將程式中所使用到的各名稱(包括程式名稱及變數名稱),分配到適當的記憶體位置。如果是在程式執行過程中才完成連結的,則稱為動態連結(Dynamic Binding),又稱為延後連結(Late Binding),圖3-9 動態繫結圖,3.4內聚力與耦合力,評估一個系統設計的好壞,亦即計算獨立性的標準,有內聚力(cohesion)與耦合力(coupling)兩種。,3.4.1 耦合力分類,程式設計的領域時,表示程式

6、單元之間牽連相依的程度,模組之間的耦合度欲寬鬆愈好。,耦合力,耦合力是指兩個模組之間的獨立性高低,以物件導向程式而言是指物件與物件之間的獨立性高低。,圖3-10耦合力由低至高,3.4.2 內聚力分類,程式的內聚力則是愈強愈好。,內聚力(Cohesion),內聚力(Cohesion)指的就是事物凝聚的狀態或程度。,圖3-11 內聚力的由低至高,3.4.3 物件的內聚力和耦合力,物件導向語言的特性,剛好符合了高內聚力和低耦合力,這是物件導向的優點,也更促進了軟體的可重覆再使用的能力。,3.5 物件導向語言的種類,4個基本的分支:1. 基於Smalltalk語言的;包括Smalltalk的5個版本,

7、以Smalltalk-80爲代表。2.基於C語言的;包括 objective-C、 C+、 Java。(編輯註:及 Microsoft 近來所提出的 C#)。3.於LISP語言的;包括 Flavors、 XLISP、 LOOPS、 CLOS。4.於PASCAL語言的;包括 Object Pascal (ex:Delphi)、 Turbo Pascal、 Eiffel、 Ada 95。,3.6 Java,Java是個純物件導向語言,為Sun公司所發展。,圖3-12 Java的吉祥物Duke和代表Java的Java咖啡杯,JAVA的歷史,將此語言定名為GREEN團隊成員平時都愛喝的咖啡名稱JAVA

8、。1995年5月23日,SUN正式對外發表了JAVA語言,JAVA程式語言的特性,1.熟悉且簡易(simple and familiar) 2.物件導向(object oriented)3.分散式(distributed)4.直譯式(interpreted) 5.堅韌性(robust)6.安全(secure)7.架構中立(architecture neutral)8.高效率(high performance)且多執行緒(multithreaded)9.bytecides能迅速轉成機械碼。10.而多執行緒是指各程式碼能同時進行各自的工作。11.動態(dynamic)連結。,3.7 案例研討-訂房系統,3.8 總結,隨著經驗的積累,物件導向的發展將日漸流行,物件導向技術也將日趨成熟。,

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。