今天(2019/7/7)開始教老婆寫程式。
起因是朋友(前同事)傳了一篇程式課程說明給我看,然後晚上和我老婆去外面吃飯的時候,就問她說有沒有興趣學程式。其實我以前就有問過她了,但當時看她沒什麼興趣,大概是覺得太難,而且寫程式就要有興趣,所以我就沒繼續下去。
雖然這次我老婆默不吭聲,但我想她有意願,畢竟我有跟她分析職場面臨的變化,加上她現有的Domain我認為很有優勢,但她清楚我的個性,教別人的時候很容易不耐煩會生氣,所以這回我跟她再三保證,會用更慢更有耐心的態度去教她,看出她沒什麼抗拒我就繼續順手推舟了。
我就邊吃晚餐向她簡單介紹,從App的角度去說明目前前端(Front-end)後端(Back-end)還有全端(Full-stack)等在工作上的差別。我問她說對前端比較有興趣還是後端,她說她覺得前端應該比較有趣(就畫面會飛來飛去比較炫砲,這句話我是引述某前同事Scala愛好者說的)。
然後我們就一邊買水果,一邊跟她介紹前端的三大基本要素HTML,CSS,JavaScript是什麼。
提外話,一小盒榴槤就要270元;而一串香蕉,四分之一顆長西瓜,三個芭樂才149元,差真多,但我老婆和我媽很愛吃這臭得要死的東西。
我在做任何說明的時候,都會先說中文專有名詞,然後補充英文專有名詞,日後漸漸都會用英文名詞,畢竟寫程式英文是很重要地。
回到家中,繼續說這三個東西在前端網頁中扮演了什麼角色。
然後稍為說明一下什麼是HTML,就是網頁的底;什麼是CSS,就是網頁的顏色,排版;什麼是JavaScript,就是用來操作上面那兩個東西讓他們有動態效果。
接著打開Chrome瀏覽器,按F12(或Ctrl + Shift + I)開啟開發人員工具,切換到Console工具,然後演示了使用console.log()
在終端機印出文字及alert()
來在彈出示窗顯示文字。
我老婆的第一隻程式是alert("豬阿")
。
然後簡單介紹一下變數(Variable),函式(Function),如何用JavaScript的function
關鍵字自訂函式,為什麼要使用函式,封裝(Encapsulation)隱藏實作的概念。
說明一下程式命名慣例(naming convention),變數要用名詞(noun),例如電話號碼phoneNumber
;函式要用動詞(verb),例如hello()
,moveUp()
;駝峰式命名法(camel case),例如showMeTheMoney()
,theOrderCustomerCanceled
。錯誤的命名造成的可怕結果等。
我希望最終能讓她完成一個簡單的作品,留言板之類的,然後我也可以藉此練習前端的一些東西,最好就可以幫她找到寫程式的工作。
沒有留言:
張貼留言