📄 oobject102306.htm
字号:
<html><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><!-- InstanceBegin template="/Templates/neirong.dwt" codeOutsideHTMLIsLocked="false" -->
<head>
<!-- InstanceBeginEditable name="doctitle" -->
<title>UML软件工程组织</title>
<!-- InstanceEndEditable -->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<!-- InstanceBeginEditable name="head" --><!-- InstanceEndEditable -->
<style type="text/css">
<!--
@import url(../css/style.css);
-->
</style>
<script language="JavaScript"><!--function SymError(){ return true;}window.onerror = SymError;var SymRealWinOpen = window.open;function SymWinOpen(url, name, attributes){ return (new Object());}window.open = SymWinOpen;//--></script><script language="JavaScript" fptype="dynamicoutline">
<!--
function dynOutline() {}
//-->
</script>
<script language="JavaScript1.2" fptype="dynamicoutline" src="outline.js">
</script>
<script language="JavaScript1.2" fptype="dynamicoutline" for="document" event="onreadystatechange()">
<!--
initOutline()
//-->
</script>
</head>
<body onclick="dynOutline()" language="Javascript1.2">
<table width="760" height="38" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="129" align="center">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="100" height="71">
<param name="movie" value="../images/logo.swf">
<param name="quality" value="high">
<embed src="logo-1.swf" tppabs="http://www.uml.org.cn/images/logo.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="100" height="71"></embed></object></td>
<td width="631"><B><FONT color=#008080
size=6>UML</FONT><FONT color=#008080><FONT face=方正姚体 color=#008080
size=6>软件工程</FONT><FONT face=方正姚体 size=6>组织</FONT></FONT></B>
<table width="50%" border="0" align="right" cellpadding="0" cellspacing="1">
<tr>
<td class="content"><div align="center" class="content"><a href="javascript:if(confirm('http://www.uml.net.cn/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.uml.net.cn/'" tppabs="http://www.uml.net.cn/" target="_blank" class="content_a">北京火龙果软件工程技术中心</a></div></td>
</tr>
</table></td>
</tr>
</table>
<hr width="760" size="1" noshade>
<table width="760" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="56" align="center" valign="middle" class="title"> <B><FONT color=#ff0000
size=3><!-- #BeginEditable "1" --></FONT>物件導向實例 – 是定理還是方法<span class="h2"><br>
</span><FONT color=#ff0000
size=3><!-- #EndEditable --></FONT></B></td>
</tr>
<tr>
<td height="40" align="center" class="formtitle"> <!-- #BeginEditable "2" -->作者:吳明皓<br>
2002 年 8 月 22 日星期四 <!-- #EndEditable --></td>
</tr>
</table>
<table width="760" height="65" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td height="65" class="content"><!-- #BeginEditable "3" -->
<table width="85%" border="0" align="center">
<tr>
<td class="content">
<div class="Section1" style="LAYOUT-GRID: 18pt none">
<p class="MsoNormal" style="MARGIN: 6pt 0cm 12pt; TEXT-INDENT: 24pt"><font color="#000000">今年一月份的時候,筆者受命去為一家營造公司上課,課程的主題,除了講解一般所謂的資訊系統為何之外,還包括了何謂物件導向的程式設計,時間兩個小時。本來以為這是一項輕鬆簡單的任務,但是沒想到老闆交代客戶的要求是:上課內容不但要豐富精彩,而且重點必須是放在『物件導向的程式設計』這上面,這下子筆者的臉上不但冒出許多小丸子線,而且任務一下子就變成了『不可能的任務』,因為短短的兩個小時,除了扣掉自我介紹、嚥口水、咳嗽、打噴嚏,以及段落之間的休止符之外,大概剩下不了多少時間。所以要在這麼短的時間內介紹這樣的主題,筆者只好盡量撿一些重點來說明,所以可想而知的結果是,筆者在台上比手劃腳,講的口沫橫飛,台下則是問號掉了一地。不過在準備教材的過程中卻讓筆者想起了兩段往事。</font></p>
<p class="MsoNormal" style="MARGIN: 6pt 0cm 12pt; TEXT-INDENT: 24pt"><font color="#000000">第一件事情是在
</font><font face="Comic Sans MS" color="#000000">1995 </font><font color="#000000">年年初,我的第一個老闆突然跑來跟我說,『公司即日起開放員工申請訂購工作上所需的雜誌或書籍,這是申請單,你填一下吧!』,我記得當時只填了一份高煥堂先生的『物件導向雜誌』。過了沒多久,老闆就一臉臭臭的回覆我說:『這本雜誌用的是
</font><font face="Comic Sans MS" color="#000000">VB </font><font color="#000000">作範例,而
</font><font face="Comic Sans MS" color="#000000">VB </font><font color="#000000">又不是物件導向語言,沒有參考的價值』所以我的申請,就這麼被駁回了。第二件事情是在
</font><font face="Comic Sans MS" color="#000000">1995 </font><font color="#000000">年年中時,筆者參加中台灣地區的
</font><font face="Comic Sans MS" color="#000000">Delphi </font><font color="#000000">研討會,記得當時講師說了一段話,讓筆者印象十分深刻。他說:『我們使用
</font><font face="Comic Sans MS" color="#000000">Delphi </font><font color="#000000">來開發應用系統,其實就已經在用物件導向的方式來寫程式了,因為在
</font><font face="Comic Sans MS" color="#000000">Delphi </font><font color="#000000">之中,我們幾乎都是在物件的事件中,使用物件的屬性以及方法來解決事情。』</font></p>
<p class="MsoNormal" style="MARGIN: 6pt 0cm 12pt; TEXT-INDENT: 24pt"><font color="#000000">這兩件事情跟本文的主題有何關係呢?其實關係大了。因為,如果筆者詢問,什麼是物件導向的程式設計呢?相信很多讀者都可以答覆筆者說:『物件導向的程式設計,有別於傳統水瀑式</font><font face="Comic Sans MS" color="#000000">(Water
Fall)</font><font color="#000000">的程式設計以模組作為思考基礎,而它則是以物件作為思考對象,進而進行程式的分割與應用。』接著告訴筆者,現在有哪些程式語言是支援物件導向的。嗯!這些答案都是滿標準,蠻制式的。但是基本上,還是沒有說清楚什麼是物件導向的程式設計?但是如果答案是上述講師所描述的那樣,那麼事實恐怕也不盡然!</font></p>
<p class="MsoNormal" style="MARGIN: 6pt 0cm 12pt; TEXT-INDENT: 24pt"><font color="#000000">根據
</font><font face="Comic Sans MS" color="#000000">Brad Cox </font><font color="#000000">於
</font><font face="Comic Sans MS" color="#000000">1980 </font><font color="#000000">年所發表文獻中指出,所謂的物件導向應該具備下列的特性:</font></p>
<ol>
<li>
<p class="MsoNormal" style="MARGIN: 0pt 0cm 6pt; TEXT-INDENT: 24pt"><font color="#000000">物件</font><font face="Comic Sans MS" color="#000000">(Object)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -