成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

碼農(nóng)是怎么提高設(shè)計(jì)能力的?

企業(yè)動(dòng)態(tài)
當(dāng)我在工作中再次遇到復(fù)雜的需求時(shí), 也努力地去做抽象,尋找本質(zhì)的東西,有一次竟然把業(yè)務(wù)操作抽象成二維坐標(biāo)系下點(diǎn)的移動(dòng),讓我喜不自勝,感受到了抽象的威力。

[[236672]]

 “欣哥,你是怎么提高設(shè)計(jì)能力的? ”

這個(gè)問題最近被人問及, 我回想了下這10多年學(xué)習(xí)歷程,并沒有發(fā)現(xiàn)一個(gè)確切的東西能幫助提升設(shè)計(jì)能力,更具體點(diǎn)是“面向?qū)ο蟮脑O(shè)計(jì)能力”。

我大學(xué)的時(shí)候?qū)W了幾門語言,也勉強(qiáng)做了幾個(gè)項(xiàng)目,但是都停留在能使用的層面,根本沒有考慮到可擴(kuò)展性,重用性,靈活性,易讀,優(yōu)雅...... 等東西, 也不知道什么是設(shè)計(jì)模式, 估計(jì)大部分碼農(nóng)翻身的讀者都比我強(qiáng)得多。

剛工作的時(shí)候,一個(gè)搞Java的同學(xué)給我說,劉欣你知道嗎,現(xiàn)在模式很流行,我們都在搞模式。

模式? 正在抱微軟大腿的我是一臉懵逼。

回去趕緊搜,于是就發(fā)現(xiàn)了四人幫那本著名的《設(shè)計(jì)模式》,趕緊研讀,發(fā)現(xiàn)是霧里看花,水中望月,看不清楚。

這設(shè)計(jì)模式就如同一座高山,可望而不可及。 當(dāng)然用來吹牛還是可以的,吃飯時(shí)給組長說:我最近看到一本書,叫設(shè)計(jì)模式,里邊提出了兩條原則,實(shí)在是太好了。

“什么原則?”

“一條面向接口編程而不是面向?qū)崿F(xiàn)編程, 另外一條是優(yōu)先使用組合而不是繼承。”

雖然我洋洋得意,但是我心中明白,我也不知道這是啥意思。

后來看到閆宏寫的《Java與模式》一書 ,里邊舉了很多紅樓夢(mèng)的例子,有點(diǎn)意思,大概知道了一些模式的寫法。

照葫蘆畫瓢,寫了個(gè)Iterator, 激動(dòng)不已。沒成想到JDK中一看,人家早就寫好了。

轉(zhuǎn)入Java陣營以后,發(fā)現(xiàn)模式在這里確實(shí)比較提倡,不僅僅是標(biāo)準(zhǔn)的23種設(shè)計(jì)模式,還有J2EE開發(fā)中用到的各種模式。

那就老老實(shí)實(shí)地學(xué)吧,不僅僅看書,還開始看源碼,當(dāng)時(shí)流行的有一個(gè)叫做Jive論壇,純用servlet和JSP寫的,現(xiàn)在看來可能是比較幼稚,但是它里邊用了很多的設(shè)計(jì)模式,比如單例,模板方法,代理,迭代器等等。

之前學(xué)習(xí)設(shè)計(jì)模式,看到的都是小打小鬧的小例子,不知道怎么用到項(xiàng)目中來,現(xiàn)在看到Jive,一下子看到設(shè)計(jì)模式在實(shí)戰(zhàn)中的鮮活的應(yīng)用,實(shí)在是大開眼界。

(由于時(shí)間太過久遠(yuǎn),感興趣的可以再翻翻Jive,但是不太建議再花太多的時(shí)間學(xué)習(xí)了)

后來發(fā)現(xiàn)了一本神書《敏捷軟件開發(fā),原則,模式與實(shí)踐》,***次講了面向?qū)ο笤O(shè)計(jì)的原則,其中還有一個(gè)薪水支付的案例,真是讓我大開眼界,一下子明白了“優(yōu)先使用組合而不是繼承"的道理。

此后又看了JUnit的源碼,再次感慨大牛把設(shè)計(jì)模式玩得爐火純青。

看了不少書和源碼以后,就想在工作中想找機(jī)會(huì)實(shí)戰(zhàn),無奈工作中增刪改查居多,在框架下填代碼,渾身的OO內(nèi)力無處宣泄,真是不爽。 (其實(shí)也沒多少內(nèi)力,把自己高估了。)

