少兒程式設計已經成為了目前it行業的乙個大型商業鏈,但是,教孩子學程式設計卻是至今乙個十分困難的事情。並不是教育有多大難度,而是為了讓家長看到孩子的成果,並對你的教育成果肯定才是難點。很多家長稀里糊塗把孩子送過去學,比起更紮實的理論知識,家長更希望看到花裡胡哨的專案。比如程式設計貓,童程童美等教育機構,都是基本採用「背**」的教學方式,很多學生能寫出乙個遊戲,知道一些基本的程式設計知識,但是到了舉一反三,或者別的專案的時候,就傻了眼。那麼教師的任務就顯得很重,既要紮實學生的基礎理論,還要讓家長看到成果,這就是我們的今天所要討論的。
在我教育的歷程中,見過各種各樣的孩子,有些孩子10天就能學完一門語言的基礎,有些孩子花了3天卻還不理解迴圈和遍歷。
根據分析,程式設計需要的是邏輯思維和一定的英文水平。學程式設計時,大部分類名和函式名都是以英文出現,很多學生會害怕英文單詞,對於學歷低的學生來說,背誦這些詞就是乙個難點,比如dowload、install、file、menu這樣的單詞,對於乙個小學生來講是困難的。
邏輯思維也是乙個重點,這個因人而異,如果你是乙個教育機構,採用小班化教學,通常會進行乙個類似智商測試的環節,把差不多的孩子分在乙個班級。如果你是一對一教學,那麼至少也要進行乙個測試,好讓你掌握教學進度。對於這類測試的題目,通常會用需要邏輯的數學題,比如概率猜球,規律找數字,計算(比如500以內的單數相加的和)。
既然你從事了這個行業,就不要放棄了,再怎麼笨的學生,總能學會的。
沒錯,現在的少兒程式設計基本採用python和c++,原因就是簡單啊。不過呢,對於14+的孩子才推薦學習c++,因為有將近一半的孩子剛接觸程式設計,是根本聽不懂c++課程的。
那麼學python,要怎麼安排課程呢?雖然是因人而異,但是對於小班化教學,還是要有統一的時間(畢竟是按照小時收錢啊)基本是先安排2節scratch的課程,為毛要這樣子呢?因為一半的孩子剛碰程式設計,連電腦咋用都不太了解,所以啊,先用scratch讓孩子有點興趣,知道迴圈、變數、判斷巢狀是啥,不過不用講的太細。
接著勒,不能按照**的方式,花3課時學完整個基礎語法。對於孩子來說,先花1課時學輸入輸出和注釋,接著就是花3課時學資料型別,敲重點,這塊知識很重要,所以要反覆教,很多孩子剛開始無法理解列表和字典與元組的關係,這就需要多次實踐。剩下來就是一課時學乙個語法。後面就到了最難的函式和物件導向,函式可以花4課時去教,物件導向也是4課時,這是真的難啊,對於理解能力差的學生能被逼瘋!剩下就是模組了,不同於別的,第一次可以接觸pygame模組,因為孩子都喜歡做遊戲(其實外面機構都是用這個的?),花8課時做乙個小遊戲,接著就是學網路程式設計,需要6課時,在原來的小遊戲上加入聯機功能,或者寫乙個聯機五子棋遊戲。
對於c++,大部分是為了參加比賽,所以就根據比賽的內容去定向教學,就是比什麼,就教什麼。
在講教學方法前,先來聊聊教學中不能做的事。
1.第一課時千萬別教孩子關於電腦的結構與功能,比如馮諾依曼體之類的內容,雖簡單,但是孩子不喜歡聽,這會打發興趣,並且他們根本聽不懂。
4.作業千萬不能少,注釋一定要強調,如果你只看程式執行結果來查作業就錯了,因為程式都是可以拷貝的,抄作業是絕對存在的,所以強調每個學生都要寫注釋。並且布置的作業一定要多、難,課上聽的知識完全不夠,舉一反三才能理解。
5.孩子搗亂?不慌。課上不聽課的孩子、打遊戲的孩子大有人在,基本都要在孩子電腦上裝乙個電子課堂,方便管理。實在搗亂,就走法律程式吧。
7.別讓孩子背**,學生確實需要背誦一些常用的**,比如窮舉演算法之類的,但是要多練習,所以平時出作業就要各種刁鑽。
前面說到,遇到新術語,先實踐,後解釋。多用比喻手法。
還有,你要多用有趣的例子,比如你可以舉個王者榮耀的例子,把乙個列表裡放5個英雄的hp變數,根據使用者輸入的技能對特定英雄傷害,對變數進行自減。這樣的把程式設計聯絡到生活和遊戲,會讓孩子更喜歡程式設計。
剛開始要善用scratch,剛開始我並不看好這個東西,後來到教學中發現是真的有效果。在講到迴圈時,先讓學生在scratch中寫乙個程式,然後根據語法翻譯成python語言,這樣就更容易寫。
大型專案要寫思路,你不可能讓乙個孩子獨自寫乙個遊戲,所以你要把礦建用結構圖表示出來,然後讓他們自己思考。如果你手把手教,那就成了你乙個人寫的程式。對於大型專案,別每次都創新,因為就算你都可能出bug,所以先copy一下github上的原始碼,然後拆分教學。
說話的時候不能饒舌,也不能磕巴,這是乙個教師最基本的。
同行競爭壓力山大,最主要是要「騙」家長,如果你全部說實話,這就顯得很平常,所以要不斷吹一些花裡胡哨的內容,讓家長看起來有信心。
把一些例項給家長看,然後給孩子上一節試聽課,讓孩子有興趣,家長才能放心。
當然,這篇部落格只是我寫著玩的,因為最近也在教一些孩子,所以就想把經驗寫下來,希望新的一年你們也能有所成就。
教孩子學程式設計 Python語言版
教孩子學程式設計 python語言版 第1 章 python 基礎 認識環境 nicehexspiral.py 執行後,挺奇特,整個作畫過程,完全呈現。import turtle colors red purple blue green yellow orange t turtle.pen turt...
趣學Python 教孩子學程式設計 第四章
知識點 turtle是python中的乙個特殊模組,可以用來在螢幕上畫圖,基本上就是簡單的直線 點和曲線 引入模組 import turtle 建立畫布 t turtle.pen 前進 t.forward 20 20表示距離 左轉 t.left 90 90表示度數 右轉 t.right 90 重置畫...
教孩子學程式設計的十大理由
當你在考慮為孩子的未來作準備的時候,還有什麼比學程式設計更好的選擇呢?學程式設計能夠幫助孩子發展基本的學習技能,培養毅力等重要的品質,提高問題解決能力,並且獲得21世紀最重要的生存技能,從而為他們未來的職業生涯提供助力。在這裡,我們從幾個方面討論一下孩子學程式設計的10大理由。學程式設計能夠提高孩子...