2017年軟件公司實習報告_第1頁
2017年軟件公司實習報告_第2頁
2017年軟件公司實習報告_第3頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、2017 年軟件公司實習報告本周是實習的第一周,很幸運碰到了產品部很有耐心的leader詹老師。 實習第二天他讓我做一個H5 的游戲類應用,主要用于微信中分享。之前對于自己的水平是否能完成完全沒底,但感覺第一次實操確實也有點讓人興奮,之前關于產品開發的印象只停留在書本上。詹老師讓我模仿“過家家gogaga ”所開發的“打電話認師姐”微信小游戲寫一個類似的應用。我把原始應用找出來便開始摳代碼,第一步是將套在微信接口中的原始應用摳出來(套在微信接口的原始應用只能在微信瀏覽器中運行,無法在電腦上測試),周二開始做,一開始我的效率非常低,因為我很多測試方法并不熟悉,在參閱了微信 JS-SDK后總算把原

2、始代碼摳出來,厘清該應用的基本邏輯后開始重寫,在詹老師的耐心地指導和對基礎知識的講解下,我們將原始代碼中120 行的 CSS代碼優化到 60 行,將五百多行的JS 代碼優化到只有60 行,這事實上是在原有的邏輯上完全重寫了,這讓我開始有點成就感了。也第一次感受到產品開發中的大局觀,這種大局觀更多的是體現在細節上,比如代碼變量名的設置需要與文件存放聯合考慮,以便日后修改和維護。詹老師在講代碼邏輯的時候親自寫了一個例子讓我體會,雖然消化這些用了快一天,但感覺真的收獲很大,有拔云見日之感。實習一周后所遇到的種種困難也讓我意識到自己很多問題,歸納如下:1. 盡管之前對于書本的學習有一定積累,但還是 ?

3、暴露出代碼的不熟練,細節方面處理能力差,在細節上耗費時間太多。2. 缺乏基本的軟件開發測試思路, 比如之前不知道 chrome具有相當強大的錯誤測試功能,它對于沒有觸發的函數也有錯誤提示。3. 缺乏專注的習慣,比如詹老師讓我先完成功能方面,但我卻習慣于去找找界面的素材, 這就導致兩邊都沒有做好。雖然認識上知道不該這么做,但是習慣上卻很難改。4. 自己很多時候雖然有問題但是不能完全闡述清楚,所以跟leader 溝通的時候往往支支吾吾,以后有問題自己首先得想清楚,將問題講明白也是很關鍵的能力。?另外也記錄一些自己的淺薄感受:1. 工科出身的詹老師對于代碼的運行效率有很多的考慮,但對于用戶體驗和交互

4、效果似乎稍微少點,當然也可能是我新來并不了解的原因。?2. 公司在做小應用的時候并不會在用戶測試和產品結構功能上討論太多,公司要的是迭代效率,就是要快速出應用,然后再快速上線下一個。本周接到新的任務,為中國教育在線制作H5 的招聘頁面,之前的“給師姐打電話”的H5 應用還沒有優化好,能做的改進的地方還有很多, leader 詹老師讓我先把招聘網站做好,H5 應用先放放, 他給了我大街網做的“中國好 Offer ”作為參考, 拿到之后確實感覺這些頁面都做得很好, 詹老師搜集的資源確實十分豐富,從實習到現在他發給我的參考很實用,在看完了五六十個 H5 的招聘頁面之后開始構思,在將產品架構基本做好后

5、,測試又發現很多問題,有技術層面的,但更多的設計本身的問題。技術的細節的問題:基于 jquery mobile的開發框架國內的資料十分有限,不得不查閱原始的英文API,很多問題也只能去JQM 的論壇查找,這些都十分考驗英文閱讀能力。CSS的布局問題繁雜,在各個瀏覽器,各個應用的渲染都不一樣,也是很折磨人的過程,我現在就碰到了css 中 font-weight屬性在 Safari 沒有渲染的問題,至今沒有解決。逐漸體會到前端工作的繁瑣與細節,需要學的東西很多,有時候可以憑自己一些小聰明在當前解決,但并沒有摸到問題的根源,揚湯止沸 ?不是長久之計,但又好像沒有足夠的時間來系統的摸索,我只能先將這些

6、問題一一記下來。這些技術的體會是一方面,另一方面便是產品的設計層面,現在就是因為產品快做好后發現有很多地方犯了低級錯誤,以往的紙上談兵頭頭是道,等到自己親身實踐卻感到把握不住很多設計原則,比如界面設計給用戶造成的不必要的干擾,功能可見性的不足,邏輯上的不嚴謹,以下我歸納了下崗做好的 H5 界面存在的交互問題:1. 頁面的設計 ?初衷是左右滑動來切換頁面,但給幾個朋友測試后都不能進入頁面后就自然而然的知道是左右滑動。2.join us 的圖標給用戶是按鈕的錯覺,在測試中很多用戶以為是按鈕,都會下意識的點擊。3. 交互效果的乏善可陳,與滑動的邏輯似乎也沒有太大關聯,只是單純的加入了一些 css3

