四年級的小朋友,很喜歡玩手機遊戲,想學編程,如何教?

情況是這樣的,我有個老弟,今年11歲,在上小學四年級。這貨上學除了數學其他的課程基本上都只是及格,但是他的邏輯思維以及在玩遊戲的時候讓我感覺到他是個很不錯的程序猿苗子。他會經常拿著手機去App store到上面去找一些比較有意思的遊戲,下載來自己玩,然後不好玩就卸掉。還別說,他對遊戲的理解,感覺還不錯。然後昨天晚上我就問他,我說看你小子上學不務正業,要不老哥教你編程吧。我問他,這麼喜歡玩遊戲想不想自己,用電腦寫幾款自己的遊戲,然後就給他的那些小夥伴去玩呢!他表示很有興趣,然後我就在想,今年過年回去給他帶的新年禮物就是找本編程的書籍,各位對於小朋友學編程,或者說有一些什麼比較簡單的書籍推薦嗎?本人是從事JavaEE開發的,我想如果說他要做安卓開發的話那必須要學java基礎,看著我書桌上的以前學習過的java編程思想我覺得拿過去他肯定看不懂。問題就是,小朋友學編程有啥好的建議嗎?謝謝大家。


Scratch - Imagine, Program, Share


玩手機遊戲和學編程有直接關係嗎?

小時候不好好引導,都四年級了,才開始對編程感興趣,唉。想當年我……(閉嘴!)

算了,反正還是很感激給了那麼多信息。我們先說說前幾個回答:

@劉子豪 說的:

小學的數學感覺也不太夠用啊……他能理解複雜表達式嗎?各種多參數的函數?負數應該也沒有學吧?用字母代表參數什麼的……數學肯定要補啊。如果是做圖形類遊戲的話,還要有幾何的基礎,另外英語也不能忽略了。

你當現在小學生都是什麼?!

複雜表達式?你說的是高數什麼的?如果不是,那就是廢話;如果是,我們是在引導編程興趣,高數現在還用不到,如果你說的是 while(i--) i-=i-----i 什麼的,那麼就不想廢話了。

多參數的函數?這算狗屁?

負數沒學就不會啦?你沒教吃飯怎麼就會吃了?再說,現在的語言有顯式的負數?恕我孤聞寡陋。-3 是一個表達式,返回 0-3 的值。

用字母代表參數?除了 kseto 以外(pia……)哪個語言有這個功能?Haskell 也沒有啊,如果你想說 readonly variable 和 variable,那就說清楚。

圖形類遊戲,我們不要一口吃成胖子,現在先學好語法,再學函數庫,幾何的基礎倒不如說更頭疼的是演算法,動不動就積分、傅里葉變換、笛卡爾坐標系,優化性能都是頭疼事,例子就是《雷神之錘》的 sqrt_s() 函數。英語什麼就不說了,煩。

另一類回答是說教類的,比如說什麼你可以先做個病毒啊,先編譯個什麼啊之類的,引發興趣。可是小學生看到病毒真的會那麼開心嗎?我不知道大家那裡的情況,我寫了個程序引發了 OS X 中 CoreAudio 的一個 bug,導致程序關閉甚至睡眠、註銷以後依然在發聲,然後我就把它寫成病毒,發給別人了。但是,看到這個程序給一些人帶來了困擾(必須硬關機進 SafeMode 刪文件、重置 SMC 管理器)甚至對方家長很生氣後,我也沒那麼開心了。

所以,別看我吹了那麼多牛逼,最後的回答——找老師。

謝邀。

此上。


先讓他好好學英語...


首先,讓他覺得編程是件很酷的事情!

這是不是誤人子弟啊 (-_-)zzz


小學的數學感覺也不太夠用啊……他能理解複雜表達式嗎?各種多參數的函數?負數應該也沒有學吧?用字母代表參數什麼的……數學肯定要補啊。如果是做圖形類遊戲的話,還要有幾何的基礎,另外英語也不能忽略了。


http://codecombat.com/play/level/true-names


突然發現我之前寫的答案不太適合小學生。。。(但一個事實是:南京這樣的大城市已經有培訓機構教四年級的小學生學c++,演算法了。。。)不知道他們怎麼教的,小學生連負數還不會。但許多信息學奧賽的老師都覺得四年級開始學編程是最佳的時間。

其實scratch更適合年齡小的學生。介紹一個教程,到網易雲課堂搜「海碼寶寶」,就能看免費的scratch課程了,這是一群博士做的課程。

第一步:看完《啊哈c語言》。這本書通俗易懂,風趣幽默。是我看的第一本編程書。看了5遍。但是這本書的內容只有c語言的30%,函數,指針都沒講,但非常適合零基礎小白入門。所以看完之後要再看一本全面介紹c語言的書。(如果直接看全面介紹c語言的書,估計會覺得枯燥,看不進去。大神忽略。。。)

第二步:看完一本全面介紹c語言的書,我看很多人推薦《c primer plus》,然而我之前看的是譚浩強的《c程序設計》。。。(譚浩強的書網上很多人說誤人子弟,錯誤很多,然而我至今沒有發現。只發現一個指針那章的一個錯誤,感覺是筆下誤。。。)。如果看書看不懂了,可以上中國大學mooc看中國重點大學的老師的課程,上面視頻,課件,交流問答等等都有。我之前看的是浙江大學翁愷博士的課程。

第三步:學完了c語言,就可以做小遊戲了。推薦一個c語言遊戲教程,百度搜索「做遊戲學編程(c語言)」,搜到的是河海大學童晶博士的知乎專欄,童晶博士最近剛出版了一本書,書比專欄內容更多更細緻,可以到電商上網購,噹噹,天貓等等。我百度了幾次,搜到的大都是小遊戲的源代碼,沒有一步一步教你做遊戲的教程。童晶博士的知乎專欄和書是一股清流啊。

上面提到的書都可以網購,畢竟眼睛很重要,沒錢買就看電子書吧。。。


你就跟他說,鍋鍋我來教你一件可以改變世界的事情,然後隨手寫兩個病毒程序(或者騷擾程序)轉發世界,怒刷存在感讓人目瞪口呆,他一定會覺得狂拽炫酷叼炸天的。這個時候就可以對他下手了哈哈哈哈哈哈哈哈


先教他數學


可以去做遊戲解說啊(逃


數學好的話超前學數學啊,讓小孩長時間對著電腦多不好。


推薦閱讀:

求一個簡單c語言應用程序開發的教程?
為什麼 while (getline(cin, s)) 跳出循環後 s 的值為空?
如何判斷自己是否適合學編程?
圖形界面是如何用代碼實現的?
小白準備自學做可視化數據分析?應該怎樣入手?

TAG:兒童 | 編程入門 |