2021年6月14日 星期一

ONLINE PYTHON 與程式自學建議

https://4rdp.blogspot.com/2021/06/online-python.html?m=0

Online Python

這裡推薦一個線上 Python IDE,使用者無須安裝 Python 系統程式,只要將你自己的程式碼放在程式區,然後執行 (Run) 即可。網址在 https://www.online-python.com/

給自學 Python 者建議,分階段循序學習,通常完成一到三階段約需 200 小時:

第一階段 ─ 首先尋找網路免費教材,這裡提供兩個參考 ─ (中文) 程式語言教學誌、(英文) Automate the Boring Stuff with Python,開始學習請依照教材內容範例打程式碼,按圖施工,保證成功。一般學習程式適合的年齡,約在高中一年級之後,從小學階段開始學也不是不可以,只是小朋友不易理解邏輯概念、數學背景與程式思維,就像練武只學到招式,其氣功內力又是另一層次,兩者要相輔相成,許多工程應用程式 (計算座標、角度) 則需要有高中數學基礎才寫得出來。

第二階段 ─ 當程式範例都依據教材演練一次,有基本概念後,應嘗試寫個小題目,如果從網路搜尋不知道要寫甚麼題目,這裡有給 Python 初學者的 11 道練習題

第三階段 ─ 當練習題都可以寫出來後,就應該自己給自己出題,看自己有甚麼需求,可以用程式解決生活、工作或學業上的問題或不便,剛開始專案規模約在 100 行左右,有經驗後擴充到 1000 行程式碼以內,進行每個主題時,就可以整合先前所學的程式知識,此時也可能發現以前所學的內容不足以應付主題設計,這時再上網搜尋解決方案或程式技巧與指令。許多人說不要重複製造輪子,處在程式學習初級階段,反而應該要重複製造輪子,這樣才會深刻了解這些功能如何被設計出來,當你已經熟知原理達到應用階段,就可以不用重複製造輪子,以前個人工作時,遭遇沒有程式庫可用時,我都是自己造輪子解決問題的。這裡有一個自學 JavaScript 設計英文聽寫網頁的例子。

第四階段 ─ 當你學會 Python 之後,如有特殊需求可以再學習其他程式語言,通常各程式語言萬變不離其宗,可以先回想 Python 指令為何,再透過網路搜尋新語言相對應的指令,這樣就可以舉一反三,新程式語言迅速上手。

程式自學,個人建議先學 Python,學習直譯型程式語言比較容易訓練程式思維,除非你已確立未來要當個專業程式設計師,再來碰 C/C++,否則你會不知道除了考 APCS 外,C/C++ 還可以寫甚麼應用程式?C/C++ 對初學者很容易從入門到放棄,其實它非常適合寫作業系統或低階硬體控制,也可以搭配 Arduino 學習。此外,若了解程式設計領域,學習程式課程時,則因應不同的領域挑選適合的程式語言,才不會有穿了不合腳的鞋,走不了遠路的感覺,另外不同職場,也需搭配不同專業知識,以前曾淘汰不少資工求職者,因為缺乏電子電路相關知識。

最後這個網站,個人是蠻推薦,因為使用簡單,不用安裝與設定,只要能上網就可以用,想跟朋友討論與分享程式碼超方便,Python 有直譯功能,依教材打字時,可以點選左下方 >_ 圖塊啟動 Terminal 使用。可惜這網站沒有提供 breakpoint 除錯功能 (如果需要 breakpoint 可試 https://www.onlinegdb.com/online_python_compiler),另外少數與本機硬體相關模組 (如 serial, pyvisa),它也不支援,雖然如此,對初學者絕對夠用。

延伸閱讀
2016 準備夯桌遊  (給想讓小學生提早學文字型程式語言的家長參考)
200 小時的衝擊  (交大資工的程式自學訓練)

3 則留言:

  1. 非常感謝您的部落格,受益良多,
    讓我在32歲要轉職的人參考
    感謝您持續更新,我也很喜歡有趣的邏輯數學遊戲

    回覆刪除
  2. 施先生,
    歡迎您留言,從十幾年前開始寫部落格開始,就定期貼文,以個人有研究或興趣為主,理工類的文章通常不討喜,因此偏重短文與單純議題,讀者比較容易閱讀。
    從你喜歡邏輯數學遊戲的留言,雖然32歲開始轉職,我想你應該可以在程式設計領域生存很久,我寫程式已35年,先進科技我不一定懂,但是如何繼續存活,我會竭盡所知在此傳授,歡迎你提問討論。
    推薦你先參考我的電腦程式語言學習歷程 (上),從我的人生故事,尋找出你未來職涯方向,先預祝你轉職成功。

    回覆刪除