精華區beta OOAD 關於我們 聯絡資訊
補充一下 程序導向的程式,會用到許多的"函式", 函式這種東西,乍看之下可以達成在OO導向中"類別"或是說"類別中的方法"相同的效果, 但是一個很主要的不同,是函式的撰寫多半是屬於call by value的概念, 也就是一大堆數據或文字資料,經由一個函式的服務, 而輸出另外一大堆的數據或文字資料。 當系統的功能慢慢擴增,我們的函式也越來越多, 整個系統在執行時有那種"資料副本滿天飛"的感覺, 就我個人的主觀概念,如果程序導向的程式撰寫時能夠都使用call by referance, 也就是"指標"的廣用,一部份的程度上,是能夠達成OO導向的好處的。 但是指標這種東西,在C語言的最新一代C#中,已有遭到棄用的現象, 指標的使用被當成了unsafe的寫法, 畢竟直接存取記憶體,對許多程式撰寫師而言, 實在是沒有必要承受的原罪與風險。 我猜測一個很大的因素, 是因為"類別"、"物件"的使用,一部份替代了指標的作用, 我們再也不用關心數值資料在函數中來來去去的變化了, 因為物件的使用,直接達成了"牽一髮而動全身"的效果, -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.61.67
costbook :有一句話說「Java只有指標」... 07/10 15:03
costbook :如果了解JVM的人會「會心一笑」 07/10 15:04
costbook :多型、封裝、繼承 這三個觀念真的是太偉大了, 07/10 15:09
costbook :就像是非對稱/公開金鑰密碼系統被提出來一樣 07/10 15:10
costbook :當初讀到的時候內心真是震撼無比 07/10 15:12
Eleganse :程式太小的話 是完全看不出OO的好處的 07/10 15:18
Eleganse :甚至有脫褲子放屁的感覺 我想這就是初學者提問的主因 07/10 15:19
costbook :所以我想拿設計模式的案例來說明 07/10 15:27
costbook :不過我的教學功力又2266的... 07/10 15:28
adrianshum :這篇寫的東西... 好像沒有哪句正確耶.... =_= 07/10 15:53
wawawa :C語言的最新一代C#... 07/10 21:21
fphoenix923 :C#也是有call by reference,而且比重不少 07/11 23:10
netsphere :C語言的最新 一代C#... 07/22 22:10
sunneo : 二代C$... 07/28 02:39
KanoLoa : 三代吸% 07/29 15:34
svenlee :應該說 "VM只有指標",因為現在的Dalvik VM跟Java無關 08/17 18:15
svenlee :Java本身只是程式語言,"Java"與"VM" 不能混為一談 08/17 18:17
jej :其實我寫了非對稱公鑰金鑰之後..並不感到偉大.. 08/23 22:39
jej :但被震撼到了..... 08/23 22:39