java語(yǔ)言如何學(xué)習(xí)
java語(yǔ)言如何學(xué)習(xí)
Java的學(xué)習(xí)是比較復(fù)雜的,主要表現(xiàn)在相關(guān)的一系列平臺(tái)、規(guī)范和協(xié)議上,下面學(xué)習(xí)啦小編收集了一些關(guān)于java語(yǔ)言學(xué)習(xí)方法,希望對(duì)你有幫助
java語(yǔ)言學(xué)習(xí)方法
01掌握靜態(tài)方法和屬性
靜態(tài)方法和屬性用于描述某一類對(duì)象群體的特征,而不是單個(gè)對(duì)象的特征。Java中大量應(yīng)用了靜態(tài)方法和屬性,這是一個(gè)通常的技巧。但是這種技巧在很多語(yǔ)言中不被頻繁地使用。理解靜態(tài)方法和屬性對(duì)于理解類與對(duì)象的關(guān)系是十分有幫助的,在大量的Java規(guī)范中,靜態(tài)方法和屬性被頻繁使用。因此學(xué)習(xí)者應(yīng)該理解靜態(tài)方法和屬性。Java在方法和屬性的調(diào)用上是一致的,區(qū)別只表現(xiàn)在聲明的時(shí)候,這和c++是不同的。
02重視接口
在面向?qū)ο笤缙诘膽?yīng)用中大量使用了類繼承。隨著軟件工程理論的不斷發(fā)展,人們開始意識(shí)到了繼承的眾多缺點(diǎn),開始努力用聚合代替繼承。軟件工程解決擴(kuò)展性的重要原則就是抽象描述,直接使用的工具就是接口。接口近年來(lái)逐漸成為java編程方法的核心。另一方面,就應(yīng)用而言,大部分開發(fā)是建立在規(guī)范基礎(chǔ)之上的,不需要自己建立復(fù)雜的繼承關(guān)系和龐大的類。因此讀懂規(guī)范和用好規(guī)范已經(jīng)成為應(yīng)用程序開發(fā)人員的首要任務(wù),Java各項(xiàng)規(guī)范的主要描述手段就是接口。
03學(xué)好集合框架
Java描述復(fù)雜數(shù)據(jù)結(jié)構(gòu)的主要方式是集合框架。Java沒有指針,而是通過強(qiáng)大的集合框架描述數(shù)組、對(duì)象數(shù)組等復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。學(xué)好這些數(shù)據(jù)結(jié)構(gòu)的描述方法對(duì)于應(yīng)用程序編寫,特別是涉及到服務(wù)器方、3層結(jié)構(gòu)編程至關(guān)重要。程序員在這個(gè)時(shí)候不能再用諸如數(shù)據(jù)庫(kù)結(jié)果集之類的結(jié)構(gòu)描述數(shù)據(jù)了。
由于很多語(yǔ)言沒有這么強(qiáng)大的集合框架體系,很多初學(xué)者不知所措,更不知道拿來(lái)做什么用,因此應(yīng)該引起足夠的重視。
04例外捕捉
Java對(duì)例外捕捉的強(qiáng)調(diào)是空前的,它強(qiáng)迫程序員用顯著的與邏輯方法完全不同的方式描述例外捕捉,對(duì)于程序描述的完整性和嚴(yán)謹(jǐn)性有很大的意義。c++也有類似的機(jī)制,但是我們看到很多c++程序員并不習(xí)慣使用這些機(jī)制。
Java的初學(xué)者應(yīng)該充分學(xué)習(xí)好這種例外捕捉機(jī)制,養(yǎng)成良好的編程習(xí)慣。
05多線程需要理解機(jī)理
很多Java程序員熱衷于多線程程序編寫,認(rèn)為是對(duì)邏輯能力的挑戰(zhàn)。其實(shí)在大量應(yīng)用中根本就不需要編寫多線程程序,或者說大多數(shù)編寫應(yīng)用程序的程序員不會(huì)去寫多線程程序。這是因?yàn)槎嗑€程機(jī)制都內(nèi)置到基礎(chǔ)平臺(tái)當(dāng)中了。
程序員應(yīng)該了解的是多線程原理和多線程安全,這對(duì)于今后準(zhǔn)確地把握程序是至關(guān)重要的。
例如JSP中編寫到不同的位置對(duì)于多個(gè)用戶環(huán)境的安全影響完全不同,又如著名的Super Servlet是每一個(gè)訪問作為一個(gè)進(jìn)程,但是每一個(gè)頁(yè)面是一個(gè)線程,和Servlet正好相反,對(duì)程序的性能和安全的影響有天壤之別。
06了解網(wǎng)絡(luò)編程
Java專家認(rèn)為,Java號(hào)稱是最強(qiáng)的網(wǎng)絡(luò)編程語(yǔ)言,但是大多數(shù)應(yīng)用程序開發(fā)人員是從來(lái)不會(huì)自己開發(fā)什么底層的網(wǎng)絡(luò)程序的。需要做只是了解原理就夠了。網(wǎng)絡(luò)機(jī)制的實(shí)現(xiàn)是靠平臺(tái)實(shí)現(xiàn)的,除非自己開發(fā)平臺(tái),否則是不需要知道socket怎么實(shí)現(xiàn),怎么監(jiān)聽訪問的。因此在這方面花太多的功夫就偏離了“將來(lái)的應(yīng)用開發(fā)是在成熟的平臺(tái)上展開,而不是自己從底層開發(fā)平臺(tái)”這一假設(shè)。
初學(xué)者容易進(jìn)入的誤區(qū)
1、盲目追求速度,不注重代碼質(zhì)量
速度很重要,但代碼質(zhì)量更重要。一個(gè)在追求速度而不注重代碼質(zhì)量的環(huán)境下完成的項(xiàng)目,肯定是會(huì)有很多問題的,后期要花更多的人力物力來(lái)彌補(bǔ),得不償失。
2、沒有團(tuán)隊(duì)精神,過于自我
一個(gè)項(xiàng)目不可能由一個(gè)人來(lái)獨(dú)立完成,而是由團(tuán)隊(duì)里不同角色的人來(lái)共同合作完成的。個(gè)人的力量是渺小的,團(tuán)隊(duì)的力量是無(wú)窮的。當(dāng)你的隊(duì)友遇到問題時(shí),如果你能解決,你要不吝幫助。同樣,你有問題時(shí),你的隊(duì)友也會(huì)及時(shí)幫助你。
3、沒有開源精神
一門技術(shù),如果它是開源的話,它就會(huì)變得越來(lái)越成熟。當(dāng)你寫了一段團(tuán)隊(duì)里都能通用的程序時(shí),你可以告訴你的團(tuán)隊(duì),節(jié)省開發(fā)的時(shí)間,也創(chuàng)造了別人給你提出問題的環(huán)境,讓你的代碼更加完善。給你的代碼寫上必要的注釋也是非常重要的,好多人寫程序時(shí)都不愿意寫注釋,給的理由是沒必要或者是時(shí)間太緊,試想一下,如果當(dāng)你正在閱讀或者修改一段沒有注釋的代碼時(shí)候,你是不是會(huì)覺得弄懂它的意思很難,當(dāng)然你可以花更多的時(shí)間去弄懂它,但如果你加了注釋的話,就完全沒有必要花費(fèi)更多的時(shí)間了。
猜你感興趣: