- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
lectricalngineeringee主控台应用程式-范例5a
Chapter 1 - 概 論 1-1 物件導向的程式設計 1-2 相關程式語言簡介 1-3 .NET Framewor k 1-4 Visual Studio 共用整合式開發環境的介紹 1-5 程式的編譯與執行 1 - 1 物件導向的程式設計 物件導向的程式設計 (Object Oriented Programming,OOP) 是人們在程式語言中逐漸累積的成果,這個觀念在1970年代就已提出,只是當時時機未到。現在,OOP則已是所有程式語言的標準配備,為了說明OOP大行其道的原因,筆者將程式語言的發展分為三個時期,分別是:非程序導向、程序導向及物件導向。說明如下: 非程序導向 早期的程式語言,並沒有內儲副程式 (又稱程式庫)。當我們開發新的應用程式時,如果某一功能與之前寫過的程式相近,則會將此段已完成的程式整段複製,並稍加修改即可重新加以利用。 但是,這些程式的分身包括本尊,自從複製出來以後就開始以各自的方式發展,結果造成各版本的差異越來越大,這些程式很難弄清楚誰複製誰,彼此之間也難再共用某些程式碼,當遇到錯誤,或欲新增功能時,更是很難逐一修改所有的程式。 程序導向 為了解決以上程式共用問題,各編譯器廠商便開始提供一些大家常用的函式,比較有規模的軟體設計公司會將一些常用的函式集中在一個函式庫,旗下的軟體產品一律呼叫這些標準的函式庫,而不是從函式庫複製出來修改,此即為程序導向的程式設計。 程序導向與非程序導向相比,的確解決了程式共用的問題,但還是有些問題不夠順暢。例如:有些函式庫會隨著需求增加而有不同版本,當某些函式功能增加時,只好重新取函式庫的函式加以修改並賦與新的名稱。如此累積,函式庫裡的函式有的功能相近、或是前後版本不同、又或是函式裏的變數來源不明造成使用者的混亂。為了突破以上瓶頸,於是有物件導向的發展,以解決以上程序導向的不足。 物件導向 程序導向中的函式,存有許多解決問題的函式 (在目前的物件導向中另稱為方法),它是偏重在方法的解決。但是,人類的生活方式不僅是單純的行為描述,更存在著屬性的記載。例一:描述一個人時:「他的名字是洪國勝,身高 172、體重 70,具有滾進、游泳及跑步的能力。」 例二:描述一輛車子時:「名字是SENTRA,排氣量是 1600 c.c.,耗油量是每公里 0.1 公升且具有每小時 120公里的移動能力。」 以上人與車即稱為“物件”;名字、身高、排氣量則稱為“ 屬性”;而滾進、游泳、跑步、移動則稱為“ 方法”。 基於物件導向的新觀念,程式開發工具製訂一種新的型別,稱為類別。 物件導向 每一類別都有屬於自己的方法,也就是將眾多的函式依照類別存放,如此可解決目前日益龐大的函式命名與函式取用的困擾。 例如:在程序導向時,關於開門的函式即有電梯開門、汽車開門等數種方法。而在物件導向時,開門這個方法是附在相對應的類別裏。在電梯類別有電梯的開門、在汽車類別有汽車的開門,所有方法名稱都叫“開門”。撰寫程式時:「電梯.開門」、「汽車.開門」 (物件與方法、屬性之間以點(.)運算子連結)。 由上例可得知:物件導向:可簡化程式的撰寫、可減少程式出錯的機會。而程序導向:因所有的函式都集中,就有可能用錯方法。(例如,用開電梯門的方法去開汽車的門,結果當然是錯的。) 物件導向 物件導向 - 封裝(Encapsulation) 軟體科技的開發是起步較晚的領域。在汽車、電視及收音機等產品上這些產品皆很重視物件的封裝。 例如,以電視而言,我們發現內部有許多零件與開關,對於電視製造商而言,它們使用機殼將這些零件與開關「封裝」起來,才能避免使用者任意破壞,只留下部份開關與螢幕讓使用者欣賞節目。 對於類別的規劃應重視所有方法、欄位及屬性封裝,使得這些成員有不同的封裝等級,以避免主程式與類別庫之間的干擾。例如:電視的一些開關與旋鈕,有些是開放給一般的使用者調整,有的是讓維修工程師調整,有些則永遠不讓任何人調整。 物件導向 - 繼承(Inheritance) 任何新產品的開發不是無中生有,而是從舊有的產品中繼承某些特性,再加入新的零件或修改部份零件而成一項新的產品。例如:SENTRA180 正是繼承 NEW SENTRA 而來,只是排氣量提高了、內裝豪華,但是原來的輪胎、方向盤及座椅還是用原來 NEW SENTRA 的東西,這就是繼承的道理,使得新產品的開發得以縮短時程。軟體的開發何嘗不應如此? 繼承的另一優點是:同一方法得以讓數個新舊版本同時存在。因為當有新產品時,不可能同時讓新舊客戶同時更新,所以必須讓這些不同的版本同時存在以滿足不同的產品需求。 物件導向 - 多形(Polymorphism) 多形 (Polymorphism) 有些譯成「同名譯式」,它的原文是希臘文,意指:一種樣式有多種表
您可能关注的文档
- mpegfamily简介.ppt
- mp3450e经济型.pdf
- movementtrainingforfootball-南京体育学报学报.doc
- mosfet高速驱动设计此文章出处-英飞凌电源管理与射频在线技术.pdf
- mosfet放大器讲义与作业-mipaper.pdf
- mosfet串联技术在电力工程电源中的应用-电子器件.pdf
- morphologicalstudiesonthe-水生生物学报.pdf
- mo含量对钛合金晶粒长大行为及力学性能的影响-中国有色金属学报.pdf
- modelview结构广东水利电力职业技术学院计算机系-indexof.ppt
- mr-8080-指纹密码锁.pdf
- lcd影像定位系统-自动控制工程学系-逢甲大学.pdf
- lght503thdvd组合音响-lg电子中国.pdf
- landstar陆之星太阳能控制器-epsolar.pdf
- lambdamart概述.pdf
- lagrange力学在含tcsc电力系统hamilton实现中-电网与清洁能源.pdf
- lc3型离子注入机的t制和应用屈保春.pdf
- laboratoriodelaclasedeelectrónicaindustrial.doc
- l1l2l3rse电路化简的原则无电流-温州中学.ppt
- l∥∥川卅――一一-questel.pdf
- kz-28型可控震源高精度隔振系统研究-天津科技大学学报.pdf
文档评论(0)