廣州培訓(xùn)java哪家好?專業(yè)編程培訓(xùn)機(jī)構(gòu)去哪好?推薦教育!
在廣州Java培訓(xùn)班的*個月,我開始系統(tǒng)的學(xué)習(xí)起Java編程。首先是學(xué)習(xí)Java基礎(chǔ),接觸OOP(面向?qū)ο缶幊?,剛開始使用Java編寫程序的時(shí)候感覺很別扭,因?yàn)槲以缫粤?xí)慣用C來編寫,很欣賞C的簡潔性和高效性,喜歡C簡練而表達(dá)能力豐富的風(fēng)格。
特別忍受不了Java運(yùn)行起來慢吞吞的速度,以及相對冗長的代碼,一個很簡單的功能模塊,要寫好多類,一個類調(diào)用一個類,心里的抵觸情緒很強(qiáng)。在隨后的學(xué)習(xí)中逐漸了解到Java語言的面向?qū)ο蟮奶攸c(diǎn),逐漸喜歡上了Java編程。
我對Java的面向?qū)ο蟮奶匦宰聊チ季?,自認(rèn)為有所領(lǐng)悟,也開始有意識的運(yùn)用OOP風(fēng)格來寫程序,然而還是經(jīng)常會覺得不知道應(yīng)該怎樣提煉類,面對一個具體的問題的時(shí)候,會覺得腦子里千頭萬緒的,不知道怎么下手,一不小心又會回到原來的思路上去。
舉個例子,要發(fā)廣告郵件,廣告郵件列表存在數(shù)據(jù)庫里面。倘若用C來寫的話,一般會這樣思考,先把郵件內(nèi)容讀入,然后連接數(shù)據(jù)庫,循環(huán)取郵件地址,調(diào)用本機(jī)的qmail的sendmail命令發(fā)送。然后考慮用Java來實(shí)現(xiàn),既然是OOP,就不能什么代碼都塞到main過程里面,于是就設(shè)計(jì)了三個類:一個類是負(fù)責(zé)讀取數(shù)據(jù)庫,取郵件地址,調(diào)用qmail的sendmail命令發(fā)送。 一個類是讀郵件內(nèi)容,MIME編碼成HTML格式的,再加上郵件頭。一個主類負(fù)責(zé)從命令讀參數(shù),處理命令行參數(shù),調(diào)用發(fā)email的類。
把一件工作按照功能劃分為3個模塊分別處理,每個類完成一件模塊任務(wù)。仔細(xì)的分析一下,就會發(fā)現(xiàn)這樣的設(shè)計(jì)完全是從程序員實(shí)現(xiàn)程序功能的角度來設(shè)計(jì)的,或者說設(shè)計(jì)類的時(shí)候,是自低向上的,從機(jī)器的角度到現(xiàn)實(shí)世界的角度來分析問題的。因此在設(shè)計(jì)的時(shí)候,就已經(jīng)把程序編程實(shí)現(xiàn)的細(xì)節(jié)都考慮進(jìn)去了,企圖從底層實(shí)現(xiàn)程序這樣的出發(fā)點(diǎn)來達(dá)到滿足現(xiàn)實(shí)世界的軟件需求的目標(biāo)。
這樣的分析方法其實(shí)是不適用于Java這樣面向?qū)ο蟮木幊陶Z言,因?yàn)槿绻挠肅語言,封裝兩個C函數(shù),都會比Java實(shí)現(xiàn)起來輕松的多,邏輯上也清楚的多。我覺得面向?qū)ο蟮木柙谟诳紤]問題的思路是從現(xiàn)實(shí)世界的人類思維習(xí)慣出發(fā)的,只要領(lǐng)會了這一點(diǎn),就領(lǐng)會了面向?qū)ο蟮乃季S方法。
如果對java感興趣,不妨來廣州校區(qū)看看!