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