軟體公司實習報告

軟體公司實習報告

  軟體公司實習報告【一】

  一、實習目的

  根據所學課程的理論知識,結合企業的運營實際,掌握軟體開發的一般過程,軟體的生命週期和作為一個開發人員就應具備的基本潛力,並撰寫實習報告。使學生進一步鞏固所學理論知識,同時提高觀察問題、分析問題、解決問題的潛力。

  二、企業實習地點

  深圳市百盛佳資訊諮詢有限公司

  三、實習時間:

  20**年12月5日——20**年4月5日

  四、實習資料

  1、java軟體開發

  五、實習總結

  在Internet飛速發展的這天,網際網路成為人們快速獲取、釋出和傳遞資訊的重要渠道,它在人們政治、經濟、生活等各個方面發揮著重要的作用。目前系統的架構一般有c/s架構和b/s架構,但是c/s架構的應用系統,每升級一個版本,客戶端都需要自我下載更新,而b/s架構不需要,因為它是基於瀏覽器的。因此b/s架構的應用系統,在Internet上的地位顯而易見,它已成為政府、企事業單位資訊化建設中的重要組成部分,從而倍受人們的重視。

  計算機將具備更多的智慧成分,它將具有多種感知潛力、必須的思考與決定潛力及必須的自然語言潛力。除了帶給自然的輸入手段(如語音輸入、手寫輸入)外,讓人能產生身臨其境感覺的各種互動裝置已經出現,虛擬現實技術是這一領域發展的集中體現。這天人們談到計算機必然地和網路聯絡起來,一方面孤立的未加入網路的計算機越來越難以見到,另一方面計算機的概念也被網路所擴充套件。二十世紀九十年代興起的Internet在過去如火如荼地發展,其影響之廣、普及之快是前所未有的。從沒有一種技術能像Internet一樣,劇烈地改變著我們的學習、生活和習慣方式。全世界幾乎所有國家都有計算機網路直接或間接地與Internet相連,使之成為一個全球範圍的計算機網際網路絡。人們能夠透過Internet與世界各地的其它使用者自由地進行通訊,可從Internet中獲得各種資訊。人們已充分領略到網路的魅力,Internet大大縮小了時空界限,透過網路人們能夠共享計算機硬體資源、軟體資源和資訊資源。“網路就是計算機”的概念被事實一再證明,被世人逐步理解。

  (一)、實習過程遇到的困難

  1、一進入企業,就立刻被分配開發任務,我的任務是質量資訊管理系統的一個功能點,PDI退改車,有新增,刪除,查詢,稽核,統計的操作。該系統使用的是struts2springibates模式,一開始什麼都不明白,oracle資料庫沒用過,jquery框架沒有用過,ibates框架沒用過。所以給我的開發帶來了很大的困難。

  2、在第二個專案中,我的開發任務是,一線通管理系統中的裝置查詢,裝置修改,還有一些報表的功能,發運環節主要異常事件,銷售部工單月統計報表,儲運部工單月統計報表等等,這些報表功能都需要有折線圖和餅狀圖,還要有匯出e*cel的功能,而我對於如何生成折線圖或餅狀圖,如何匯出e*cel,從未接觸過,這些都是這次開發中的難點。

  3、在益凌進銷存系統中,也就是第三個專案,因為是剛剛開始,所以主要的任務是做設計,就是把那些業務流程圖轉化為靜態網頁。這事看起來好像不難,不就是做靜態網頁嘛!當初我是這樣想的!但是到真正做的時候,就發現了其實並不是想象中的那麼簡單,例如,如何抽象資料欄位,也就是說,別人給你一張真實的業務表,你該如何把那些有用的欄位顯示在你的介面上,業務流程中的每個點之間又有沒有關係,這些都需要你去想的問題。初次接觸,所以做起來也很棘手。

  (二)、如何解決問題:

  作為一個開發人員,遇到這些問題是在所難免的,因為很多技術都在不停的更新,你要不斷的去學習,要有學習新知識的潛力,而且如今網路資源是如此的豐富,只要在internet上搜索一下,很多問題都會迎刃而解。Oracle資料庫簡單的應用,jquery框架和ibaties框架的應用也是透過網路資源一邊學習一邊應用來實現我的目的的,當然也少不了跟同事的溝通。對於那個報表中用到的折線圖和餅狀圖,我們採用了一個叫Jfreechat的框架,關於如何應用,也是從網上獲取相關例子,然後經過我們的加工,就很順利的解決了問題。透過這次,感覺收穫還是挺大的。對於進銷存管理系統的設計問題,我壓根就什麼都不懂,看了一段時光的業務流程圖,還是不明白要做什麼,要在網頁介面上體現哪些欄位,每個介面之間又有什麼聯絡,這些都不太明白。“這些東西要靠自我想的”,專案負責人跟我說了,之後他就跟我說了一大堆如何抽象欄位,要把每個業務點的關係理清,然後再透過他們的關係抽象有用的欄位。聽他說了之後,恍然大悟,原先是這麼一回事。之後,每次遇到不懂的,就立刻去和他溝通。完成了這些設計,我感覺我對軟體開發,又有了更深的認識,同時也讓我意識到溝通在軟體開發中真的是一件很重要的事。

  六、實習心得

  經過為期4個月的專業實習,令我更深一步的瞭解和學習了軟體開發的一般過程,不再是以前那樣,都不明白軟體開發是什麼東西。對於一個應用系統他們為什麼要那麼多人來做,而這麼多人一齊做,程式碼又是如何進行管理的。對於每一個應用系統,企業到底用到哪些技術,他們為什麼要選取這些技術,我們開發人員的主要任務是什麼等等,這些概念都漸漸的清晰。人,孰能無過,過而改之,善莫大焉!沒有誰,在編寫程式碼的過程中永遠不會犯錯,即使他十分的厲害,那也是從不斷的犯錯過程中鍛煉出來的,但亦有“犯錯”的時候,因為需求是不斷的改變的,即使你當時沒錯,但需求改了之後,你的程式碼不貼合需求,那也是你的錯。有錯那當然就要除錯咯,以前老是害怕出錯,找不到問題所在是件令人煩惱的事。但是當除錯的錯誤多了之後,你就會發現,每當一看到相類似的錯誤之後,你就會立即明白這個錯誤是什麼原因造成的!所以,我們不就應害怕出錯,就應把除錯錯誤當成一種提高個人潛力的方式。對於測試人員發回來的bug我們要認真的'對待,造成這種bug就證明了我們的思路還是不怎樣的清晰,所以有必要再去看看相關的資料。溝通是人與人之間傳遞資訊的途徑,好的溝通能很完美的傳達你的思想,你的見解。在企業中,每一個系統的

  開發過程一般來說都不是一個人從頭做到尾的,一般都有分工的,如此一來,溝通就必不可少了,因為你要把你做的工作,你為什麼這樣做,告訴別人,別人才更好的去完成他的任務。

  這次實習,是進行實戰性工作,學到了很多東西,我相信對以後的生活和工作都有很大的幫忙。

  軟體公司實習報告【二】

  一、實習目的

  進一步瞭解java開發的相關知識,掌握java開發的基本技術,豐富java開發的實戰經驗。學習SQL的基礎知識及正確的運用方法,和有用的相關技術,提高自己的工作效率。透過實習,培養我們綜合運用Java語言的面向物件程式設計能力;培養我們動手能力;培養我們良好程式設計規範、程式設計方法;以便能較全面地理解、掌握和綜合運用所學的知識,提高自身的程式設計能力;增強自己的團隊協作意識,瞭解軟體開發的思考角度和主要流程。為畢業之後能夠更快地進入工作狀態並且能夠更好的工作,打好一定的基礎。

  二、實習單位及崗位介紹

  1、實習單位介紹

  2、實習崗位介紹

  我的崗位是Java軟體工程師。實習期間參與人力資源管理系統的開發,根據開發規範和流程獨立完成模組設計、編碼、測試。編寫相關應用系統的開發文件、資料庫設計文件等。較為詳細和系統的掌握了軟體開發的知識體系。把所學知識與解決實際問題相聯絡,培養了自己發現問題、分析問題和解決問題的能力,從而提高了自己從事實際工作的能力。

  三、實習內容及過程

  1、Java基礎知識

  Java的基礎知識對於一個Java軟體工程師來說就好比是人的靈魂,現在的公司在招聘的時候很多都不在乎你會不會流行的技術,如(Struts、Hibernate、Spring、ibatis等)。他看重的是你的基礎扎不紮實,對於網易、騰訊等大公司來說更是如此,我們在開發過程中運用了大量的Java基礎知識,如類、物件、方法、成員變數、靜態變數、封裝、繼承、多型、異常、介面、抽象類、IO流等等,所以一個系統對於Java程式設計基礎的依賴便不言而喻。

  2、MySQL、Oracle資料庫

  MySQL是最流行的開放原始碼SQL資料庫管理系統,它是由MySQL AB公司開發、釋出並支援的。MySQL AB是由多名MySQL開發人創辦的一家商業公司。它是一家第二代開放原始碼公司,結合了開放原始碼價值取向、方法和成功的商業模型。Oracle則是以穩定性著稱,在訪問量和資料大量交換的伺服器中,Oracle佔了大臂的江山,在開發中主要用到了資料庫的查詢語句、資料庫的關係、事物等。

  3、Servlet和JSP

  一個Servlet就是Java程式語言中的一個類,它被用來擴充套件伺服器的效能,伺服器上駐留著可以透過“請求-響應”程式設計模型來訪問的應用程式。雖然Servlet可以對任何型別的請求產生響應,但通常只用來擴充套件Web伺服器的應用程式。Java Servlet技術為這些應用程式定義了一個特定於HTTP的 Servlet類。java*、servlet和java*、servlet、http包為編寫Servlet提供了介面和類。所有的Servlet都必須實現Servlet介面,該介面定義了生命週期方法。

  JSP是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態技術標準。在傳統的網頁HTML檔案(*、htm,*、html)中加入Java程式片段(Scriptlet)和JSP標籤,就構成了JSP網頁Java程式片段可以操縱資料庫、重新定向網頁以及傳送E-mail等,實現建立動態網站所 需要的功能。所有程式操作都在伺服器端執行,網路上傳送給客戶端的僅是得到的結果,這樣大大降低了對客戶瀏覽器的要求,即使客戶瀏覽器端不支援Java, 也可以訪問JSP網頁 。

  Java Servlet是JSP技術的基礎,而且大型的Web應用程式的開發需要JavaServlet和JSP配合才能完成。現在許多Web伺服器都支援Servlet,即使不直接支援Servlet的Web伺服器,也可以透過附件的應用伺服器和模組來支援Servlet,這得益於Java的跨平臺特性。另外,由於Servlet內部以執行緒方式提供提供服務,不必對於每個請求都啟動一個程序,並且利用多執行緒機制可以同時為多個請求服務,因此Servlet的效率非常高 。

  4、三大框架

  Struts 2是Struts的下一代產品,是在 struts 1和WebWork的技術基礎上進行了合併的全新的Struts 2框架。其全新的Struts 2的體系結構與Struts 1的體系結構差別巨大。Struts 2以WebWork為核心,採用攔截的器的機制來處理使用者的請求,這樣的設計也使得業務邏輯控制器能夠與Servlet API完全脫離開,所以Struts 2可以理解為WebWork的更新產品。雖然從Struts 1到Struts 2有著太大的變化,但是相對於WebWork,Struts 2的變化很小。

  Hibernate是一個開放原始碼的物件關係對映框架,它對JDBC進行了非常輕量級的物件封裝,使得Java程式設計師可以隨心所欲的使用物件程式設計思維來操縱資料庫。 Hibernate可以應用在任何使用JDBC的場合,既可以在Java的客戶端程式使用,也可以在Servlet/JSP的Web應用中使用,最具革命意義的是,Hibernate可以在應用EJB的J2EE架構中取代CMP,完成資料持久化的重任。

  Spring 也表示是一個開源框架,是為了解決企業應用程式開發複雜性由Rod Johnson建立的。框架的主要優勢之一就是其分層架構,分層架構允許使用者選擇使用哪一個元件,同時為 J2EE 應用程式開發提供整合的框架。Spring使用基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限於伺服器端的開發。從簡單性、可測試性和松耦合的角度而言,任何Java應用都可以從Spring中受益。

  5、管理系統的開發

  四、實習總結及體會

  透過這次實習機會,我主要學習了以上這些java程式設計的技術,同時也明白了身處公司中如何更好地與同事配合,畢竟在軟體開發中,你不可能一個人幹完一個系統,大家都是透過svn等團隊管理工具互相配合完成程式設計任務。在實習之前,我對軟體開發的過程只有一個模糊地印象,以為只要把程式碼編寫完之後就算

  基本上一個專案開發完畢了。然而透過這次實習,徹底顛覆了我的認知,我當時的認知無疑是非常幼稚和可笑的,完全的軟體開發過程不只只是編寫程式碼,在編寫程式碼之前還有好多的事情要做,比如文件的編寫、對專案進行需求分析、資料庫設計等等。程式碼編寫完成之後還要進行測試,以及人員的培訓,這些都是必須做,也是必不可少的專案,甚至比程式碼的編寫還重要。

  我在開發期間遇到很多問題,但是我會試著到網路去找答案,如果實在找不到我會試著問問我的上級,或者跟一些朋友討論一下,如果發現了這個問題的答案我會及時把它記錄下來,方便以後遇到問題可以隨時翻閱,我相信好記性不如爛筆頭這句話,我也相信如果一個程式設計師寫的程式碼沒有錯誤那隻能證明他沒寫過程式碼,雖然我比較懶,但我現在有空的時候都會對著電腦敲程式碼,我相信手感是敲出來的,你看10遍都不如你敲一遍來得印象深刻。

  透過這次實習,我認識到了一個軟體開發的完整的過程,為我今後進行實際的工作奠定了堅實的基礎。首先,進入公司,你就是一名職業人,不再是一名學生,你要具備一名職業人應具備的素養,不遲到不早退是必然的,而且還要時刻嚴格要求自己,公司的規定要嚴格遵守。然後,在技術上也有了很大的提高,學習了很多公司自己的框架和工具,這都是一些前輩的寶貴經驗。而且所作的軟體應用性更強。所以,在今後的學習中我會嚴於律己,認真學習有關軟體程式設計的課,為以後的工作打好堅實的基礎。

最近訪問