java的學習:
初學者對Java的學習,上來的感覺都是比較難,感覺java的東西很多,如此多的類和接口。有時還弄不懂為啥實例化出一個int空數組為什么數組中默認都是0,實例化一個空字符串數組時(String),為什么數組每個值都默認為null。java的核心思想就是面向對象,可以把任何東西都可以看做是對象。java的三大特點繼承、封裝和多態。這些我一個初學者來說就好像是天書一樣,其實我認為初學者根本沒有必要完全理解這些東西,再說也很難會弄清楚這些問題。剛開始就一步一步的學着會使用java中的類,隨着之后的學習,漸漸地就會明白面向對象是一種什么樣的思想。學過C語言的,就會明白java和C語言思想的區別,一個是純的面向對象,一個是純的面向過程。學習java最重要的是會使用java中提供的很多類,Java的有些類在解決問題時會變得很方便,很好用,但對與C語言就不同了,有些算法就需要手動用最基本的去實現,沒有必要把所有的類完全記住(這個幾乎是不太可能的,除非你非常聰明,非常牛逼),熟悉是干什么用的就足夠了,寫java時隨手帶一個API文檔,忘了可以去查一下怎么使用,這樣用的多了,逐漸就能記住了。學過java的同學都會有一種感受,在寫java界面的時候給非常的麻煩,一些布局的使用,感覺每一個按鈕、標簽、文本框都需要用new關鍵詞實例化出來,這就是面向對象的特點都需要實例化對象。在學習Java時,我建議應該把運行java程序時內存的使用分析清楚,就是java中的堆內存和棧內存,簡單說一下:1.java中的一些基本變量和對象的引用變量都是在棧內存中存儲,當定義一個變量時,java就會在棧內存中分配一塊空間,當程序執行到超出這個變量的作用域時,java就會釋放掉棧內存中的空間給其他的變量使用。2.而堆內存,是用於存放用new關鍵詞創建的對象。當這個對象使用完后,java的自動回收機制就會將這個對象作為垃圾回收掉,給下一個new出的對象使用。當學習階段到了中上等水平式時,就會明白java中的三大特點繼承、封裝、多態的重要性,這些特性都可以讓你的程序變得高效、清晰,並且在后期容易維護。在最后說一點java中的事務的重要性,在開發是,最常見的就是給數據庫打交道,其中最常見的數據庫也就是MySQL數據庫,因為是免費,而且幾乎支持所有的開發語言(好用)。在Java操作數據庫時,並且一次操作多條sql語句時,這個時候事務的優點體現出來了,事務可以讓任何有出錯的數據回到操作之前。舉個例子,若果需要在數據庫中添加兩條數據,如果兩條數據都添加成功這是我們最想要的結果。但是 程序在執行時如果第一條成功添加到了數據庫,到了第二條突然服務器崩潰出錯了,沒能把第二條數據添加成功,這個時候就會影響客戶的使用。一旦這個程序是用在銀行系統上該怎么辦?這個時候事務的使用會把操作回滾到添加之前的狀態,就是說兩條數據都沒有添加成功,然后給客戶一個信息,添加失敗。有了事務只要其中多條sql語句有任何一條出錯,那么所有的數據都不會被執行。這樣就更加的保證數據庫的准確。
Web前端:
在之前web前端的開發的技術是指HTML、CSS和JavaScript。隨着RIA的流行和普及,Flash/Flex、Silverlight、XML和服務器端語言也是前端開發工程師應該掌握的,隨着時代的發展,前端開發技術也演變成為現今的:html5,css3,jquery。在這里我就簡單地說一下最常用的HTML、CSS、JavaScript和jQuery。
學習java之后再學前端的開發會變得很容易,因為在寫html標簽和布局時是基本不涉及到復雜的邏輯,只要細心、耐心是可以學好的。其實對HTML標簽的調試可以用瀏覽器上的檢開發員工具,來調試一些div或其他元素的位置和大小,等調試好之后再把這些標簽寫入代碼中,這樣可以減少多次修改。在這里主要說一下HTML5的新屬性。在H5中添加很多標簽的新屬性,可用於判斷用戶輸入的判斷,比如H5中對form表單的改良,可以把文本框的type屬性設置成number,time,還有email等,這些可以對用戶輸入的值自動判斷number就是只能輸入數字,可以設置數字的范圍。time就是可以直接選擇一個日歷上的時間,email是可以對輸入的是否是郵箱地址進行判斷,等等,H5增加了好多屬性之前標簽的屬性,又增加了幾個行的標簽,如<aricle></ariticle>、<aside></aside>、<canvas></canvas>等等。現在HTML5的新標簽和新屬性越來越火了,建議大家把HTML5的標簽學會,盡量多的使用。
JavaScript,也是結合前端的一種語言,主要用於獲取前端頁面的東西,和控制一些動畫效果等,其實有些簡單的動畫效果用CSS3是完全可以實現的。JavaScript是一種動態類型、弱類型、基於原型的語言。它是以java開頭的命名,所以它的語言看起來也有點像java,就像php的框架一樣,JavaScript在實現某種效果時,因為寫得代碼太多,不便與開發,所以jQuery的出現,讓js的語法變得很簡單,jQuery中把JavaScript的方法優化成了很簡單的語法形式,方便使用。jQuery是js的一個庫,它把js實現的一些動畫效果封裝成了一個簡簡單單的方法,只需要引入jQuery的插件,就可以方便使用了。jQuery也把Ajax的技術用於對數據的異步提交封裝成了一個方法,提高了開發人員的實用性。
PHP:
一個網站只有前端的靜態頁面是不夠的,就像一個死的東西,有了php才能讓用戶用瀏覽器通過服務器來讀取數據庫中的東西進行一些操作,比如在網站上看一個人的CSDN博客,自己發表一篇文章啊,之類的。php就是用來操作數據庫和服務器的,這些東西HTML標簽是無法做到的。
其實,現在對網站的開發,那些程序員都不是用最原始的php來編寫的,目前php有很多框架,如常見的sysmfony、cakephp、fleaphp、zend、kohana、CodeIgniter、thinkPHP、Yii、qeephp,laravel等;用了這些框架對開發來說大大提高了效率,並且是結構變得如此清晰。如:拿thinkphp來說,thinkphp使用MVC的一種架構思想來寫的,踏實把給用戶展示的視圖層,操作數據庫的控制層,還有對數據庫自動驗證和完成的操作,強制分開,從而使開發人員更加容易的去開發功能。同是,thinkphp還提供了好多封裝好的類,如:分頁類,驗證碼類,上傳文件類等。不用讓開發人員再用php去寫那些類,是開發的效率更高。在這里我提一點,對於一些表單的提交,一定要在php中做判斷,例如輸入的名字或者數字不符合要求之類的,所言HTML5對表單做的自動驗證,不讓用戶輸入不符合要求的格式。但是,那是在前台,人們都可以自己修改前台的代碼,php的代碼在瀏覽器中是無法看到的,所以再php中判斷就顯得很重要了。所以建議大家,在開發后端php是最重要的一點就是 “嚴謹”,要注意細節,不能出現漏洞,該有的判斷一定要有,不要偷懶,否則就會出現不必要的后果,有句話說的好叫:小心得天下,大意失荊州!
ps:本文為個人見解,有不對之處,望斧正
原文轉自:https://blog.csdn.net/Iloveyougirls/article/details/52289045