7、的動畫。4. 用于提示左右滑動的動態箭頭會讓用戶以為是點擊作用改進:1. 放棄 join us 圖標 ?2. 改為上下滑動 ?,箭頭提示更改3. 重新設計圖標擺放結構總結: 這次的 H5 頁面主要在于設計問題,事先并沒有完全構思好原型就急切投入到代碼的編寫中,這種開發方式本身是十分幼稚的 !一、 實習的時間: 20XX 年 4 月 5 日 20XX 年 6 月 20 日二、 實習的地點: xx 有限公司三、 實習的目的:進一步了解 java 開發的相關知識,掌握java 開發的基本技術,豐富 java 開發的實戰經驗。學習SQL 的基礎知識及正確的運用方法,和有用的相關技術,提高自己的工作效率

8、。通過實習,培養我們綜合運用已學知識Java 語言的面向對象編程能力; 培養我們動手能力 ;培養我們良好編程規范、編程方法; 以便能較全面地理解、掌握和綜合運用所學的知識,提高自身的編程能力;增強自己的團隊協作意識,了解軟件開發的思考角度和主要流程。為畢業之后能夠更快地進入工作狀態并且能夠更好的工作,打好一定的基礎。四、實習的方式、方法:實踐操作五、實習的要點:1.MySql 數據庫和 SQL 數據庫的使用 ;2. Java 中的常用設計模式 ;3. 控制技術 -Servlet 技術4. 頁面設計 -JSP 頁面 ;六、實習的內容:Mysql 數據庫1) MySQL 數據庫管理系統概述MySQ

9、L 是最流行的開放源碼SQL數據庫管理系統,它是由MySQL AB 公司開發、發布并支持的。MySQL AB 是由多名 MySQL開發人創辦的一家商業公司。它是一家第二代開放源碼公司,結合了開放源碼價值取向、方法和成功的商業模型。數據庫是數據的結構化集合。計算機是處理大量數據的理想工具,因此,數據庫管理系統在計算方面扮演著關鍵的中心角色,或是作為獨立的實用工具,或是作為其他應用程序的組成部分。MySQL 服務器還有一套實用的特性集合,這些特性是通過與我們用戶的密切合作而開發的。在我們的基準測試主頁上,給出了MySQL 服務器和其他數據庫管理器的比較結果。MySQL 服務器最初是為處理大型數據庫

10、而開發的,與已有的解決方案相比,它的速度更快,多年以來,它已成功用于眾多要求很高的生產環境。盡管MySQL 始終在不斷發展,但目前MySQL 服務器已能提供豐富和有用的功能。它具有良好的連通性、速度和安全性,這使的 MySQL 十分適合于訪問Internet 上的數據庫。2) MySQL 穩定性每次發布的 MySQL 服務器均是可用的。僅當用戶嘗試源自“灰色區域”的代碼時才會出現問題。當然,新用戶不了解“灰色區域”是什么。因此,在本節中,我們介紹了目前已知的這類區域。本節所作的介紹主要針對MySQL服務器 5.0 版和更高版本。在最新的版本中,更正了所有已知和通報的缺陷,但“缺陷”一節所列的除

11、外,這類缺陷與設計有關。java 與 SQL 的應用Java 語言是編寫數據庫應用程序的杰出語言之一,它提供了方便訪問數據的技術。利用Java 語言中的 JDBC 技術,用戶能方便地開發出基于Web 網頁的數據庫訪問程序,從而擴充網絡應用功能。JDBC(Java Database Connectivity ,Java 數據庫連接 )是一種用于執行 SQL 語句的 Java API,可以為多種關系數據庫提供統一的訪問接口。 JDBC由一組用 Java 語言編寫的類與接口組成,通過調用這些類和接口所提供的方法,用戶能夠以一致的方式連接多種不同的數據庫系統 (如 Access、SQL Server

12、2000 、Oracle、Sybase 等),進而可使用標準的 SQL語言來存取數據庫中的數據,而不必再為每一種數據庫系統編寫不同的 Java 程序代碼。SQL Server2000 是微軟公司新一代的數據庫產品,它是在SQL Server7.0 建立的堅固基礎上產生的,并對SQL Server7.0 做了大量擴展。 SQL Server2000 通過高端硬件平臺以及最新網絡和存儲技術的支持,可為最大的Web 站點和企業級應用提供可擴展性和高可靠性。Java 中的常用設計模式1) 工廠模式客戶類和工廠類分開。消費者任何時候需要某種產品,只需向工廠請求即可。消費者無須修改就可以接納新產品。缺點是