終于逮到一次機(jī)會(huì),我負(fù)責(zé)的模塊業(yè)務(wù)邏輯非常復(fù)雜,我就想辦法把這一塊邏輯從增刪改查的框架中剝離處理,好好設(shè)計(jì)了一番,應(yīng)用了一些設(shè)計(jì)模式,效果還不錯(cuò),基本達(dá)到了OCP的原則:對(duì)修改封閉,對(duì)擴(kuò)展開放。

各位同學(xué)也可以想一想,自己的工作中有沒有一些復(fù)雜的業(yè)務(wù)邏輯?能不能把他們單獨(dú)拎出來做個(gè)設(shè)計(jì)?

再挑戰(zhàn)下有難度的源碼吧,大家把Spring“吹噓”得神乎其神,一定得看看, 于是開始進(jìn)入Spring源碼,這絕對(duì)是一次痛苦之旅,多如牛毛的class,深不可測的函數(shù)調(diào)用層次,把人搞得頭暈眼花,反復(fù)的調(diào)試,加上文檔的配合,總算走出了黑暗森林,也體會(huì)到了Spring設(shè)計(jì)的一些妙處,尤其是軟件開發(fā)最最重要的一點(diǎn): 抽象。

當(dāng)我在工作中再次遇到復(fù)雜的需求時(shí), 也努力地去做抽象,尋找本質(zhì)的東西,有一次竟然把業(yè)務(wù)操作抽象成二維坐標(biāo)系下點(diǎn)的移動(dòng),讓我喜不自勝,感受到了抽象的威力。

但是這樣“頓悟”時(shí)刻還是太少了。面向?qū)ο蟮脑瓌tS.O.L.I.D 聽起來很簡單,23種設(shè)計(jì)模式理解起來也不難,但是想把這些原則和模式在實(shí)踐中應(yīng)用好,那可就不容易了,很多時(shí)候我在面對(duì)復(fù)雜問題的時(shí)候也是非常犯愁,無法找到合適的接口和抽象,***做出的設(shè)計(jì)不盡如人意。

總結(jié)一下,想提升OO的設(shè)計(jì)能力,我的經(jīng)驗(yàn)就是: 閱讀書籍, 閱讀源碼,再加上不斷地思考和實(shí)踐。

謹(jǐn)以此和大家共勉。

【本文為51CTO專欄作者“劉欣”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)通過作者微信公眾號(hào)coderising獲取授權(quán)】

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2023-03-19 16:15:33

CSS技巧開發(fā)

2018-06-20 09:35:43

碼農(nóng)科技開發(fā)

2013-08-22 10:10:31

2017-11-06 08:27:26

開發(fā)

2014-04-04 10:27:50

碼農(nóng)工作效率

2015-05-12 10:33:09

程序員代碼

2022-11-30 14:57:39

產(chǎn)業(yè)互聯(lián)網(wǎng)

2020-12-17 10:20:27

碼農(nóng)高薪計(jì)算機(jī)

2020-08-05 12:27:18

Go語言碼農(nóng)

2012-06-07 09:25:31

Visual Stud

2013-11-14 13:58:06

硅谷碼農(nóng)

2014-12-04 10:02:55

2015-05-12 10:15:15

程序員

2023-07-16 22:34:55

2020-09-30 11:14:24

AI碼農(nóng)架構(gòu)

2014-03-20 16:18:30

碼農(nóng)工作效率

2019-10-16 15:54:22

運(yùn)維架構(gòu)技術(shù)

2016-04-05 15:23:35

CTO訓(xùn)練營,技術(shù)管理

2016-10-10 20:32:54

WebWindows 10設(shè)計(jì)

2020-05-08 10:06:12

碼農(nóng)開發(fā)行業(yè)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产乡下妇女做爰 | 亚洲成人中文字幕 | 国产精品一区二区三区四区 | 综合久久综合久久 | 欧美性成人| 黄色av观看 | 日韩精品在线一区 | 国产在线激情视频 | 精品国产欧美一区二区 | 狠狠伊人 | 亚洲一区 | 日韩在线免费视频 | 美女国内精品自产拍在线播放 | 亚洲色图综合 | 久久久久国产一区二区三区四区 | 久久成人亚洲 | 999精品在线 | 一级片在线播放 | 黄色一级电影在线观看 | 国产精品视频免费观看 | 亚洲视频免费观看 | 高清国产一区二区 | 欧美色性| 日韩中文av在线 | av av在线 | 亚洲国产精品人人爽夜夜爽 | 国产成人高清 | 韩日在线观看视频 | 在线不卡视频 | 久久91精品国产一区二区 | 欧美综合视频 | 天堂在线www | av网站免费观看 | 一区二区三区精品视频 | 成人h动漫亚洲一区二区 | 日韩在线不卡视频 | 日日夜夜91 | 国产一区二区精华 | 成人黄色网址大全 | 日本黄色大片免费 | 成人依人 |