課程設(shè)計心得體會及感受
本學(xué)期為期一周的嵌入式課程設(shè)計在不知不覺中結(jié)束了,雖說這次課程設(shè)計時光不是很長,但是感覺自我收獲頗豐,不僅僅學(xué)習(xí)到了一些新知識,回顧了以前的一些快要遺忘的知識點,而且使自我的學(xué)習(xí)目標(biāo)更加明確,學(xué)習(xí)方法更加完善,也體會到軟件開發(fā)的趣味,更加清楚地認識到了自我在軟件開發(fā)及學(xué)習(xí)上的一些不足之處。下方就來詳細寫一下我關(guān)于此次課程設(shè)計的心得體會:
此次課程設(shè)計的實訓(xùn)的是由上海杰普公司的楚老師帶我們完成的。楚老師看上去比較年輕,給我們很有親和力,技術(shù)上也很強,而且講解的比較詳細,操作上相當(dāng)嫻熟。讓我們感覺到了計算機科學(xué)技術(shù)學(xué)習(xí)的趣味性,計算機技術(shù)的實用性。此次課程設(shè)計給老師選取項目是在Linux下用c語言開發(fā)一個攝像頭驅(qū)動程序。項目的實施方式是團隊分組合作,共同完成,讓我們體驗了一下公司開發(fā)項目的氛圍。我們一人一機,老師邊講邊練,還有企業(yè)項目經(jīng)理的全程指導(dǎo)。雖說一些些技術(shù)我們在課堂上也曾學(xué)習(xí)過,但是大多停留在理論學(xué)習(xí)上,實際開發(fā)很少,而這次課程設(shè)計給了我們一個很好的邊學(xué)習(xí)邊實踐的機會,對我們深入學(xué)習(xí)這些技術(shù)有很大幫忙,深刻體會到了這些技術(shù)的實用性。每當(dāng)自我成功調(diào)試一段代碼或者透過自我的努力克服一個技術(shù)困難,都頗有收獲感。這次實訓(xùn)讓我們體驗了軟件開發(fā)的全過程,發(fā)現(xiàn)自我的不足,了解了當(dāng)前流行技術(shù)的軟件開發(fā),增加了必須的項目開發(fā)經(jīng)驗,增強了必須的就業(yè)競爭力。簡短的回顧一下這幾天我們所學(xué)習(xí)的:
實訓(xùn)的前一天下午,我們先明確了一下下周課程設(shè)計的要求和目的,跟上海杰普公司的楚老師相互認識了一下。然后楚老師給我們詳細的講解了這一周我們要做什么,并演示了一個他自我開發(fā)的攝像頭驅(qū)動程序。同學(xué)們看了,都很感興趣,如果自我能開發(fā)出這樣的一個小程序,著實讓人高興。接下來的這幾天我們就跟著范老師一齊學(xué)習(xí)攝像頭驅(qū)動的開發(fā),同時我們也分了小組,模擬體驗一下公司的團隊開發(fā),同學(xué)們都用心策劃自我團隊的名字、團隊的口號、隊歌……我們首先從基本的Linux命令學(xué)起,以及l(fā)inux底下的c語言的一些基本知識。雖說這學(xué)期我們也學(xué)過Linux開發(fā)技術(shù),有必須的基礎(chǔ),但這幾天的學(xué)習(xí),還是感覺到我們學(xué)的太淺,很多的東西需要去深入的學(xué)習(xí)才能有所收獲。而且深刻的體會到“熟能生巧”這句良訓(xùn),光學(xué)不練還是白搭。后兩天我們學(xué)習(xí)了Linux底下一些開發(fā)工具的使用,如Qt,感覺這些工具功能確實夠強大。當(dāng)透過自我寫的代碼能夠控制攝像頭拍照時,別提有多高興了。當(dāng)然在調(diào)試的過程中也遇到不少錯誤,每當(dāng)透過自我的努力把問題解決(一般自我思考一下,查查資料都沒問題),也是一種很好的收獲。還有一個比較深刻的體會就是API及一些文檔的查閱,這對開發(fā)人員來說是一個務(wù)必具備的潛力。
此次實訓(xùn)最大的收獲不是我學(xué)習(xí)到了多少知識而是這幾天實訓(xùn)給我的感悟:首先是心態(tài)。必須要有一個用心的心態(tài),獨立解決問題的意識,培養(yǎng)扎實基礎(chǔ)的認識。不要什么東西都感覺跟簡單(很多東西可能是看似簡單)就不去做了或者不屑一做,以至于性網(wǎng)上搜搜就能夠了,這樣很不好。有自我的東西有自我的付出才會有程序運行成功時的喜悅和小自豪,這樣也有助于培養(yǎng)自我的興趣。要時刻牢記態(tài)度決定一切。其次是興趣,感覺學(xué)習(xí)工作中興趣很關(guān)鍵,只是一個引發(fā)人用心性的問題,有了興趣就自覺了,效率自然就高了。再次要敢于嘗試和挑戰(zhàn)。不要安于現(xiàn)成的程序,而且不要害怕失敗,在程序調(diào)試的過程中這點尤為重要,“發(fā)現(xiàn)出問題然后解決問題”是一個積累經(jīng)驗的過程,而且很高效最后要不懈追求。對于源代碼進行不斷的完善,要盡可能的實現(xiàn)課題所要求的功能。對于初學(xué)者或者開發(fā)較少的人來說,超多大寫程序還是有必要的,但同時要注意思考,理解其實現(xiàn)的內(nèi)在好處。還能夠自我添加一些有好處的功能來實現(xiàn)。當(dāng)看到自我編寫的程序正常運行時,興趣也會隨之而來,樂此不疲,構(gòu)成一個良性循環(huán)。
短短一周的課程設(shè)計很快結(jié)束了,我發(fā)現(xiàn)我對計算機這個專業(yè)、對嵌入式技術(shù)、對Linux都有了新的認識。透過這次的實訓(xùn),我了解到,要真真正正的掌握計算機程序還不是一件簡單容易的事兒,但真正掌握后,它帶給我們的將是無窮的便捷與科技,我喜歡高端便捷的生活。我期望我能做計算機這個萬能機器人的主人而不是奴隸,我會努力加油的!感謝學(xué)校,感謝老師給我的幫忙,讓我的思想、技能又上了一個臺階!感謝!加油!
延伸閱讀:
課程設(shè)計心得體會
通過學(xué)習(xí)DsP課程我們都知道,DsP實際上也是一種單片機,它同樣是將中央處理單元、控制單元和外圍設(shè)備集成到一塊芯片上。但DsP有別于普通的單片機,它采用了多組總線技術(shù)實現(xiàn)并行運行機制,從而極大地提高了運算速度,也提供了非常靈活的指令系統(tǒng)。
此次課程設(shè)計從是從我們做完單片機的課程設(shè)計后開始的。實際上在單片機的課設(shè)時,我們就著手準(zhǔn)備設(shè)計資料。按設(shè)計要求,按部就班地進行設(shè)計,基本上用了一周的時間。每天我們都要在固定的教室碰面,安排一天的設(shè)計任務(wù),每人都有明確的分工。而我的分工就是和其他的兩個組員按照事先畫好的電路圖焊接電路板。這個工作看起來很容易,畢竟我們大一的時候就進行過類似的焊接電路板的電子工藝實習(xí)。所以我以為會很得心應(yīng)手,但就是因為有那么的輕視的味道在里面,導(dǎo)致了我后面的功虧一簣,一周的成果不得不全盤重來。
在剛開始進行焊接的時候我們就犯了一個整體布局的錯誤,因為一開始以為會有主芯片焊在電路板上,所以我們的芯片的布局比較集中,這就直接導(dǎo)致了后來我們接線的困難,但為了避免更大的麻煩,我們還是繼續(xù)了下去。當(dāng)時完全沒有考慮到一個基本常識,那就是像這種直接用飛線連接的情況下使用過于密集的連接方法不僅不容易焊接,而且電器性能非常的差,極其容易導(dǎo)致短路和強烈的電子干擾。
就這樣,我們在之后的一周時間里完成了板子的初步焊接工作,就在我們興高采烈的拿去實驗的時候,結(jié)果確是指示燈毫無反映,這下我們就迷糊了,什么原因呢?查吧!于是乎我們開始了一個(201*年 119 消防宣傳月活動方案及文案)下午的仔細的檢查工作,還別說,我們小組特別認真的按照電路圖來一一檢查,還真被我們檢查到了好幾處明顯的錯誤,特別是好幾個電容沒有接地,這種低級錯誤真是不應(yīng)該犯啊。我們自己看到這個錯誤都覺得是很不應(yīng)該,不過知錯能改,善莫大焉。我們很快的改正了這個錯誤。于是第二次拿去測試,想不到這次問題更糟,發(fā)光二極管直接一股青煙給燒了。我們當(dāng)時這是傻了眼了,只好又回來檢查。
檢查后才發(fā)現(xiàn)我們電路圖都畫錯了,原來我們把發(fā)光二極管直接接到12V電源上了,不燒才怪。經(jīng)過這兩次的錯誤,我們總結(jié)了一下我們出現(xiàn)的錯誤,大部分都是很低級的錯誤,這真是我們不認真造成的啊。于是我們又一次認真的檢查了一下電路板,這下果然被我們發(fā)現(xiàn)了好幾處短路的地方。但是由于一開始的整體排列就沒有弄好,導(dǎo)致了現(xiàn)在都無法改動了終于在我們一致討論后,我們終于決定干脆推倒重來,把功率放大模塊整體重新焊接過。這樣雖然可能速度比較慢,但正確性很高,這其實也是無奈之舉。要不是當(dāng)初焊接的時候沒焊好,導(dǎo)致問題多多,現(xiàn)在也不至于要重新來過,不過還好,我們在接受這次慘痛的教訓(xùn)后終于明白了一個道理,工作一定要踏踏實實的去做,特別是學(xué)我們這行的,一點馬虎的也不能有,寧可重來,也不能交上一分馬虎之中做出的東西!在這樣的信念下,我們一直忙到晚上七點,終于是完成重新焊接的工作了,為了保險起見,我們又一次重新完整的檢查了一遍系統(tǒng),在最后確定沒有問題后,我們終于欣慰的走出了教室的大門,來到了食堂吃飯,那一刻感覺食堂的飯怎么都比平常好吃多了,呵呵,這大概就是所謂的自我成就吧。
通過這次課程設(shè)計,我懂得了做一件事情一定要細心仔細,要不然本來很簡單的一件事情也會做的很糟糕,而且一定有懷疑的精神,我們這次二極管燒了就是因為太迷信自己設(shè)計的電路圖了,沒有注意到那個明顯的設(shè)計失誤,才導(dǎo)致了這種結(jié)果。我希望以后能有更多的課程設(shè)計來給我們鍛煉,這樣我們將來走向社會才會有更強的競爭力。我會更加的珍惜以后的這種學(xué)習(xí)的機會的!
閱讀拓展:
課程設(shè)計心得體會
這次為期兩周的課程設(shè)計終于接近尾聲,在同學(xué)和老師的幫助我下完成了這次的課程設(shè)計的題目,而我也在這次的課程設(shè)計中獲益匪淺。
面向?qū)ο蟮乃枷胧蔷幊探绲幕局笇?dǎo)思想之一,它能夠讓程序設(shè)計人員采用一種接近真實世界的方式來設(shè)計程序,而不僅僅是考慮需要處理的數(shù)據(jù)和功能實現(xiàn)。這樣我們就可以將程序中所需操作的對象抽象成類,并按照我們的需要來為它設(shè)置屬性和方法,程序中的數(shù)據(jù)交換可以抽象為對象之間的交流,這樣的思想隱藏了大量的細節(jié),使得我們可以迅速的構(gòu)建出程序的框架,實現(xiàn)快速開發(fā);趯ο蟮某绦驍U展性也很強,具有十分優(yōu)秀的可維護性。
本次課程設(shè)計,我的題目是貨物管理系統(tǒng),我認為面向?qū)ο缶幊套顝?fù)雜的是如何有效的將類抽象出來,高效的抽象類可以減少大量時間,并增強程序的嚴(yán)密性,層次分明的繼承則可以增加代碼的重復(fù)利用率。
同時,c++提供的很多高效工具也讓程序開發(fā)變得簡單許多,例如函數(shù)的重載,操作符重載,多態(tài)和抽象基類。函數(shù)重載和操作符重載可以使程序變得直觀易懂,便于后期調(diào)試和維護。抽象基類則限制了唯一的接口方式,大大增加了后期擴展的性能,并將出錯的結(jié)果放在編譯期,更有利于排錯。
紙上得來終覺淺,唯覺此事要恭行。面向?qū)ο蟮某绦蛟O(shè)計課程為期一學(xué)期,在一個學(xué)期內(nèi),我們接觸完了基本的c++和面向?qū)ο笏枷,本來信心滿滿的面對課程設(shè)計,但動手時才發(fā)現(xiàn)自己還是剛剛?cè)腴T而已,不管是c++的基本語法,還是面向?qū)ο蟮囊恍┧枷,都理解的非常不透徹,造成了程序設(shè)計過程中走了很多彎路,但是完成后發(fā)現(xiàn)這是一個非常好的學(xué)習(xí)經(jīng)歷,一學(xué)期的理論知識的積累加上期末課程設(shè)計的鞏固,使得我們得以窺探到c++的廣袤和面向?qū)ο缶幊痰牟┐缶睢?/p>
最后,雖然程序已經(jīng)完成,符合預(yù)期的要求,但還遠遠不能滿足,我的程序在魯棒性,可擴展性,高效性,豐富性,安全性等五個方面基本上遠遠沒有達到要求,bug會在意想不到的時候突然出來,擴展性不好,不能很快的被人讀懂,性能方面也不夠高效,本來這個題目我們還可以增廣出更多有用的功能,但是由于時間所迫,我們沒有編寫,存在以上種種不足,還需我們繼續(xù)學(xué)習(xí)彌補。
來源:網(wǎng)絡(luò)整理 免責(zé)聲明:本文僅限學(xué)習(xí)分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時刪除。