13、當產品修改時,工廠類也要做相應的修改。如:如何創建及如何向客戶端提供。2) 工廠方法模式核心工廠類不再負責所有產品的創建,而是將具體創建的工作交給子類去做,成為一個抽象工廠角色,僅負責給出具體工廠類必須實現的接口,而不接觸哪一個產品類應當被實例化這種細節。控制技術 -Servlet 技術1) 什么是 Servlet?一個 servlet 就是 Java 編程語言中的一個類,它被用來擴展服務器的性能,服務器上駐留著可以通過“請求-響應”編程模型來訪問的應用程序。雖然servlet 可以對任何類型的請求產生響應,但通常只用來擴展Web 服務器的應用程序。 Java Servlet 技術為這些應用程

14、序定義了一個特定于HTTP 的 servlet 類。javax.servlet 和 javax.servlet.http包為編寫 servlet 提供了接口和類。所有的servlet 都必須實現 Servlet 接口,該接口定義了生命周期方法。2) Servlet 的生命周期一個 servlet 的生命周期由部署servlet 的容器來控制。當一個請求映射到一個servlet 時,該容器執行下列步驟。頁面設計 -JSP 頁面1)MVC 模式為了把表現層 presentation 從請求處理 request processing和數據存儲 data storage 中分離開來, SUN 公司推薦

15、在 JSP文件中使用一種“模型 -視圖 -控制器” Model-view-controller模式。規范的 SERVLET或者分離的 JSP文件用于處理請求。當請求處理完后,控制權交給一個只作為創建輸出作用的 JSP頁。有幾種平臺都基于服務于網絡層的模 -視圖 -控件 模式 (比如 Struts 和 Spring framework) 。2) JSP 技術的強勢(1) 一次編寫,到處運行。在這一點上Java 比 PHP更出色,除了系統之外,代碼不用做任何更改。(2) 系統的多平臺支持。基本上可以在所有平臺上的任意環境中開發,在任意環境中進行系統部署,在任意環境中擴展。相比ASP/PHP的局限性

16、是顯而易見的。(3) 強大的可伸縮性。從只有一個小的 Jar 文件就可以運行Servlet/JSP,到由多臺服務器進行集群和負載均衡,到多臺Application 進行事務處理,消息處理,一臺服務器到無數臺服務器,Java 顯示了一個巨大的生命力。(4) 多樣化和功能強大的開發工具支持。這一點與ASP 很像,Java 已經有了許多非常優秀的開發工具,而且許多可以免費得到,并且其中許多已經可以順利的運行于多種平臺之下。3) JSP 技術的弱勢(1) 與 ASP一樣, Java 的一些優勢正是它致命的問題所在。正是由于為了跨平臺的功能,為了極度的伸縮能力,所以極大的增加了產品的復雜性。(2) Ja

17、va 的運行速度是用 class 常駐內存來完成的,所以它在一些情況下所使用的內存比起用戶數量來說確實是“最低性能價格比”了。從另一方面,它還需要硬盤空間來儲存一系列的.java 文件和 .class 文件,以及對應的版本文件。4) JSP 內置對象(1)request 對象:該對象封裝了用戶提交的信息,通過調用該對象相應的方法可以獲取封裝的信息,即使用該對象可以獲取用戶提交信息。(2)response 對象:對客戶的請求做出動態的響應,向客戶端發送數據。(3)session 對象session 對象是一個 JSP內置對象,它在第一個JSP頁面被裝載時自動創建,完成會話期管理。從一個客戶打開瀏

18、覽器并連接到服務器開始,到客戶關閉瀏覽器離開這個服務器結束,被稱為一個會話。當一個客戶訪問一個服務器時,可能會在這個服務器的幾個頁面之間反復連接,反復刷新一個頁面,服務器應當通過某種辦法知道這是同一個客戶,這就需要session 對象。(4)application對象服務器啟動后就產生了這個application 對象,當客戶在所訪問的網站的各個頁面之間瀏覽時,這個application對象都是同一個,直到服務器關閉。但是與session 不同的是,所有客戶的application對象都是同一個,即所有客戶共享這個內置的application 對象。(5)out 對象out 對象是一個輸出流,用來向客戶端輸出數據。out 對象用于各種數據的輸出。七、實踐的感受和體會:實習是為將來打基礎的重要階段,珍惜自己每一個工作的機會,不論什么人,什么學歷,從事什么工作,好好的表現、展示自

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論