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

觀點:如何正確的對待設計模式

  自從接觸設計模式以來,一般看到的評論是以推崇為多。不過比較欣慰的是,最近在看《編程人生》中,有兩個人對設計模式比較不屑。

  之所以欣慰,并不是因為湊個熱鬧看他們互相攻擊,互相批評——而是因為出現了不同的觀點,特別是兩位非常有分量的人物的觀點。在技術領域,眾口一詞是一件非常恐怖的事情;百花齊放百家爭鳴才是我們樂于看到的。因為不同觀點的出現,特別是大師級的不同觀點,能夠促進更多的人去獨立的思考與探索

  好了,回歸主題。編程人生中,《編程人生》中至少有兩個人談到了設計模式。

  Jamie Zawinski —— 著名的LISP黑客,NETscape瀏覽器和Mozilla瀏覽器的核心開發者。在談到程序員要讀的書時說:

  “還有一本書叫《設計模式》,人人追捧,奉為圭臬。不過,在我看來,這本書一派胡言,給人的感覺好像是編程只需要剪貼粘貼就能搞定。你不用全盤考慮要做的任務,只要看看這本配方書,找個有幾分相近的模式,直接套用就行了。那根本不是編程,那是在涂色書。不過,似乎很多人都對這本書著了魔。”

  Brendan Eich —— JavaScript之父,Mozilla公司CTO,在提到為編程想做而沒有做的事情時說:

  “我并不是一個熱衷于面向對象和設計模式的人。從來沒有買過Gamma的書(《設計模式》)。網景公司有些人買,Jamie zawinski的人或者網景收購的公司來的那些冤家對頭會買,他們把這本書當圣經一樣顯擺,真有點讓人受不了,他們根本就不是最好的程序員。”

  至于什么是設計模式,他有什么好處等等,不是我今天要說。我想舉個例子,做個對比。我們都知道,設計模式源于建筑領域,建筑領域可能離我們太遠,我今天想拿籃球運動做個對比。

  籃球運動員為了提高籃球水平,除了進行身體訓練和投籃訓練外,還會進行一些連貫動作的訓練和一些戰術配合訓練。比如,像交叉步,急停跳投,轉身過人,擋拆等等。這些訓練是從何而來?籃球運動剛剛誕生的時候肯定沒有。而是運動員在籃球運動過程中,發現在某一種情況下(也就是防守隊員和團隊成員的位置),使用某一種類似的連貫動作往往能夠取到非常好的效果。所以就有悟性非常高的人把這種約束條件和要采取的動作都總結出來,讓運動員在訓練中反復的訓練,以形成一種條件反射,在出現合適的機會的時候,快速而有效的使用這些連貫動作。

  我想這也是模式的起源。有一點不同的是,我們學習設計模式的過程,是一種思維訓練的過程

  不難想象,如果沒有這些東西,運動員要提高籃球水平有多困難。但運動員如果在比賽中濫用,花哨的動作也許會增強比賽的觀賞性,但是它卻偏離了籃球運動的本質:將籃球投進并贏得比賽。

  其實,上面的這些分析對于武術也同樣適用。武俠迷可能會記得金庸筆下紛繁復雜招式名稱(其實也是模式)。不過,金庸倒也提到過更高的境界:“無招勝有招”。印象當中張無忌學習太極拳和令狐沖學習獨孤九劍有描述。他們在學成之后確實很厲害。難怪Jamie Zawinski和Brendan Eich會有些反對模式,也許他們已經學到了無招勝有招的真諦,也許他們是黑客,不喜歡思維受到限制。

  難道我們要拋棄所有的模式?不過我認為它可能并不適合所有的人,它依賴于人的造詣,以及天賦,悟性。我們很多人要獲得提高,進行一些模式訓練,也許還是一條非常有效的途徑。

  亂七八糟說了這么多,最后總結一下:

  1. 首先要認識到它的本質,模式是前人知識經驗的總結,不是現成的解決方案,所以不要硬套。
  2. 對于初學者來說,模式是個好東西,學習一些模式是一條有效的提高途徑。
  3. 不要過度使用設計模式,他會給你帶來額外的復雜度。在我的眼中,簡單性才是一個技術方案的首要因素。你知不知道李小龍截拳道的核心是什么?拋開招式,直截了當的進行最有效的攻擊和防守。
  4. 不要把它當成銀彈或者圣杯。
  5. 當你有一定的積累后,你也可以嘗試“無招勝有招”的境界。

  PS:我看過的一個比較奇特的觀點,值得思考:

  《黑客與畫家》的作者在書中提到過,說有人做過研究,LISP語言自帶可以支持GOF(四人幫)總結的16中模式。所以,如果你在編程時需要用到模式,那可能是你的語言不夠強大,模式應該是語言支持的東西。(這段話是我根據印象寫的,沒有找到原話,所以可能有些出入。)

it知識庫觀點:如何正確的對待設計模式,轉載需保留來源!

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

主站蜘蛛池模板: 免费观看高清黄页网址大全 | 毛篇片在线观看 | 国产老肥熟xxxx | 亚洲成年人影院 | 98色精品视频在线 | 91久久偷偷做嫩草影院免 | 国产精品成人久久久久A伋 国产精品成人观看视频免费 | 在教室轮流被澡高H林萌 | 亚洲这里只有精品 | 日日干夜夜啪蕉视频 | 最近最新的日本字幕MV | 亚欧视频在线观看 | 新图解av吧| 蜜臀AV精品一区二区三区 | 中国二级毛片 | 不卡人妻无码AV中文系列APP | 中文在线无码高潮潮喷在线 | 麻豆无人区乱码 | 欧美日本高清动作片www网站 | BL低喘贯穿顶弄老师H | 人妻超级精品碰碰在线97视频 | hdsex老太婆70 | 天天狠狠弄夜夜狠狠躁·太爽了 | 欧美特级午夜一区二区三区 | 久久看片网 | 美女露出逼 | 风流少妇BBWBBW69视频 | 免费播放美女一级毛片 | 又亲又揉摸下面视频免费看 | 亚洲精品色情APP在线下载观看 | 亚洲福利区 | 国产精品伦理一二三区伦理 | 国产免费毛片在线观看 | 亚洲视频在线免费观看 | 动漫成年美女黄漫网站 | 影音先锋影院中文无码 | 日韩一区二区三区射精 | 日本乱子伦一区二区三区 | 無码一区中文字幕少妇熟女网站 | Chineseman瘦老头77| 岳扒开让我添 |