- 目錄
第1篇 計(jì)算機(jī)軟件工程師實(shí)習(xí)報(bào)告
計(jì)算機(jī)軟件工程師實(shí)習(xí)報(bào)告范文
本周是實(shí)習(xí)的第一周,很幸運(yùn)碰到了產(chǎn)品部很有耐心的leader詹老師。實(shí)習(xí)第二天他讓我做一個(gè)h5的游戲類應(yīng)用, 主要用于微信中分享。之前對(duì)于自己的水平是否能完成完全沒底,但感覺第一次實(shí)操確實(shí)也有點(diǎn)讓人興奮,之前關(guān)于產(chǎn)品開發(fā)的印象只停留在書本上。
詹老師讓我模仿“過家家gogaga”所開發(fā)的“打電話認(rèn)師姐”微信小游戲?qū)懸粋€(gè)類似的應(yīng)用。我把原始應(yīng)用找出來便開始摳代碼,第一步是將套在微信接口中的原始應(yīng)用摳出來(套在微信接口的原始應(yīng)用只能在微信瀏覽器中運(yùn)行,無法在電腦上測試),周二開始做,一開始我的效率非常低,因?yàn)槲液芏鄿y試方法并不熟悉,在參閱了微信js-sdk后總算把原始代碼摳出來,厘清該應(yīng)用的基本邏輯后開始重寫,在詹老師的耐心地指導(dǎo)和對(duì)基礎(chǔ)知識(shí)的講解下,我們將原始代碼中120行的css代碼優(yōu)化到60行,將五百多行的js代碼優(yōu)化到只有60行,這事實(shí)上是在原有的邏輯上完全重寫了,這讓我開始有點(diǎn)成就感了。
也第一次感受到產(chǎn)品開發(fā)中的大局觀,這種大局觀更多的是體現(xiàn)在細(xì)節(jié)上,比如代碼變量名的設(shè)置需要與文件存放聯(lián)合考慮,以便日后修改和維護(hù)。詹老師在講代碼邏輯的時(shí)候親自寫了一個(gè)例子讓我體會(huì),雖然消化這些用了快一天,但感覺真的收獲很大,有拔云見日之感。
實(shí)習(xí)一周后所遇到的種種困難也讓我意識(shí)到自己很多問題,歸納如下:
1.盡管之前對(duì)于書本的學(xué)習(xí)有一定積累,但還是暴露出代碼的不熟練,細(xì)節(jié)方面處理能力差,在細(xì)節(jié)上耗費(fèi)時(shí)間太多。
2.缺乏基本的軟件開發(fā)測試思路,比如之前不知道chrome具有相當(dāng)強(qiáng)大的錯(cuò)誤測試功能,它對(duì)于沒有觸發(fā)的函數(shù)也有錯(cuò)誤提示。
3. 缺乏專注的習(xí)慣,比如詹老師讓我先完成功能方面,但我卻習(xí)慣于去找找界面的素材,這就導(dǎo)致兩邊都沒有做好。雖然認(rèn)識(shí)上知道不該這么做,但是習(xí)慣上卻很難改。
4.自己很多時(shí)候雖然有問題但是不能完全闡述清楚,所以跟leader溝通的時(shí)候往往支支吾吾,以后有問題自己首先得想清楚,將問題講明白也是很關(guān)鍵的能力。
另外也記錄一些自己的淺薄感受:
1.工科出身的詹老師對(duì)于代碼的運(yùn)行效率有很多的考慮,但對(duì)于用戶體驗(yàn)和交互效果似乎稍微少點(diǎn),當(dāng)然也可能是我新來并不了解的原因。
2. 公司在做小應(yīng)用的時(shí)候并不會(huì)在用戶測試和產(chǎn)品結(jié)構(gòu)功能上討論太多,公司要的是迭代效率,就是要快速出應(yīng)用,然后再快速上線下一個(gè)。
本周接到新的任務(wù),為制作h5的招聘頁面,之前的“給師姐打電話”的h5應(yīng)用還沒有優(yōu)化好,能做的改進(jìn)的地方還有很多,leader詹老師讓我先把招聘網(wǎng)站做好,h5應(yīng)用先放放,他給了我大街網(wǎng)做的“中國好offer”作為參考,拿到之后確實(shí)感覺這些頁面都做得很好,詹老師搜集的資源確實(shí)十分豐富,從實(shí)習(xí)到現(xiàn)在他發(fā)給我的參考很實(shí)用,在看完了五六十個(gè)h5的招聘頁面之后開始構(gòu)思,在將產(chǎn)品架構(gòu)基本做好后,測試又發(fā)現(xiàn)很多問題,有技術(shù)層面的,但更多的設(shè)計(jì)本身的問題。技術(shù)的細(xì)節(jié)的問題:基于jquery mobile的開發(fā)框架國內(nèi)的資料十分有限,不得不查閱原始的英文api,很多問題也只能去jqm的論壇查找,這些都十分考驗(yàn)英文閱讀能力。css的布局問題繁雜,在各個(gè)瀏覽器,各個(gè)應(yīng)用的渲染都不一樣, 也是很折磨人的過程,我現(xiàn)在就碰到了css中font-weight屬性在safari沒有渲染的問題,至今沒有解決。
逐漸體會(huì)到前端工作的繁瑣與細(xì)節(jié),需要學(xué)的東西很多,有時(shí)候可以憑自己一些小聰明在當(dāng)前解決,但并沒有摸到問題的根源,揚(yáng)湯止沸不是長久之計(jì),但又好像沒有足夠的時(shí)間來系統(tǒng)的摸索,我只能先將這些問題一一記下來。這些技術(shù)的'體會(huì)是一方面,另一方面便是產(chǎn)品的設(shè)計(jì)層面,現(xiàn)在就是因?yàn)楫a(chǎn)品快做好后發(fā)現(xiàn)有很多地方犯了低級(jí)錯(cuò)誤,以往的紙上談兵頭頭是道,等到自己親身實(shí)踐卻感到把握不住很多設(shè)計(jì)原則,比如界面設(shè)計(jì)給用戶造成的不必要的干擾,功能可見性的不足,邏輯上的不嚴(yán)謹(jǐn),以下我歸納了下崗做好的h5界面存在的交互問題:
1.頁面的設(shè)計(jì)初衷是左右滑動(dòng)來切換頁面,但給幾個(gè)朋友測試后都不能進(jìn)入頁面后就自然而然的知道是左右滑動(dòng)。
2.join us的圖標(biāo)給用戶是按鈕的錯(cuò)覺,在測試中很多用戶以為是按鈕,都會(huì)下意識(shí)的點(diǎn)擊。
3.交互效果的乏善可陳,與滑動(dòng)的邏輯似乎也沒有太大關(guān)聯(lián),只是單純的加入了一些css3的動(dòng)畫。
4.用于提示左右滑動(dòng)的動(dòng)態(tài)箭頭會(huì)讓用戶以為是點(diǎn)擊作用。
改進(jìn):
1.放棄join us圖標(biāo)
2.改為上下滑動(dòng),箭頭提示更改
3.重新設(shè)計(jì)圖標(biāo)擺放結(jié)構(gòu)
總結(jié):這次的h5頁面主要在于設(shè)計(jì)問題,事先并沒有完全構(gòu)思好原型就急急切投入到代碼的編寫中,這種開發(fā)方式本身是十分幼稚的!
第2篇 計(jì)算機(jī)軟件應(yīng)用工程師實(shí)習(xí)報(bào)告
開發(fā)windows應(yīng)用程序和web應(yīng)用程序的能力?,F(xiàn)在我再去理解和c#,就會(huì)發(fā)現(xiàn)是個(gè)強(qiáng)大的新平臺(tái),而c#則是該平臺(tái)下的開發(fā)語言。公司選擇作為開發(fā)平臺(tái),c#為開發(fā)語言很有眼光,我很欣賞公司領(lǐng)導(dǎo)的決策。的確我感覺將是現(xiàn)在和未來基于windows開發(fā)的平臺(tái),不管開發(fā)windows應(yīng)用程序還是web應(yīng)用程序,還有web服務(wù)。而且微軟也將其未來的發(fā)展重點(diǎn)放在上,以后還將不限平臺(tái),包括其它操作系統(tǒng)下都會(huì)推出,相信憑借微軟的技術(shù)力量和實(shí)力,的未來會(huì)更美好。開發(fā)中用到了oracle數(shù)據(jù)庫,我對(duì)oracle數(shù)據(jù)庫也有了新的認(rèn)識(shí)。四、實(shí)習(xí)總結(jié)
我在此次實(shí)習(xí)過程中的收獲主要有四個(gè)方面:一是通過直接參與企業(yè)的運(yùn)作過程,學(xué)到了實(shí)踐知識(shí),同時(shí)進(jìn)一步加深了對(duì)理論知識(shí)的理解,使理論與實(shí)踐知識(shí)都有所提高,圓滿地完成了此次實(shí)習(xí)的實(shí)踐任務(wù)。二是提高了實(shí)際工作能力,為就業(yè)和將來的工作取得了一些寶貴的實(shí)踐經(jīng)驗(yàn)。三是在實(shí)習(xí)過程中我加入了一個(gè)小團(tuán)隊(duì),彼此之間互相溝通,互相幫助,為了我們的目標(biāo)而努力,讓我看到了大家對(duì)于工作的熱情,還有每個(gè)人的工作能力。四是為畢業(yè)論文積累了素材和資料。
第3篇 計(jì)算機(jī)軟件工程實(shí)習(xí)報(bào)告
時(shí)間過的很快,轉(zhuǎn)眼間已經(jīng)實(shí)習(xí)將近5個(gè)月。
最先在內(nèi)部系統(tǒng)組參與內(nèi)部管理系統(tǒng)開發(fā)(struts+mysql+spring+mibernate),之后是去做網(wǎng)絡(luò)交換機(jī)軟件的腳本測試?,F(xiàn)在又回歸內(nèi)部系統(tǒng),雖然在腳本組期間,編碼能力被別人甩在后頭,但至少具有了一些測試經(jīng)驗(yàn)。
至少自己做的東西,是真正交付到了客戶手上,到也稍微有些成就感。
1淺談測試
一直以來,我都認(rèn)為測試是脫離了軟件工程范圍的工作,不以為屑。但在實(shí)際情況中,測試是既重要且難以精湛的.其真正的壓力,在于找不到bug,責(zé)任在你,而不在于編碼人員。一般的測試人員不懂編碼,他們靠的是日以累計(jì)的經(jīng)驗(yàn)總結(jié)和想象力。而要做到高級(jí)測試工程師,則一定要懂編碼,因?yàn)檫@是你完全掌握整個(gè)系統(tǒng)的方方面面具體運(yùn)作的前提。但占主導(dǎo)地位的,還是大型系統(tǒng)的集成測試經(jīng)驗(yàn)。實(shí)際項(xiàng)目中,編碼時(shí)間一般只占30%左右,真正耗費(fèi)時(shí)間的是it階段的找bug與對(duì)應(yīng)bug,此階段基本評(píng)定了coder的編碼質(zhì)量。
2程序員的困惑
有些人,以為教學(xué)視頻和代碼看多,自己就懂的多,實(shí)際做起來,卻不知從何下手,問題在那?如何定位?如何解決?通通跟一樣能力有關(guān),debug追蹤能力,也稱調(diào)試。在項(xiàng)目組工作不愁源碼資源,但問題是蛋糕擺在面前,你如何去消化?
有位同事告訴我:代碼看幾遍都沒用,要去抄,例如一個(gè)查詢模塊,在此基礎(chǔ)上去做具體記錄的歷史記錄查詢模塊,你可能會(huì)覺得很簡單,但實(shí)際情況卻往往報(bào)一堆異常,配置問題涉及到方方面面,以及數(shù)據(jù)庫字段,傳值問題等等,一大堆對(duì)于新人來說很郁悶的問題。但不用怕,只要學(xué)會(huì)調(diào)試,一個(gè)個(gè)問題去追蹤,一個(gè)個(gè)去解決,自然而然,那段“源碼”才真正屬于你。
3如何調(diào)試追蹤?
如果你能在短短的時(shí)間內(nèi)就看到問題點(diǎn)在那,放下斷點(diǎn)去追蹤,出去找工作,絕對(duì)沒問題。出現(xiàn)問題的時(shí)候,不要光看代碼,要用實(shí)際行動(dòng)去追蹤運(yùn)行期間的具體值,那是途徑。eclipse是個(gè)很爽的ide,這點(diǎn)做的很好。例如頁面內(nèi)容顯示不是自己想要的數(shù)據(jù),我們要先從數(shù)據(jù)庫查詢語句去下手,設(shè)置斷點(diǎn),一步一步stepover,讓sql字段(存取最終sql語句的字符串)運(yùn)行到有值,inspect進(jìn)去看,如果還看不出來,就點(diǎn)擊它,copy后在sql客戶端去實(shí)際運(yùn)行,看看實(shí)際查詢出來的表是什么,如果是對(duì)的,有可能就是頁面調(diào)用的錯(cuò)誤或者action邏輯的傳值問題。
頁面錯(cuò)誤的調(diào)試,基本方法是用右鍵點(diǎn)擊實(shí)際網(wǎng)頁查看源代碼,copy到editplus,就能看到具體錯(cuò)誤發(fā)生在那幾行。通常有幾種常見的錯(cuò)誤,例如:缺少對(duì)象這種很多時(shí)候是有些被你調(diào)用的字段有可能為空的情況出現(xiàn)的,可以加if(xxx=null)語句加保護(hù)。追蹤的方法基本就是用alert語句,放在有可能出錯(cuò)的地方。
4一些習(xí)慣
遇到問題先自己思考,無從下手再找高手幫忙看看,注意他幫你看的思路,別在一旁閑著,看多了自己也會(huì)了,不然你一輩子都停留在那種水平,從人身上學(xué)到的東西遠(yuǎn)遠(yuǎn)比書多的多。
解決了一個(gè)問題后,要去究根問底去找到問題產(chǎn)生的起因,以防你下次遇到類似的問題再浪費(fèi)同樣的時(shí)間。
把代碼寫的漂亮,注釋、空行、規(guī)范一樣不能少,可讀性是放在第一位。曾經(jīng)看過一個(gè)高手寫的代碼,真的一看就是不同水平的人寫的,幾乎很完美,讀起來很流暢,方便自己也方便別人。
任務(wù)完后不要呆著,去要求經(jīng)理給你更有挑戰(zhàn)性的任務(wù),只要你肯去嘗試,他們就會(huì)對(duì)你另言相看,把三天的任務(wù)一天加班搞定,效率和忠誠都有了,路也比較好走了。
5題尾話
如果你有一份思想,我有一份思想,拿出來交換,我們大家擁有就是2分份思想,可惜這種觀念,并不能深入每一個(gè)團(tuán)隊(duì)的每一個(gè)人,少一點(diǎn)自私,未必不是好事。職場到處都存在被排擠的隱患,要為自己找片草地實(shí)在不容易。但有一點(diǎn)要相信,只要自己不放棄自己,這世上就沒有絕望的路,你可以被打趴下,可以被身邊的人暗算,可以被深愛的人流放,只要你用自己決心站起來,受過的傷痊愈后就能增強(qiáng)你的抵抗力,一路前進(jìn)!