ALPHA Camp 程式設計入門 Day 1|30歲up學程式行不行 1
一直以來都很想當一個「會寫程式的人」,覺得程式語言就像學習人類語言一樣,是值得去了解的一門領域。究竟30歲up學程式行不行呢?
以前總會對自己說不知道要用來做什麼而一直沒有付諸行動,幾年前甚至有購買一堂網路課程,第一天打開來按部就班,後續就不了了之😂直到這週突然心血來潮,想說之前在忙的學習專案告一段落,是時候開啟一個新的學習目標。
剛好網路上被推到各種程式學習課程廣告,經過一番評估加上跟友人討論後,決定先從「ALPHA Camp程式入門」這堂課開始!我們就一起來看30歲up學程式到底行不行~
以下是一些學習第一天的心得,內容是一個小白的心得自述,若有任何錯誤歡迎提點指教🙌🙌
程式語言沒想像中那麼可怕!
碰了程式語言後,就有種相見恨晚的感覺!他其實就是一種跟電腦溝通的語言。
在開始之前會想說到底要學哪種語言,毫無概念、又很焦躁,深怕選錯門派,以為自己學的是獨孤九劍,結果學到辟邪劍法?上網看資料又總覺得少了點什麼。實際簡單的碰了 Python 跟 Java Script 後才發現,他們有非常多的相似之處,並不是說學了一種程式語言,之後要再碰其他的會需要很大的門檻。(至少在最基本我碰到的部分,上面兩個提到的語言是相似的
若你跟我一樣很想學,但不知道後續要幹嘛的,可以參考下圖,應該會清楚許多💪
不用怕寫錯,寫就對了
在學寫程式的過程中,我覺得最棒的一點是「你可以一直 test run,不用怕錯誤!」寫完後讓程式 run 一遍,如果有任何錯誤,他都會顯示給你看。不論你看不看得懂,反正就一直找問題、修正問題即可。
以前完全不懂時,光想像中就會很怕打錯任何一個字,深怕打錯電腦會直接爆炸?實際試了以後就發現,手殘不自知是家常便飯,可能單字打錯,可能這邊多一個東西、那邊少個東西。
不論錯幾遍,電腦都會立刻回饋給你,這個感覺真的很棒!
不像以前學習國、英、數等,除了對答案(不能馬上,還要自己翻後面對答案?),還不一定有辦法直接跟你講過程中哪裡錯,只知道答案不對。
更酷的是,不同的人,寫程式的方式就會不太一樣,透過觀摩別人怎麼寫或上網查解法,都能發現有更好的方式,某種程度來說真的滿自由的!
「while 和 for 迴圈」&「擲骰子 10 局積分賽」作業
就第一天來說我覺得最難的是「 while 和 for 迴圈」。畢竟剛碰,知道這兩個方式都可以得到同樣結果,只是寫法、用法上的不同。對他的認知還是很模糊,寫作業時重複看了同一個單元很多次🧐🧐。
在「擲骰子 10 局積分賽」作業中,因為要用到 for 迴圈,就有些地方卡關很久,我重寫了很多次,甚至最後砍掉重寫!下面分享一些重要卡關的部分~
在看到題目的當下,我直覺就是要先把下面第 1 局到第 10 局的文字敘述給弄出來。👇
但在寫的過程中,我把擲骰子的流程寫在 for 迴圈的外面(下圖左邊紅色框),導致最終呈現出來的(下圖右邊紅色框)變成第 1 到 10 局文字都一樣,但我一直不知道錯在哪裡,當下也是卡關很久。
最後想說有可能是因為並非在 for迴圈下執行,所以他可能只執行一次,就嘗試把它放進for迴圈中,最後就成功了!
後面遇到了不知道怎麼讓程式可以記錄雙方各贏多少局,嘗試了不知道幾次,終於找到方法,就是在 if 條件式下加入計次,但不要讓他印出來,就可以順利達成目標(如下圖紅框)。
最後我一直糾結在左邊框中,同一行文字寫了三遍,只有最後面不同。我就一直在想一定有辦法可以縮減他,但又實在是想不到。就上網找了一下資料,又進行了一些嘗試,後來發現可以透過:
1. 在 for 迴圈中,加入一個新的宣告,如 let roundResult = ‘ ‘
2. 這樣在 if 條件式中就可以只呈現尾端不同的結果
3. 最後當確立是哪個條件時,在把當局結果宣告出來
(而且這段原來也是要寫在 for迴圈中,我一開始還有試過寫在外面,然後也行不通,整個炸裂🤣)
不論如何,至少我終於開始學習寫程式了!
現在還在蜜月期,所以還算是滿快樂的,但在 ALPHA Camp的一篇文章「學習教練團隊,如何透過數據優化學生學習成果 ?」有提到,學習語言很快就會碰到混亂跟絕望期。
當我遇到時,希望我能堅強持續地走下去,之後會如何我們拭目以待!
如有任何想法或遇到什麼問題也歡迎在下面留言,若有時間也歡迎幫我拍滿50下或多多分享~
Be-A-Learner 分享所見、所學
成就更好自己,同時帶動他人一同成長