想自學硬體的軟體工程專業學生
【來信】
不知道老師是否還記得我,剛上大二那時,我因為感到前途迷茫而給您寫過兩封信。經過大二一年的學習,我找到了方向和自信。由當初的迷茫變成了當前的少許疑惑,因此再次寫下了這封信。
我是某大學軟體外包專業的學生,今年開學上大三了。剛上大二時,我並不瞭解本專業的培養計劃,現在我已經完全知曉我們大學四年來安排下的所有課程以及教學方案。大概的說,我們專業偏重於開設開發類課程,從大一大二的sql,javaSE基礎,以及Android 開發,再到HTML+CSS+JS&Dom+JQuery 前端開發,還有大三即將要學的javaEE 包括 servlet jsp 和ssh框架。總體來說,是一個側重於java方向的培養方案。(當然還有軟體工程)而專業基礎課開設的極少,相對於一本專業,我們取消了數電,計算機組成,體系結構等一系列硬體課程。基礎課只開設: 資料結構 作業系統 計算機網路 離散數學。確切一點就只有這四門。其實就算是這幾門課,我也覺得只學到了些皮毛。令我最不滿的是,學校取消了包括作業系統實驗課在內的很多實驗課程。這種純理論應試化的學習,我仍然認為很沒有意義可言,大多學生唯一的學習來源就是考前的那一張考綱和重點。
剛上大二時,我確信自己找到了一些方向。不僅專業課學的很認真,其他基礎類課程也要求上進。相比於我的其他同學,我在學習理工科方面的邏輯思維漸漸展現出了優勢,對於大多數同學都很頭疼的工程數學如線代、概率論之類的課程,我甚至具備了考到滿分的能力。我逐步發現自己是一個邏輯思維和數學思維都比較強的學生,對我來說學習某樣東西很少存在學不會的問題,阻礙大多來自堅持與否,以及教學資源是否限制。
和許多同學一樣,我也十分注重專業的開發類課程。老師說過的學習到實踐,然後再學習再實踐的過程我一直牢記在心。大二這一年總體來說,我付出的學習時間並不少。程式設計能力有了不小的提高,並且打下了比較牢固的java基礎,(具體是從面向物件 IO 多執行緒 Swing 一直到 網路、反射機制等)再學習完HTML等前端知識之後,這個假期我也開始提前學習javaEE的相關技術並且每天保證3個小時的程式碼量,為日後的學習做準備。雖然只接觸了為數不多的專案,但我知道開發經驗並不是一蹴而就的,我對學技術始終保持著很耐心的態度。於是成為一個軟體架構師就成了我這一生最大的目標,儘管這個目標對我目前來說是一件遙不可及的事情,但我發誓我會用終身學習和長時間的努力來爭取這一切。(最好是向我的班主任那樣,先專攻Web方向,到後面再轉到大資料方向上來)
那天我在聽麻省理工大學的網上計算機公開課時,我發現對許多計算機硬體底層的原理都不清楚,甚至可以說是聞所未聞。經過網上查詢,我漸漸瞭解到,原來想要在軟體方向上走的更遠,硬體知識是必備的。於是我想到了一條新的學習路線,想要從基礎學起,重新系統化的學習硬體知識,與我正在學習的課程同時進行。而由於學校開設的課程限制,我並沒有機會走進學校的硬體實驗室,而我認為學習硬體原理,仍然要以實踐為基礎,這無疑給我在學習過程中造成了障礙。我想問一下老師:
我聽說,一個優秀的軟體高手一定需要掌握底層的知識,從而更加清楚地瞭解作業系統,這樣才能做好軟體工作。這樣的說法是否有道理?一個優秀的軟體工程師所掌握的知識到底要對底層或者說其他基礎知識有怎樣深度的瞭解?如果我現在學習硬體或底層知識,老師想推薦哪幾門課程?或者是一個正確的先後順序?最重要的是學習這些課程,總體需要用怎樣的方法去學習?
我認為我的能力完全可以駕馭更多的課程知識,其實這一年來我最大的變化主要是以理想信念為主的學習動力轉變為了以興趣為主的學習動力。下半年我打算火力全開,重點加強專業和英語的學習力度。等到過了年底,再將我的主戰場轉到考研任務上來。很希望老師對我的現狀再理順一下學習方向,對此我感激不盡,謝謝!
【回信】
很欣慰你的進步!大學階段的自主把握很關鍵,大學就是給願改變,能自主的人準備的。
對於你們專業取消硬體基礎類的課程,我知道學校背後的隱情,不多說接受吧。而作為你,還想再多瞭解一些,仍然還是可以藉助於自主安排,其實,這更是學習中的常態,是個性化的體現。
近幾年來,有一種觀點是,計算機類專業的學生,應該能夠從整個系統的角度看待計算機,而不是將其割裂開來看待,清晰地分開來學習。所以,既然你有心,適當雲探一探,好事一件。
具體的學習資源,可以到網易雲課堂的“計算機專業課程體系”中看一看,那兒有一門計算機組成原理課可以參考。另外,要看書,可以選經典的《深入理解計算機系統》。你的目標是軟體架構師,從軟體開發者的角度理解系統,不見得一定要從很底層的電路實驗做起,我們的學習也要講究成本,相關的實驗,可以採用軟體形態的方式進行,在程式設計中,能夠體現針對硬體特點做同的安排,使計算機能夠“很舒服”地執行,或者在有些地方,想當然對的,或者有潛在危險的,由於對底層原理的熟悉,一眼就能看出,或對你不成問題。完全可以用程式設計的實驗,體現對底層原理的“做中學”。
我沒有在計算機系統方面做過工作,這點意見僅供參考。你可以再通過其他途徑,瞭解一些硬體類知識的自學途徑。
相信你可以做得更好!
相關推薦
想自學硬體的軟體工程專業學生
【來信】 不知道老師是否還記得我,剛上大二那時,我因為感到前途迷茫而給您寫過兩封信。經過大二一年的學習,我找到了方向和自信。由當初的迷茫變成了當前的少許疑惑,因此再次寫下了這封信。 我是某大學軟體外包專業的學生,今年開學上大三了。剛上大二時,我並不瞭
答大二軟體工程專業學生——重點學什麼
【留言】 賀老師你好,我是軟體工程專業的大二學生,我們學校這個學期的專業學習不是很多,已經學完了。參考學校的培養計劃,下個學期開始,差不多都是專業課的學習。資料庫原理,演算法設計,計算機組成原理,作業系統,計算機網路等,還有類似於軟體過程管理,軟體
一名大四的學生 軟體工程專業 記錄敲程式碼的everytime
歡迎使用Markdown編輯器寫部落格 本Markdown編輯器使用StackEdit修改而來,用它寫部落格,將會帶來全新的體驗哦: Markdown和擴充套件Markdown簡潔的語法 程式碼塊高亮 圖片連結和圖片上傳 LaTex數學公式 UML序列圖和
軟體工程專業2
軟體工程=最佳實踐 軟體系統的複雜性、動態性使得: – 高深的軟體理論在軟體開發中變得無用武之地; – 即使應用理論方法來解決,得到的結果也往往難以與現實保持一致; 因此,軟體工程被看作一種實踐的藝術: – 做過越多的軟體專案,犯的錯誤就越少,積累的經驗越多,隨後作專案的成功率就越高; – 對新手
有關軟體工程專業的論述
1現代軟體工程方法的內涵與特徵 現代軟體工程方法大致可以分為分析、設計、編碼、測試與維護這五大階段,其雖然取代了傳統的軟體工程方法,但是兩者之間還是存在著很多的相似之處。比如,在分析階段中,現實生活中存在的事件是現代軟體工程方法面對的物件,也就是說其面對物件並不是虛擬性的,因此也就表明其物件的性質與特徵能夠
對軟體工程專業的認識——JavaScript
大一到大三,專業課程上面聽得最多的還是JavaScript,所以我就說說我對JavaScript的認識吧。 1、JavaScript一種直譯式指令碼語言,是一種動態型別、弱型別、基於原型的語言,內建支援型別。它的直譯器被稱為JavaScript引擎,為瀏覽器的一部分,廣泛用於客戶端的指令
對軟體工程專業的認識(1)
剛入大學,並不知道“軟體工程”專業是做什麼的,百度了一下也沒看太懂就先簡單理解為開發軟體的吧。那會學校掛著大大的橫幅每個橫幅上面幾乎都有“碼”這個字,不知道到底啥意思。後來接觸的C語言原來就是打程式碼啊。 當我打出第一行程式碼“Hello world!”,妥了,我覺得我對我學的這個專業很
2017級軟體工程專業《資料結構與演算法A》實驗2:棧的應用
題目: Description 根據棧的特點,實現十進位制到其他進位制之間的轉換,具體要求如下: (1)利用棧進行十進位制數與N進位制(如二進位制、八進位制、十六進位制)資料之間的轉換; (2)通過順序棧記錄進位制轉換的中間結果,該順序棧有一個指示棧頂的變數top,
軟體工程專業知識體系[求職/就業]
一 軟體工程專業知識體系 終究是要畢業走人了,簡單回顧一下這三年半專業教育,都學了些什麼。 二 專業素養/開發能力 自己專業能力上又會些什麼。總體特點:開發能力全而廣,但深度不夠。 三 Java後端知識體系 Java後端面試經驗合集
我為什麼要轉到軟體工程專業
作為一個轉專業的降級生,從計劃轉專業到現在,總是會聽到有人問,“為什麼想要轉專業啊”。而我每每只能尷尬一笑,然後搪塞過去——不是別的,只是覺得考慮實在太多了,很難一言以蔽之。所以在這個人技術部落格的第一篇,我想我有必要再好好梳理下我想要轉專業的理由,作為今後走在
對軟體工程專業的認識
昨天聽了李老師的計算機軟體工程專業的專業介紹,對軟體工程專業的學習內容有了進一步的瞭解。 我國是一個計算機行業的年輕國。尤其是軟體行業的發展更是比西方發達國家晚了很多。雖然近幾年來我國在計算機軟體行業有了突飛猛進的發展,但是我國的技術水平距西方發達國家還有很大的差距。 隨著社會的發展,科技的進步。以IT
彷徨 | 寫給即將步入大學生活的你,側重於軟體工程專業(計算機)的學弟學妹
目錄 學生會: 社團 大學的重中之重:仍然是學習!!!仍然是學習!!!仍然是學習!!! 經常會有高中老師,甚至初中老師和學生說再好好學幾年,等到上了大學就輕鬆了,有的老師甚至會說不用學習了。好多年過來以後,有的老師不說了,也會給學生們一種誤導,因為
軟體工程專業畢業菜鳥記
對於剛開始工作的菜鳥而言,必然遇到各種各樣的坑,各種各樣的冒冒失失,不知不覺就被領導記到小本本了...... 很不幸,我便是茫茫水軍中的一員........ 被總監和經
軟體工程的專業介紹與前景
軟體工程專業是一個比較熱門的專業,很多學生選擇報考。軟體工程專業涉及到的領域有:資料庫、軟體開發工具、設計模式、系統平臺、程式設計語言等,需要學習很多關於軟體方面的知識,需要熟練掌握專業知識,運用專業知識來解決實際生活中的問題。 軟體工程專業意指在於培養學生們能夠在計算機應用學科上有所發展,熟練掌握基本的計
物聯網工程學院學生科協 ——2018年軟體第一次培訓總結
第一次培訓的內容是C語言基礎,按照“C語言引述”——“C語言基礎知識及語法講解” ——“國慶大禮包講解”的順序展開。同時本次培訓“安裝IDE & 配置環境(CodeBlocks)”的工作已經於培訓前全部完成。下面按照培訓順序進行總結和擴充
現代軟體工程 學生閱讀和調查作業
大學生都是讀書人, 要多讀書,多向前人學習, 多思考。下面的讀書和調查作業必須在截止日期前發表在個人部落格上 (也可以轉發到團隊部落格)。 部落格1: 閱讀下列部落格/文章/教材, 全部讀完之後, 寫一篇部落格。列舉你對這些材料中觀點的疑問(指出不懂的地方, 指出有錯的地
大學的計算機專業學生怎麽學習
數字 發展 最想 方法 行業 rac 整體 總結 心得 如今到大學基本上都是上了十幾年學,不說是學習老手,也是應試老手了,可是大學越上越不會考試了,更不會學習了,面對計算機專業這個對專業要求非常高的專業,得想想怎麽學習,怎麽面對高速發展的技術。非常多人說講究
計算機專業學生在畢業之前應該做的10000件事 ...
成了 路由 解決 開放 map 意見 應該 gae 雲服務器 今天看了一篇,覺得很有感觸,有必要記錄一下(以下內容。。。) 現在正是畢業時節。我想有必要匯總一下計算機專業的學生在獲得學位之前應該(單獨)完成的10000件事情。碰巧的話,學生們在過去學過的課程中完成
對於軟件工程專業的思考
但是 實驗 不清楚 獎學金 立足 熬夜 小夥伴 問題 積累 (1)回想一下你對計算機/軟件工程專業的暢想 考研時你是如何做出選擇計算機/軟件工程專業的決定的? 我本科就讀的專業是電子信息工程,在本科的學習中接觸到了C語言程序設計以及數據結構和算法。感覺自己相比與模擬,數字
現代軟體工程第二週作業——黃金點遊戲
(本博文為現代軟體工程第二週作業——黃金點遊戲結對程式設計總結,本專案的Github原始碼在這裡) 黃金點遊戲介紹 假設有M個人參與黃金點遊戲,每輪遊戲每個人提兩個(0, 100)間的有理數,共2M個數,求這2M個數的平均數再將這個平均數乘以0.618得到這一輪的黃金點,提出離黃金點最近的數的人得2M分(