本科階段,一門計算機相關課結束後,應該留下些什麼?

Coderon發表於2020-07-20

全文2000字,閱讀時間6min

 

1、概述

本科階段,一門計算機相關課結束後,應該留下些什麼?

這個是大二下的課程表,計算機相關的課程有「物件導向技術」(實際上就是MFC),「資料結構」、移動終端軟體開發技術(實際上是Android開發)

下面對其分別簡稱為,MFC資料結構Android,以方便進行接下來的總結和吐槽。

 

這三門課,其實都只是學了點皮毛,原因有很多,其中一個重要的便是持續學習一門課的時間段太短了。大二下一共有9門課,其中馬克思主義、訊號與系統、概率論、英語翻譯等佔據太多時間,而那三門計算機相關的課本身的一個理論框架熟悉需要時間,動手時間也需要時間,並且是需要週期長一點的反覆的時間。

 

 

第一門MFC

 

本科階段,一門計算機相關課結束後,應該留下些什麼?

這是我們的教科書,就是那個傳說中最經典98年的vc6.0的教程。

 

課程設計視訊

   

 

        

 

        

 

 

 

MFC老師他上課時的思緒邏輯總是有點像4g時代拿著3g手機看視訊似的,卡片卡片的,還有一種照本宣科、讀PPT的感覺。我們知道學一些基礎的東西可能有助於打好基礎,但是老師那種只談MFC,其他一點有趣的課外延伸一點都沒有,這有點像一位被老技術捆綁住、停滯不前的老師在坐井觀天地教學生。

 

MFC老師給我留下最深刻的一句話絕對是那句“程式碼我就不寫了,寫程式碼太費時間了,你們自己回去看書,書上都有”。記得有一次,老師有敲過一次程式碼,有錯誤,老師在他那個沒有行數顯示的VC6.0上找了好久,最終發現是函式沒有加括號。我不是想嘲笑老師,這節課我反而覺得很真實,學的東西反而更多。如果每一個老師都說,程式碼書上有,回去自己看書,那哪個老師來當第一個教學生從0敲完整一點的程式,這就有點像,每個數學老師都講理論,卻沒有一個老師能真正帶學生從頭到尾算一道習題。

 

01

那這門課我學到了什麼?

1、首先是瞭解到了MFC的一些歷史

2、如何new一個MFC工程,瞭解一個MFC工程的框架、訊息對映機制,在哪個地方新增程式碼,如何使用控價。但是一些複雜一點的控制元件巢狀關係就不太懂了。

3、其實學習MFC時大部分時間都是在學習一些UI元件的規範,元件的繼承關係。真正涉及到演算法的、資料庫的幾乎是沒有。這也是我所擔心的。

 

02

那這門課過後留下給我們的應該是什麼?

1、MFC的筆記以及學過MFC後可以大膽追求其他技術的自信

或許在最近的一段時間、甚至未來我都不會用到MFC開發,因此那些方法我會忘掉,但是我又不敢保證不會用到。萬一我需要用到,我可以通過筆記以新學時間的1/10,迅速把它撿起來。從新建MFC工程的結構、到訊息對映在哪個地方新增程式碼,再到可使用的各種控制元件,以及控制元件的訊息。不是說一定要學完MFC這種最初的UI程式設計,才可以去學新一點的UI程式設計如QT,但是既然學校安排了,我們也可以接受,因為現在的我不是急需熟練地掌握哪一門程式設計,而是需要不懼怕學習任何一種程式設計的自信心與能力。

 

 

第二門Android

 

這本書基於Android5.0

大概就是以2015年的Android5.0為基礎

涉及到2016年的Android6.0和2017年的Android7.0。

 

課程設計視訊·

https://www.bilibili.com/video/BV1JD4y1D7FQ/

原始碼地址

:https://pan.baidu.com/s/1PF5wfuhHn8Lek5Qxu_STZg 提取碼:8lah 

 

