第一次正式java web開發項目的總結

來源:互聯網
上載者:User

標籤:

去年下半年到現在,因為公司人員流動,也有好幾個新進的員工分給我來帶領,也有剛從學校出來的,在和他們交流的過程中,不由的想起自己剛剛進入這行的一些感想。

 

記得自己當初寫過一篇總結的,我想這些對於剛出校門沒什麼工作經驗的程式員應該會有一些協助,但是卻怎麼也無法在csdn部落格列表中找到這片文章。

 

後來無意中發現它竟然跑到了我的資源回收筒中,我已忘記是因為什麼原因使他跑到了這裡,但是我想恢複的時候又發現有點坑的是,csdn資源回收筒的東西無法恢複,因此只好重新發表了。

 

以下是當時的總結:

 

從學校走出來,轉眼間就過去三四個月了,在公司的這幾個月來,終於在最近幾個星期迎來了第一個正式的開發項目,確切的說,是項目迭代。

 

截止到今天,這一輪迭代已能算是基本完成,雖然分到自己的任務並不是很多,甚至可以說非常少,但是從中得到的收穫依舊是巨大的,這大概就是所謂的實踐出真知吧!

 

在培訓學校學了四個月,感覺學了很多東西,但是一直迷迷糊糊的,連書本上的許多習題都不能獨立搞定。每每看到一個小程式的代碼的時候,總感覺非常的簡單,但是當只是給自己一個需求讓自己找思路的時候,卻又總是感覺無從下手。


 而來到公司之後,或許是因為不一樣的氣氛的緣故,在不斷的學習的過程中,當我再回過頭去找一些以前沒有做過的小習題時,居然很是驚訝的發現並不是之前看到的那麼難,解決思路也都像是原本就有一樣水到渠成。


或許這就是積累的力量吧,堅持走下去,就會有很多事在不知不覺間發生了改變!


在這一輪的迭代中,我只負責一個查詢功能的實現,整體比較簡單,只是對查詢出的結果進行處理的過程看似有一點點複雜。因為是第一次獨立的開發,所以在這個過程中犯了一大堆的錯,思路變了又變,代碼改了又改,也正是因為這樣,讓自己才獲得了很大的收穫。

 

這個小小的功能,代碼被我重寫了好幾遍。剛開始的時候,因為對mongodb資料庫的完全陌生,所以只是簡單的套用別人的查詢語句得到一個自己看不太懂的結果,然後進行了一系列的變換,最終把結果變成了我所熟悉的字串和list集合,再在這個基礎上進行處理,最終得到我想要的結果。


結果最終是被我弄出來了,很是興奮,但是經過高手的檢查之後,告訴我的卻是這樣的寫法太不可取了,原本應該很簡單的實現不該被弄的這麼複雜。於是乎,在高手的指點下重新設計思路,完全摒棄了用字串來處理的想法,於是幾乎整個的代碼就都成為了廢品,只能重頭再來!


 不斷的查資料,不斷的詢問,不斷的嘗試,一兩天的煎熬後,終於又成功使用第二種思路得到了我想要的結果。然後反反覆複的檢查了很多遍,再次確定似乎是很符合要求了之後,我便又找來了高手給我檢查。


滿心期待,但結果還是不符合要求,原因是我們的web項目使用的是springmvc結構,而My Code處理邏輯幾乎是全部都在dao的實作類別中一氣呵成了!


對於高手的點評,我是心服口服,因為對於mvc三層結構,以及controller、service、dao這三層,我在培訓學校的時候一直都沒有弄明白,一直到現在開發的時候我都分不清該怎麼用。


高手告訴我說,dao中只需和資料庫打交道,得到了資料庫中的結果就ok,然後主要的處理邏輯在service中,service中返回的結果要能夠供別人調用,最後返回的結果的最終處理放在controller。


於是,再次整理思路,把dao中的代碼進行分解,然後適當的放到另外兩層中,再進行數次的調試,最終又成功迎來了我想要的結果。


我想,這下應該是可以了吧!我在本機上測試了無數次了都沒有任何問題,應該算是完工了吧!但是當最後和前台一聯調才發現完全不是那麼回事,前台無論發送什麼樣的請求給我,我給他返回的竟然都是“message:沒有資料;result:success”!


