18岁禁看视频免费,wwwxxxx在,欧美午夜福利影片,日本护士xxxx

廣州為學教育科技有限公司

主營:JAVA開發(fā),軟件工程師,教育培訓

免費店鋪在線升級

聯(lián)系方式
  • 公司: 廣州為學教育科技有限公司
  • 地址: 廣州天河區(qū)車陂灃宏大廈3樓
  • 聯(lián)系: 謝老師
  • 手機: 13632401219
  • 一鍵開店

如何學習設計模式

2018-12-07 10:21:01  1319 次瀏覽

神秘程序員.png①學習技巧

學習設計模式時,有一些技巧能夠幫助你快速理解設計模式。

a)使用較簡單的面向對象的語言如Java、C#。GoF[設計模式]實質上是面向對象的設計模式。[GoF·1.1]中提到“程序設計語言的選擇非常重要,它將影響人們理解問題的出發(fā)點”。從學習設計模式的角度看,JavaC#C++更容易一些。比如Java接口等,能夠更有效展現(xiàn)設計模式的意圖。

b)使用工具BlueJ。BlueJ的好處,就是提供了簡單的類圖。正如我在簡明設計模式Java中所做的,較少去專門畫類圖,而是在BlueJ中截圖。在學生上機編寫演示程序時,常常先看他的類圖,以判斷他的程序是否正確,必要時再看源代碼。

c)日常生活的隱喻。用一些實際生活中的例子來說明某某模式,能夠讓你快速掌握某模式的目的和實現(xiàn)代碼的結構。同時,你要認識到,這種隱喻如同告訴你(2+32=22+2*2*3+32,你需要自己舉一反三,得出(a+b2=a2+2ab+b2。在實際工作中的模式的具體應用,則相當于應用代數(shù)公式。

d)動手實踐和懷疑精神。看顯淺的參考書或上網查閱資料時,要自己敲(復制也可以)代碼并運行,要多修改別人的源代碼提出自己的觀點:為什么書中不這樣設計、為什么要那樣設計;如果增添一些方法、方法參數(shù)、或成員變量會如何?必須要自己親自動手,起碼要運行。另外,要敢于向博主提問、拍磚。你甚至可以質疑GoF的某些章節(jié)的解說和意圖,更何況一些博主呢。

②基礎知識

這些知識讓你知道,設計模式好在何處。

a)面向對象范式。也就是人們傳說的思想。封裝、繼承和多態(tài)這些東西,在我看來比if、for等稍微高一點,也屬于語法問題。面向對象編程要掌握的三大原則是柏拉圖(Plato)原則、里氏(Liskov)替換原則和Parnas原則。這三個原則其實非常簡單。任何原則,你覺得很難一見鐘情,很難快速認同,那它就不會是好原則。

b)設計原則。許多人列舉了7大原則,如單一職責原則、開閉原則、里氏代換原則、依賴倒轉原則、接口隔離原則、合成復用原則、迪米特法則。LSP,我將它提升為面向對象范式的3大基石之一;單一職責和接口隔離,主要作為面向對象分析/OOA時職責劃分所遵循的原則,此時你可以不太在意。依賴倒轉原則,我把它作為垃圾扔掉,因為開閉原則或者直接地說“依賴于抽象類型原則”已經包含了依賴倒轉原則的精華,而依賴倒轉原則的糟粕由IoC繼承。當然,回調,我很強調。所以,你要掌握的有抽象依賴原則(OCP)、單向依賴原則(含對回調的學習)和依賴原則(合成復用原則、迪米特法則)。

c)UML的初步了解。這是學習設計模式的工具。在早期,你甚至可以僅了解BlueJ的相關圖示,也就10分鐘的事情。

③境界

《五燈會元》卷十七中,有一則唐朝禪師青原惟信禪師的語錄:“老僧三十年前未參禪時,見山是山,見水是水。及至后來親見知識,有個入處,見山不是山,見水不是水。而今得個休歇處,依前見山只是山,見水只是水。”

a)仔細研究GoF[設計模式],逐個學習其意圖和結構,是一個抱著字典學習英語的方式。見山是山,見水是水,導致你可能在實際工作中生搬硬套、東施效顰。

b)建議從簡單的場景出發(fā),自己發(fā)現(xiàn)或設計出某種模式。你從中體會該模式是如何解決問題的,這樣,該模式成為你自己的東西,你才不會出現(xiàn)知易行難的問題。所有的設計模式不過是基本原則和理念在特定場合的應用。你可能不知道某個設計模式的名字,但是你知道它一切的優(yōu)缺點和變體以及應用場合。見山不是山,見水不是水。

c)你對基本原則和理念融會貫通,你可以惋惜:“我找到一種模式,原來在[設計模式](其實是某個特殊的書、文章提到的模式)中早就有了這種模式”。這時,模式不模式又如何呢?反模式又怎樣??匆娨粋€模式,你會說:“嗯,這是一種有用的模式”。見山只是山,見水只是水。

網友評論
0條評論 0人參與
最新評論
  • 暫無評論,沙發(fā)等著你!
百業(yè)店鋪 更多 >

特別提醒:本頁面所展現(xiàn)的公司、產品及其它相關信息,均由用戶自行發(fā)布。
購買相關產品時務必先行確認商家資質、產品質量以及比較產品價格,慎重作出個人的獨立判斷,謹防欺詐行為。

回到頂部