這本書也確實有點舊,沒辦法,因為Android迭代太快了,如今Android11正式版也即將發行。這本是很基礎,但是快速迭代的Android也會因此改進很多,課本的一小部分例子的方法都是Google不推薦的了deprecate。此外,Google也給出了許多新的、書上沒有的元件,就比如我們課程設計用到的Viewpager2。

 

我們Android全程錄播課,但是老師講話生動有趣。他和MFC老師不一樣,他不侷限於應該講的Android介面,帶我們看了更廣闊的世界,但也教我們要把基礎打好,先把方法用起來,把效果實現,再去探討底層細節和其他各種高階的東西。

 

01

那這門課我們學到了什麼?

1、Android studio 入門了

2、瞭解到Android介面開發的一些框架。

如Activity要裝載xml,瞭解到一些控制元件的使用,比如要implements哪個介面,以及其方法。但是這也是我所擔心的,學習Android只是學到了一些基本介面,沒有掌握到一些更底層一點的東西,比如Handle,ContenProvider,網路程式設計等等。

3、有點體會到面向XX程式設計,如面向百度程式設計,面向bing程式設計。

因為在學習Android時喜歡用網上的一些教程,如viewpager2的使用教程,recyclerview的使用教程。認識到網上水文多,但完整的教程也有。

4、當有許多人在討論一門技術時,那種學習氛圍真好。

Android 一直都在更新,有問題就會有新的進展,不像MFC,找個帖子,都是08年的,網上交流的人都很少。

 

02

那這門課過後留下給我們的應該是什麼?

1、Android的筆記以及深知技術無限後積極探索的好奇心

如果不去參加一些專案,或者去實習,大概率我是不常用Android studio,一些必須的方法我會忘掉。但是希望我的Android筆記可以在我需要Android的時候,讓我快速撿起這些記憶。很多技術可以學的東西都太多了,但這次只有Android真正讓我看到,前面就有許許多多的東西可以學,如上面提到的Handle、contentprovider,網路程式設計,這些都是老師快速帶過的。以及一些新的控制元件,都是都沒有教的。我困惑的是本人也沒有找到一個很好地學習方法,繼續深入學習。

 

 

第三門資料結構

本科階段,一門計算機相關課結束後,應該留下些什麼?

 

本科階段,一門計算機相關課結束後,應該留下些什麼? 本科階段,一門計算機相關課結束後,應該留下些什麼? 

我理想中的資料結構課程:比如講到快速排序,先來個理論分析,接著老師solo敲程式碼本科階段,一門計算機相關課結束後,應該留下些什麼?

 

 

實際上的資料結構課程:比如講到快速排序,先來個理論分析,然後下課本科階段,一門計算機相關課結束後,應該留下些什麼? 本科階段,一門計算機相關課結束後,應該留下些什麼? 

 

 

 

01

那這門課我們學到了什麼?

1、簡單可以分為樹、圖、查詢、排序等等的理論

 

 

02

那這門課過後留下給我們的應該是什麼?

1、資料結構應當作為一個開發人員一生的課程。

上理論課,做習題沒錯,但這隻算是離散數學的升級版,並不算真正的資料結構

我們需要上機訓練。並且以後仍然要保持對資料結構的敏感。

 

總結

 

1、既然是學校安排好的課程,可以討論它是否值得學習,但是這要建立在60分萬歲的基礎上,才可以從容地對外人做出課程的評價。

2、做好“規矩按照學校課程,從入門到入土”的思想準備。

3、做好“侷限於學校課程,畢業後程式碼能力為0”的思想準備

4、生態學習依然是我們的指導思想,附上大三上的課表

本科階段,一門計算機相關課結束後,應該留下些什麼?

 

本科階段,一門計算機相關課結束後,應該留下些什麼?

本科階段,一門計算機相關課結束後,應該留下些什麼?

本科階段,一門計算機相關課結束後,應該留下些什麼?

本科階段,一門計算機相關課結束後,應該留下些什麼?

本科階段,一門計算機相關課結束後,應該留下些什麼?

相關文章