程式本科系學了什麼(三) - 物件導向等基本功

閱讀時間約 3 分鐘
如果還沒看前一篇的人,可以按下面連結去看上一篇文章
上一集有說,我們以前在學校要教很多作業,扣除那一些夭壽難的題目,其實大多數都是在練基本功
而外面許多書籍、課程和公司內的學習,則是強調實用和解決問題的方法
例如如何寫一個爬蟲程式、如何寫一個影像處理的程式、如何做使用者界面
但是在學校,我們則是花很多時間在練基本功,例如物件導向、傳值和傳址、變數和函式、程式如何在電腦上運行和效能以及各種演算法
演算法我會在下一集的時候在深入討論,這裡先說除了演算法以外的基本功
其實練這一些基本功非常的無聊、毫無成就,而且對一個剛入門的學生而言其實也不知道這一些東西未來要用在哪裡
我永遠記得我大一結束的時候,那時候會了這一些基本功,感覺自己很強,但是回家之後高中的朋友問我能不能寫個UI或是一些專案等,但是我都不會。那時候在想,人家都說讀成大電機很厲害,但是為什麼我什麼都做不到,是不是我太笨或是哪裡出了問題?
反觀從實用和解決問題來學習程式非常的有成就感,例如我的學生從0到有學了幾10小時的python爬蟲,回家之後就可以簡單的爬股票資訊、爬104的資料,真的可惜當初在讀大學時沒有知道有這樣的資源和管道,否則就算是本科系學生應該也去學一下,才會知道學了半天的程式可以用在什麼地方
然而看過許多自學程式的人,我還是建議自學者要花一點時間增加自己的基本功,因為程式的基本功如果不好會導致以下三個問題
未來會無法看懂別人的程式碼
在查資料時受到許多的限制
公司面試有極高的機率會考程式的基本功
其實這道理很簡單,舉程式的物件導向的例子來說
假設不會物件導向,之後前輩用物件導向寫了一連串的程式碼,不要說了解這一個程式運作的順序和意義,光是要看那一些符號就像是在看無字天書
在查資料的時候也會同樣的問題,例如好不容易找到相對應的解法,結果人家是用物件導向來寫,要理解和修改成跟現在程式相容,根本是不可能
最後就是公司的面試也會考這一些基本功的題目,考得好不好也會影響能不能錄取和薪水
我在第一份工作錄取的時候,預期薪水直接寫了超過人資明示暗示的薪資(當初是抱著反正不會上就算了的心態寫的),但是他們還是給我想要的薪資,過了幾年,有一天問我的老闆當初為什麼可以這樣做,他只說:你知道嘛?當初那一份超級難的程式題目你拿滿分喔
既然程式的基本功這麼重要,但是為什麼外面的課程不會太著墨於這裡?
身為講師,關於教學生程式的基本功其實對我來說也很兩難,因為我知道程式基本功的重要性,但是這裡又不是學校,可以每週花3小時和每週給作業強迫讓學生去練習基本功,而且程式基本功有一些非常難理解,更慘的是學完之後毫無成就感,最差還有可能會投訴教太難聽不懂,實在是風險極高的課程
但是我還是會盡量教這一些基本功,就算只是在課堂稍微提到也好,畢竟對學生來說這一些未來有可能會碰到,多學一點還是比較好
對自學者來說,程式的基本功是一件無聊,卻也是一件很重要的事
因為
學程式就像練武功,要成為高手,馬步就要蹲好
接下來,我們就來談基本功裡面的其中一環-演算法,敬請期待
本文章同步分享於FB粉專 如峰小教室
歡迎大家一起來到FB追蹤按讚,獲得更多及時的資訊
3會員
6Content count
作品和產品的區別,不只有程式工程師,PM和老闆更必須要知道,才能讓公司的運轉更加地順利。我們以前在學校寫的作業和練習,就是程式作品,如果用一個術語就是,程式作品是比最小可行性的產品還要再小,那產品比作品還要多注意甚麼東西呢? 讓我們在這一個專欄中一起來探討吧!
留言0
查看全部
發表第一個留言支持創作者!
如峰小教室的沙龍 的其他內容
身為電機系畢業的學生,我們以前在學校最常見的就是被迫去寫很多程式 作業從的難易很廣,最簡單的hello world到很複雜的模擬電腦運作的程式都有可能是老師出的作業
最近發現,很多人對於程式本科生有著莫名的幻想 例如電機系和資工系出來寫的程式一定比較好 或是非本科生就會有莫名的自卑感
身為電機系畢業的學生,我們以前在學校最常見的就是被迫去寫很多程式 作業從的難易很廣,最簡單的hello world到很複雜的模擬電腦運作的程式都有可能是老師出的作業
最近發現,很多人對於程式本科生有著莫名的幻想 例如電機系和資工系出來寫的程式一定比較好 或是非本科生就會有莫名的自卑感
你可能也想看
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
2024.06.13 台中市政府 「幸福宜居城市美學是一個持續進行的過程!」台中市長盧秀燕上任後積極推動「台中美樂地計畫(Taichung Melody)」,持續結合時代脈動趨勢和市民需求,為城市美學注入新元素。位於南屯區的豐富公園,因早期設計的入口牌樓老舊,已不符現代潮流,市府建設局將於6月中以
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
你是否曾經遇過公司內部繁瑣的流程,需要填寫各種複雜的表單?或者是公司的資料雜亂的儲存在 Excel,主管希望能夠用更聰明的方法管理訂單或庫存?這時候,你可能會想:「如果有人幫我們開發公司系統,就能解決這些問題了」。然而,可能是公司沒有IT 部門又或是受限於預算,這些願望總是無法實現。
Thumbnail
恭喜你!如果你正在考慮成為一名初階軟體工程師,那麼你即將踏上一條充滿挑戰與機遇的黃金大道。這條路上既有高山峻嶺,也有美麗風光。作為初階軟體工程師,你將體驗到程式設計的奇妙世界,並學會如何在其中找到自己的立足之地。這篇文章將為你揭開這個職業的神秘面紗,帶你了解其中的酸甜苦辣
Thumbnail
在這篇文章中,作者分享了關於成長於新北市三重區的感想和省思。透過描述城市特質與其發展過程,反映作者對城市變遷和個人成長的洞察。文章中包含了關於社區、地方特色以及對不同城市觀察的獨到見解。作者通過對城市生活的描寫,表達了對不同地方和文化的好奇心和思考。
Thumbnail
在城市裡,每個人都在忙著各自的生活。沒有人有時間停下來,看看你怎麼了,問問你過得好嗎?你彷彿在一座荒島上,與這個世界沒有任何連結。這時候,你很需要療癒系的荒島歌單,為你推薦以下三首我喜歡的歌: Head In The Clouds 明天,你好 落在生命裡的光
Thumbnail
作為一個研究科技法律的律師,學習程式設計一直是想要嘗試去做的事情。每當接觸著隱私、人工智慧(AI)、元宇宙(Metaverse)或區塊鏈(blockchain)等資訊時,卻始終感覺除了表面上看到的東西之外,似乎還應探索在螢幕之後的世界。因此,便開始學習程式設計的旅程。
Thumbnail
在初學程式的時候,我曾經看室友開發專案到一半時,突然坐在那發呆,於是我好奇一問,室友說:「我在等程式編譯完成啊。」 還記得當初還是程式小菜雞的我,懞懂無知的說:「編譯?哈哈哈,我們 JavaScript 都不需要編譯耶,可以直接跑在瀏覽器上。」 室友一臉莫名其妙地回我:「噢,是嗎⋯⋯」
Thumbnail
這也就造就出「鈴木信仰」或「鈴菌散播」這衍伸詞彙。其實並不是真的鈴木有靈性啦XD,不過是一種出自喜歡而加注於其身的精神與使命感。
Thumbnail
物件導向的概念,以python程式為範例。
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
2024.06.13 台中市政府 「幸福宜居城市美學是一個持續進行的過程!」台中市長盧秀燕上任後積極推動「台中美樂地計畫(Taichung Melody)」,持續結合時代脈動趨勢和市民需求,為城市美學注入新元素。位於南屯區的豐富公園,因早期設計的入口牌樓老舊,已不符現代潮流,市府建設局將於6月中以
在一次五天的年假中,我決定開始學習Python編程。雖然最初進展順利,但後來發現自己在解題和邏輯方面遇到了困難。經過思考後,我決定轉而學習C/C++,並且制定了一個計畫,希望成為一名後端工程師。這將需要挑戰我的時間管理能力。
Thumbnail
你是否曾經遇過公司內部繁瑣的流程,需要填寫各種複雜的表單?或者是公司的資料雜亂的儲存在 Excel,主管希望能夠用更聰明的方法管理訂單或庫存?這時候,你可能會想:「如果有人幫我們開發公司系統,就能解決這些問題了」。然而,可能是公司沒有IT 部門又或是受限於預算,這些願望總是無法實現。
Thumbnail
恭喜你!如果你正在考慮成為一名初階軟體工程師,那麼你即將踏上一條充滿挑戰與機遇的黃金大道。這條路上既有高山峻嶺,也有美麗風光。作為初階軟體工程師,你將體驗到程式設計的奇妙世界,並學會如何在其中找到自己的立足之地。這篇文章將為你揭開這個職業的神秘面紗,帶你了解其中的酸甜苦辣
Thumbnail
在這篇文章中,作者分享了關於成長於新北市三重區的感想和省思。透過描述城市特質與其發展過程,反映作者對城市變遷和個人成長的洞察。文章中包含了關於社區、地方特色以及對不同城市觀察的獨到見解。作者通過對城市生活的描寫,表達了對不同地方和文化的好奇心和思考。
Thumbnail
在城市裡,每個人都在忙著各自的生活。沒有人有時間停下來,看看你怎麼了,問問你過得好嗎?你彷彿在一座荒島上,與這個世界沒有任何連結。這時候,你很需要療癒系的荒島歌單,為你推薦以下三首我喜歡的歌: Head In The Clouds 明天,你好 落在生命裡的光
Thumbnail
作為一個研究科技法律的律師,學習程式設計一直是想要嘗試去做的事情。每當接觸著隱私、人工智慧(AI)、元宇宙(Metaverse)或區塊鏈(blockchain)等資訊時,卻始終感覺除了表面上看到的東西之外,似乎還應探索在螢幕之後的世界。因此,便開始學習程式設計的旅程。
Thumbnail
在初學程式的時候,我曾經看室友開發專案到一半時,突然坐在那發呆,於是我好奇一問,室友說:「我在等程式編譯完成啊。」 還記得當初還是程式小菜雞的我,懞懂無知的說:「編譯?哈哈哈,我們 JavaScript 都不需要編譯耶,可以直接跑在瀏覽器上。」 室友一臉莫名其妙地回我:「噢,是嗎⋯⋯」
Thumbnail
這也就造就出「鈴木信仰」或「鈴菌散播」這衍伸詞彙。其實並不是真的鈴木有靈性啦XD,不過是一種出自喜歡而加注於其身的精神與使命感。
Thumbnail
物件導向的概念,以python程式為範例。