天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

軟件設計的真諦

  假設我們身邊的一切都是用制造材料加以描述的:“空調”不是“空調”,而是“由金屬和塑料做成的物體”;“書”不是“書”,而是“由纖維和墨做成的物體”。溝通時我們也不用“空調”和“書”這樣的詞匯,而是“金屬和塑料做成的物體”和“纖維和墨做成的物體”。

  可以想象大腦在面對這些信息時會讓我們覺得多么的痛苦,顯然這樣的事情在現實中很少發生,因為我們的大腦具備很強的抽象能力 ,會通過抽象塑造“空調”和“書”這樣的概念提升溝通效率和維持思維次序。我們學習知識的過程其實就是不斷精確掌握(抽象)概念和建立思維次序的過程。

軟件設計的真諦

  對于程序員來說除了生活在現實世界,還“身處”由程序所構建的虛擬世界中。程序設計其實是在個人頭腦中構建虛擬世界的過程,而維護代碼則首先是通過程序所表達的虛擬世界與其他程序員間接溝通的過程。為了提高程序員間的間接溝通效率,我們一定希望虛擬世界也象現實世界那樣充滿著象“空調”和“書”這樣的概念,也希望程序員們在虛擬世界所使用的概念相似。

  由于現實世界中程序員們已掌握了大量的相似概念,如果能將這些概念帶入虛擬世界,那將顯著提升程序員間通過虛擬世界(即程序)溝通的效率。因此,作者認為軟件設計的真諦,是通過程序構建與現實世界相似的虛擬世界。通常,設計質量越高就越能在虛擬世界中找到現實世界的影子。

  軟件設計活動的關鍵又是什么呢?還是讓我們回到現實世界去尋找答案吧!

  在遠古時期,人類只能通過徒步從一個地方到達另一個地方。后來發現馬可以被馴服,通過馬車能更快地從一處到達另一處。再后來,人類逐步發明了自行車、汽車和飛機,且每一次發明都使得交通效率得以大幅提高。在這里,馬車、自行車、汽車和飛機都共同地為了解決交通效率問題。很顯然,馬車、自行車、汽車和飛機都是不同的概念,人類通過抽象發明這些概念,并通過相互學習的方式使得大家掌握其含義。如果將焦點放在交通工具上,我們會發現交通效率越高則其概念越抽象,復雜度也越高。或者說,越是抽象的概念,其所隱藏的復雜度就越高。

  從這個關于交通的例子中我們不難發現,現實世界中我們是通過轉移復雜度的方式解決復雜問題的,且每一次不同的轉移都伴隨著抽象概念的建立,轉移的復雜度越多所建立的概念就越抽象。由于復雜度被轉移了后,使得一小部分人專注于被轉移的復雜度(比如制造飛機),而其他絕大部分人在享用復雜度被轉移所帶來好處的同時不用關心被轉移走的復雜度(乘飛機的人不用關心飛機的駕駛與制造)。同樣的事情也發生在軟件行業!不同的是軟件行業“制造”的不是汽車和飛機,而是編程語言、數據庫、平臺和框架等。

  不難發現,軟件設計的關鍵活動應是抽象,通過抽象建立新的概念并將部分復雜度轉移到概念背后。盡管不斷的抽象增加了新概念的復雜度,但也簡化了所需解決問題的復雜度。顯然,好的設計應是其簡化的復雜度要大于因為抽象所創造的復雜度。

it知識庫軟件設計的真諦,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 成激人情在线影院920 | 全球真实小U女视频合集 | 国语自产拍在线视频普通话 | 欧美伊人久久大香线蕉综合69 | 小伙无套内射老女人 | 尤物国产在线精品三区 | 免费果冻传媒2021在线观看 | 亚洲精品成人无码区一在线观看 | 亚洲国产日韩欧美视频二区 | 久久精品美女久久 | 精品国产乱码久久久久久免费 | 久久婷婷电影网 | 亚洲欧美激情精品一区二区 | 久久免费精彩视频 | chinesetoilet美女沟 | 久久天天躁狠狠躁夜夜躁 | 久久99热这里只频精品6 | 99热只有精品 | 特大黑人娇小亚洲女mp4 | 老熟女重囗味HDXX | 漂亮妈妈中文字幕版 | 国产精品亚洲专一区二区三区 | 欧美牲交A欧美牲交 | 免费人成视频19674不收费 | 偷拍 自怕 亚洲 在线 | 国产一区内射最近更新 | 扒开女生尿口 | 国产69精品久久久久乱码免费 | a亚洲在线观看不卡高清 | 国产av在线播放 | 中文字幕一区二区三区在线观看 | 天天看高清影视在线18 | 蜜芽国产在线精品欧美 | 午夜福利体验免费体验区 | 少妇高潮惨叫久久久久久电影 | FREE性丰满HD毛多多 | 久久精品热只有精品 | 亚洲一区电影在线观看 | 亚洲黄色免费在线观看 | 凌晨三点免费WWW | 久久99re2在线视频精品 |