這是一個多麼令人沮喪的結果,尚差一步,但就是尚差一步!於是只能再次拚命的分析,絞盡腦汁的測試。


但是結果卻是不盡人意的,我怎麼想,怎麼測都覺得應該是沒有問題,可是他結果偏偏就是有問題,於是我只能是不停的抓耳撈腮!


這裡是公司,不同於在學校,結果出不來不能就這樣了,再沒辦法也要想辦法!於是在最終感覺真的是黔驢技窮的時候,我便只能又找來了高手。

 

結果,高手隨便瞄了一眼就找到了問題所在,這讓我長久的折騰更顯得徒勞!原來問題只是我在接收前台參數的時候多加了一個@requestbody的註解,我以為接收參數就要這個註解,而實際上這個註解並不能這樣亂用!


在高手的再次指點下,我刪除了那個註解,結果tomcat一啟動,頁面一重新整理,想要的畫面就那樣神奇的出現在了介面上,這時候真是感覺頗為無語,說不出感覺的無語。


和前台聯調成功,這個任務算是基本完成了,這個過程中,初步清楚了mvc,初步懂了mongodb資料庫,初步明白了公司項目開發的整個流程,也初步掌握了debug調試。

 

綜上等等,在這一次項目中,最大的收穫應該主要有兩個,第一個就是瞭解了公司正式項目的基本開發流程,使自己剛進公司時的忐忑心理變得略微踏實了一些。

 

總結一下,大概的流程應該就是這樣的:

 

首先由需求人員向項目組提出需求,然後給項目組的所有人進行需求講解,大家一起探討需求中各項細節的可行性。

 

當開發人員和需求人員一起確定需求沒有問題的時候,如果有時間,可以讓開發人員進行一次需求反講,在需求和開發都確認沒有問題的時候,需求便算是正式定下來了。

 

需求確定以後,開發人員進行分工協調,然後訂製開發設計概要和API,後端API中一般包括一些介面,需要的參數,還要和前端一起確定好訪問路徑,需要傳遞的參數以及返回給前端的資料格式。

 

在設計api的過程中,前後端各自設計好以後,要召開專門的會議互相講解,在講解討論的過程中達到相關意見的一致,此過程中測試人員也要參加。

 

當api也都確定好以後,開發人員正式開始開發,測試人員也開始寫測試案例。

 

在開發人員寫代碼的過程中,要針對自己的代碼進行單元測試,同時需要寫好單元測試文檔,在測試的過程中不斷的修改和最佳化自己的代碼,以保證邏輯更嚴謹,執行效率更高,代碼更整潔。

 

然後,在前後端各自都測試並完善好自己的功能點後,前後端人員一起進行聯調,進一步確保功能沒有問題。

 

如果上一步驟也都沒有問題以後,代碼就打包部署到測試伺服器交由測試人員來專業的測試,進一步尋找問題,以求最終的程式更加完善。

 

這一次的開發基本步驟大概就是這樣了,那麼第二個收穫就是學會了比較正確的開發態度。

 

之前培訓的時候,可能是因為環境不一樣吧,那時候遇到一個習題或者是一個需求的時候,都會一開始想一陣子辦法,當一段時間的努力還是無法解決問題的時候,通常就會忍不住去看看參考答案,然後在參考答案的協助下,自以為找到了自己的思路,然後會看似成功的完成代碼,而這樣的後果是,其實並沒有真的得到該有的收穫。

 

而這次真正的開發中,沒有參考答案,也沒有做不出來就不管了的說法,無論怎樣都必須想辦法得出想要的結果,正是因為這樣,才使自己在開發中得到了與之前完全不同的收穫和感悟。

 

人生有許多的第一次,第一次總是讓人記憶尤深!第一次之後還會有無數次的其他經曆,許多事只有走下去才知道結果如何;許多事,只要不斷的走下去,就會有意想不到的收穫!實踐出真知,行動得結果,空談會誤國,實幹才興邦!在理論中實踐,在錯誤中成長,在失敗中總結,在跌倒中爬起,堅持不斷的走下去,學下去,這世間終究會有一片屬於自己的天空!

路就在腳下,堅持走下去,以編程書寫人生,使代碼產生力量,用軟體展現價值,讓程式推動夢想!!

第一次正式java web開發項目的總結

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.