學習Java語言開發,這些不得不知,java語言不得不知
Java的學習是比較複雜的,主要表現在相關的一系列平台、規範和協議上。有經驗的Java程式員都知道,只掌握了Java語言本身很難開發應用程式。總結的幾點Java語言學習要點,對於初學者來說,應該很有用,僅供參考!
1. 學習的目的是為了將來進行應用程式的開發,而不是進行語言理論研究
2. 將來的應用開發是在成熟的平台上展開,而不是自己從底層開發平台
一、掌握靜態方法和屬性
靜態方法和屬性用於描述某一類對象群體的特徵,而不是單個對象的特徵。java中大量應用了靜態方法和屬性,這是一個通常的技巧。但是這種技巧在很多語言中不被頻繁地使用。理解靜態方法和屬性對於理解類與對象的關係是十分有協助的,在大量的java規範中,靜態方法和屬性被頻繁使用。因此學習者應該理解靜態方法和屬性。Java在方法和屬性的調用上是一致的,區別只表現在聲明的時候,這和c++是不同的。
二、重視介面
在物件導向早期的應用中大量使用了類繼承。隨著軟體工程理論的不斷髮展,人們開始意識到了繼承的眾多缺點,開始努力用彙總代替繼承。軟體工程解決擴充性的重要原則就是抽象描述,直接使用的工具就是介面。介面近年來逐漸成為java編程方法的核心。另一方面,就應用而言,大部分開發是建立在規範基礎之上的,不需要自己建立複雜的繼承關係和龐大的類。因此讀懂規範和用好規範已經成為應用程式開發人員的首要任務,Java各項規範的主要描述手段就是介面。例如,在安卓程式開發中的雲加密,即API自動加密介面,不知道的可以進這裡詳細瞭解:http://www.ijiami.cn/appprotect_encrypt_way
三、學好集合架構
java描述複雜資料結構的主要方式是集合架構。Java沒有指標,而是通過強大的集合架構描述數組、對象數組等複雜的資料結構。學好這些資料結構的描述方法對於應用程式編寫,特別是涉及到伺服器方、3層結構編程至關重要。程式員在這個時候不能再用諸如資料庫結果集之類的結構描述資料了。
由於很多語言沒有這麼強大的集合架構體系,很多初學者不知所措,更不知道拿來做什麼用,因此應該引起足夠的重視。
四、例外捕捉
java對例外捕捉的強調是空前的,它強迫程式員用顯著的與邏輯方法完全不同的方式描述例外捕捉,對於程式描述的完整性和嚴謹性有很大的意義。c++也有類似的機制,但是我們看到很多c++程式員並不習慣使用這些機制。
Java的初學者應該充分學習好這種例外捕捉機制,養成良好的編程習慣,然後用自己學到的知識加以利用,比如,參加一場編程大賽:http://www.ijiami.cn/newsInfo?id=519&v=2
五、多線程需要理解機理
很多java程式員熱衷於多線程程式編寫,認為是對邏輯能力的挑戰。其實在大量應用中根本就不需要編寫多線程程式,或者說大多數編寫應用程式的程式員不會去寫多線程程式。這是因為多線程機制都內建到基礎平台當中了。
程式員應該瞭解的是多線程原理和多安全執行緒,這對於今後準確地把握程式是至關重要的。
例如JSP中編寫到不同的位置對於多個使用者環境的安全影響完全不同,又如著名的Super Servlet是每一個訪問作為一個進程,但是每一個頁面是一個線程,和Servlet正好相反,對程式的效能和安全的影響有天壤之別。
六、瞭解網路編程
java號稱是最強的網路程式設計語言,但是大多數應用程式開發人員是從來不會自己開發什麼底層的網路程式的。需要做只是瞭解原理就夠了。網路機制的實現是靠平台實現的,除非自己開發平台,否則是不需要知道socket怎麼實現,怎麼監聽訪問的。因此在這方面花太多的功夫就偏離了“將來的應用開發是在成熟的平台上展開,而不是自己從底層開發平台”這一假設。
七、重視安全保護技術
許多程式員開發的程式的時候不注意,bug到處生,雖說改bug是程式員的一項使命,但是要是從一開始就注意下,這個過程就不會走的那麼辛苦。基於開發人員精力時間有限,完全可以藉助第三方平台,達到安全保護的目的,雙利雙贏。就目前來說,比較專業的有愛加密,他們提供包括安全評估及處理、dex三重保護、So庫加密、定製保護等服務,已經為國內眾多知名App提供安全保護服務,客戶涉及遊戲、金融、銀行、支付等行業,並和電信、行動電信業者合作,為平台提供整體加密保護服務。並且還可以針對客戶的具體需求定製專屬的安全加密解決方案!http://www.ijiami.cn/appprotect_mobile_games