偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

宅男程序員給老婆的計算機課程之5:設計模式

原創(chuàng)
開發(fā)
這個系列來自一位宅男程序員,這個系列是他寫給老婆的電腦課程。以下,開始本系列的第6篇——設計模式。而實際開發(fā)中常用的設計模式更是屈指可數(shù),Singleton,F(xiàn)actory,F(xiàn)acade,Active Record、Provider等等。

設計模式,應該是很多ED心目中牛B的編程方式。

上回說到ED的好書POEE,實際上便是一本專門講企業(yè)開發(fā)中使用的設計模式中的書。

設計模式,并不多,基本上看完GoF的這邊《Design Pattern》便可以有足夠了解了。

而實際開發(fā)中常用的設計模式更是屈指可數(shù),Singleton,F(xiàn)actory,F(xiàn)acade,Active Record、Provider等等。

就那么幾個,花花功夫,仔細了解一下這幾個,然后在實際編碼中應用一下,便可以算是掌握了。

設計模式,并不難。

它是開發(fā)中非常必要的知識,實際上,是非?;A的知識,并不牛B。

開發(fā)的時候,需要時刻明確自己的目標:解決問題。

解決問題才是最重要的。

設計模式的存在,是為了更好的維護、管理代碼,或者是為了擴展性;絕對不可以為了設計模式而模式。

在Java程序中,為了模式而模式的現(xiàn)象蠻普遍的。

我猜想這是因為Java是一門工業(yè)語言,有大量的ED使用的緣故。

ED把設計模式的使用,當成是一種可以炫耀的編程技巧,或者說,他們遵從的編碼規(guī)范中,要求他們?nèi)ナ褂媚衬吃O計模式。

至于為什么要使用設計模式,最常見的理由便是:為了將來可以XX,或者YY。

程序開發(fā)中,有一句名言:“Pre-mature optimization is the root of all evil”。

過早優(yōu)化,是萬惡之源。

非常多的情況下,將來預想中的XX或者YY;并不會發(fā)生。大部分代碼,寫了之后就會被丟棄掉,再也不會有人去維護。

當XX或者YY發(fā)生的時候,往往,都是會推倒重來。

除非你很牛B,只有牛到一定程度,才有可能對將來可能發(fā)生的情況做好合理的預測,并預留出改善、調(diào)整的空間。

但非常諷刺的是,為將來做設計的最好方法就是:什么都不做。

只有空白,才能夠留下最大的發(fā)揮空間。

現(xiàn)在為將來可能發(fā)生的情況,做了編碼,任何一行編碼,都是很可能是在為將來添加限制、制造麻煩。

現(xiàn)在寫下去的代碼,將來,都是要被刪掉的;能夠不寫,就不寫。

在任何時候,都應該保持代碼簡潔。

函數(shù),盡可能的短;當一個函數(shù)的長度,超過一個屏幕的時候,便應該考慮重構(gòu)、拆分。

牛B的程序,都應該是簡單、易懂的;采用大量的設計模式,復雜得讓人無法直接看懂,或許有它的意義以及應用場景,但這絕對不是編程功力牛B的表現(xiàn)。

打個比方,設計模式就是武術招式。

學徒,必然需要熟悉什么“有風來儀”或者“屁股朝后平沙落雁式”。

但更高的境界是:無招勝有招。

簡單、直接的把代碼搞定。

Python大牛沈崴有云:“得道的程序員,既不封裝,也沒有重復代碼。”
http://eishn.blog.163.com/blog/static/6523182010102342531684/

作業(yè)

1. 使用一種編譯語言實現(xiàn) Singleton 模式

2. 使用一種動態(tài)語言實現(xiàn) Singleton 模式

3. 說說對 Provider 模式的理解。

男主角:Wuvist(新浪微博),真名翁偉,自稱胖程序員一個,幸好已婚。學習.NET出身,現(xiàn)常用Python做服務器端開發(fā),曾任新加坡某創(chuàng)業(yè)公司主程。公司被Techcrunch blog過后,覺得新加坡生活太過安逸,終于在去年辭職只身回家鄉(xiāng)汕頭創(chuàng)業(yè),活躍于珠三角技術沙龍,熱衷于與其他技術宅分享。

[[58036]]

本文作者:Wuvist

女主角:Katze,Wuvist的老婆,女程序員,在某跨國投行任Unix系統(tǒng)管理員,常被Wuvist嘲笑技術太差。

[[58037]]

51CTO系列:

  1. 宅男程序員給老婆的計算機課程之0:認清本質(zhì)
  2. 宅男程序員給老婆的計算機課程之1:認清實際
  3. 宅男程序員給老婆的計算機課程之2:怎么看待牛人
  4. 宅男程序員給老婆的計算機課程之3:架構(gòu)比較
  5. 宅男程序員給老婆的計算機課程之4:SQL vs NoSQL
責任編輯:彭凡 來源: 51CTO
相關推薦

2012-02-14 10:33:12

宅男程序員

2012-03-01 09:27:23

宅男程序員

2012-05-02 13:30:50

2012-05-14 09:33:21

宅男程序員

2012-02-06 10:52:14

宅男程序員

2012-05-21 09:04:12

宅男程序員

2012-02-01 10:19:02

宅男程序員計算機課程

2012-03-20 09:44:40

宅男程序員

2012-02-15 14:40:17

宅男程序員

2012-03-27 09:43:28

宅男程序員

2012-04-26 08:12:01

2012-02-09 10:02:41

宅男程序員

2012-03-05 09:48:03

宅男程序員

2012-02-12 13:31:36

2011-05-11 09:42:27

程序員

2012-04-09 09:42:56

2023-08-07 12:11:26

CPU存儲器SSD

2014-12-11 17:55:05

程序員

2022-04-11 15:59:21

計算機

2015-03-24 14:11:41

程序員
點贊
收藏

51CTO技術棧公眾號