等了許久,終於到AlphaCamp開課的日期了,迫不及待打開課程之後,開始程式語言學習,
我本身是半導體工程師,平常是利用下班時間學習,在這個禮拜,我每天晚上都會擠出一些時間給AlphaCamp學習程式語言,
之後我每週會更新一篇程式語言學習文章,記錄我的學習情況,也給各位想學習的朋友做個參考。
這篇文章記錄了我為甚麼選擇AlphaCamp
內容目錄
AlphaCamp每週上課內容?
AlphaCamp上課方式是週進度制,每周都會開放固定的章節出來,並且每周都會有一些作業以及挑戰,
上課內容主要包含以下三大重點:
- 影片加上文字的程式語言教學 : 影片和文字搭配,晚整的告訴你程式語言的精隨
- 助教批改作業以及挑戰 : 每周都會有固定的作業繳交,並且會有助教批改,告訴你問題餅且指導你進步
- 線上工作坊 : 每週一次的線上直播教學,無法參加也沒關係,事後會有精華影片留存
對於程式語言的新手來說,這種循序漸進的教學,以及完整的教材讓我非常滿意
AlphaCamp第一周課程內容
第一周介紹了許多程式語言的基礎知識,像是語法說明、環境設定…等等,
現在我大約重點介紹一下第一週的課程內容:
電腦與程式語言:
什麼是程式?什麼是電腦?
課程中清楚地介紹了程式和電腦的關係,簡單來說人類和電腦互相溝通的語言,就稱為程式語言 ,
人類在日復一日的工作中,常常有重複性的行為,因此,透過各項電子元件,發明了電腦,可以幫助處理重複性的工作。
而電腦則是透過程式碼的指令,經由「輸入(input)→儲存(storage)/處理(processing)→輸出(output)」的流程,完成人類需要的結果。
基礎語法介紹
在這裡會介紹許多程式碼的語法,例如說變數、資料型別…等等,我們透過程式語言,來讓電腦操作資料的過程中,
操作資料前,你會需要先找到一個地方放置這些資料,變數就是這樣的存在。
而資料又有許多種的資料型別,例如說:字串、數字、布林值…等等
通過這些基本介紹,我們就可以通過這些知識寫出一些簡單的程式語言,
而這個單元的最後也有一些小練習,是練習變數的用法。
助教出了一個題目,希望我們可以通過給予一些變數,而輸出我們想要看到的結果
題目是通過告訴果們要買的水果數量,寫出一個程式語言,來計算我們總共需要花多少錢
下圖是我程式運算出來的結果:
控制程式的流程
這個單元開始教我們處理一些程式的分歧情形,很多時候我們都會遇到需要選擇的時候,而電腦也是一樣,
例如說,我們出門的時候看到便當店想買一個便當,而我們就必須看錢夠不夠,所以會出現兩種情形
1.錢包的錢夠買便當 : 買便當喽!!!!!
2.錢包的錢不夠買 : 沒錢,無奈離開
這時候程式也是一樣,我們可以透過布林值告訴程式如果遇到分歧的情況如何處理,最終得到你想要的結果,
課程到這裡也有一個小作業,可以寫出一個程式,只要輸入每個商品價錢、數量,再輸入預算,程式就會告訴你錢夠不夠
課程之後還有作業教你寫一個擲骰子的程式,內容是設計一個程式讓兩個人互相擲骰子比大小,
比十局之後再根據勝利次數決定最終勝利者,下面是我程式寫出來之後的執行結果
為程式除錯
每一個人(包括資深軟體工程師)都有可能寫錯程式,因此,為程式除錯就是非常重要的一件事情,
因此,課程裡面也要教你如何在你程式出錯的時候教你如何解決錯誤。
建立運算思維
這裡說的運算思維,是希望把我們的思考,拆解成步驟化的流程,也就是說,
我們做的一些判斷,常常是根據許多現實情況所決定,例如:
出外時看到陰天,然後再看看降雨機率發現不低,所以我們決定帶傘
這句話我們就可以通過運算思維去拆解,拆成許多小步驟
1.出外時有無太陽:
有太陽 : 直接出門
沒太陽 : 看看降雨機率
2.看看有沒有下雨
有下雨 : 帶傘
沒下雨 : 看降雨機率
3.看了降雨機率 :
機率大於60% : 帶傘
機率小於60% : 直接出門
透過這個思考邏輯,更可以幫助我們撰寫程式語言,把所有問題做有效的拆解,並且列出所有可能情況,再讓電腦執行程序,達成目的
問問題的重要性以及方法
最後,我們知道學習很常會遇到問題,而AlphaCamp裡面有非常多同學跟助教可以幫助你解答問題
但是,我們也要學習如何問問題,一般來說,問問題必須要經過以下思考之後,再去詢問
- 確認是否是自己粗心 : 很多時候,我們遇到程式出錯,單純只是因為某個地方打錯1個字,因此,一開始要先確認自己的程式哪裡錯誤
- 拆解問題起因 : 遇到問題之後,要重新思考一次自己的思考邏輯,並且拆解自己遇到的問題,去了解自己為甚麼會出問題
- 查詢相關資料 : 之後要上網查詢是否有人遇過同樣的問題,看看有沒有解決辦法
以上步驟做到之後,再去找尋同學或助教,將自己的思考邏輯跟問題詳細的敘述之後,再去詢問如何解決
問問題不只可以增加你的細心程度,更可以增加你對問題的理解還有查詢資料的能力,
這些對於軟體工程師來說都是必要的技能,因此非常的重要。
總結
這一週的課程,真的讓我學到非常多的東西,很多邏輯思維的地方我認為就算沒有當上軟體工程師,
對我之後的發展都是非常有幫助的,而且這一周也讓我認為寫程式非常有趣,讓我了解更多東西
之後我依然會持續更新自己學習程式語言的心得感想,同時也是做個筆記,
若是對程式語言有興趣的人,我非常推薦進AlphaCamp學習!!!!
前一篇程式語言相關文章:AlphaCamp課程介紹!!我為什麼選擇這堂程式語言的課程?