999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向少兒人工智能教育的計算機編程語言的比較研究

2020-10-21 05:29:27黃烈甫
科學與信息化 2020年4期

摘 要 目的:通過對少兒編程語言做比較研究,以期為少兒編程教育語言選擇提供參考。方法:根據青少年發育特點,對10歲以前和10歲以后兩個階段的少兒需要選擇不同的編程語言進行教學。對常見的Scratch、編程貓、Small Basic、Python等編程語言的功能和特點進行詳細分析。結果:低年齡段少兒學習編程主要選擇圖形化、模塊化、積木式的編程語言,如Scratch、編程貓等,學員通過編程完成小作品,逐步形成邏輯化的思維習慣;高年齡段少兒需要在編程思維、算法思維、編程技術等方面進一步提高,應選擇Small Basic、Python等高級語言進行編程學習。結論:少兒接受編程教育對于培養邏輯思維和計算思維,提高解決問題的能力具有重要意義。選擇合適的編程語言有利于激發學習興趣,提高編程能力,為進一步的人工智能學習打下編程基礎。

關鍵詞 計算機教育;編程語言;比較研究;Scratch;Python

Abstract Objectives:To make a comparative study on childrens programming language, so as to provide reference for selection of language in childrens ?programming education.Methods:According to the characteristics of adolescent development,children in the two stages before the age of 10 and after the age of 10 need to choose different programming languages for teaching.The functions and features of common programming languages,such as Scratch,Codemao,Small Basic,Python,etc.Results:Children at low ages mainly choose graphical,modular, building block programming languages for programming,such as Scratch,Codemao,to guide children interested in programming,complete small works,and let them gradually form logical thinking.Children at the senior age group need to further improve their programming thinking,algorithmic thinking,and programming technology.Advanced languages such as Small Basic and Python are suitable for programming learning of children above the age of 10.Conclusion:Childrens programming education is of great significance in cultivating logical and computational thinking and improving their ability to solve problems.Choosing the proper programming language is conducive to stimulating learning interest and improving programming skills,and providing basis of programming for further artificial intelligence learning.

Key words Computer education;Programming language;Comparative study;Scratch;Python

背景

近年來,隨著我國經濟高速發展,人們在教育方面的投資意愿持續增強。2017年7月8日,國家中央政府網站發布了《國務院關于印發新一代人工智能發展規劃的通知》(國發[2017]35號文件),第一次正式把人工智能提高到了國家戰略發展層面,刺激、鼓勵社會各界參與我國人工智能的建設和發展。信息產業和教育產業方面的政策利好,推動了信息化教育尤其是少兒編程教育的蓬勃發展。人工智能帶來的無人駕駛、人臉識別、電子支付等新興信息化技術,以及滲透至生活各個方面的信息化系統,都與編程密不可分,這些信息技術的革新和升級,給編程行業帶來廣闊的發展機會及應用前景。目前,少兒編程在美國學前及小學教育中的普及率達到40%以上,而國內只有0.96%,國內的少兒編程教育起步晚、覆蓋面窄、發展慢,少兒編程教育市場需求極大。接受過高等教育的家長們意識到編程教育與信息化產業的關系,將少兒編程作為孩子的一項課余興趣甚至技能,投入許多時間、精力和經濟成本進行培養,期望孩子通過早期接觸編程教育,為今后的學習及職業生涯打下基礎,創造機會[1]。然而,少兒編程教育與成人編程教育有著截然不同的區別。成人編程教育致力于教會學習者如何寫代碼、編制復雜的應用程序,使計算機按指定步驟進行工作,完成明確的任務,解決實際業務需求。少兒編程教育是通過可視化游戲啟蒙和積木圖形化編程等寓教于樂的方式,開發少兒的計算思維和創新解難能力,其目標是培養其編程的邏輯思維和算法思維[2]。目前,少兒編程教育有多種程序語言,如何針對少兒自身情況選擇一門合適的編程語言進行教學,是值得教育機構和家長認真思考的問題[3]。本文對少兒編程常用的幾種編程語言做比較研究,以期為少兒編程教育選擇合適的語言工具提供參考。

1少兒編程基礎

國內外大量研究表明,少兒階段完成合適的編程課程,有利于提高學生的邏輯思維能力和抽象思維能力,并促進計算思維水平的整體發展。將編程學習與STEAM教育相結合,還可以在編程學習、訓練、創作的過程中,引導孩子在科學、技術、工程、數據、藝術等方面素質的提高。我們希望少兒能夠通過學習編程,對編程學科產生一定的興趣,對程序設計有初步理解,提高信息檢索能力和利用信息解決問題的能力,并在完成編程作品的過程中學會與人合作。

家長在選擇編程語言和培訓機構時也應該圍繞上述目標來進行。少兒編程學習一定要結合兒童自身的特點來選擇編程語言。一般來說,編程需要學習者接受基礎教育,有相關基本能力后才能適應編程方面的訓練。這些基本能力包括:邏輯思維能力、數學計算能力、簡單的英文單詞拼寫和識別能力,并了解計算機基本結構。少兒在這些方面的基礎總體較弱,為此不少研究機構和大型軟件公司設計了有針對性的語言平臺,學生選擇適合自身情況的語言平臺,在學習編程的過程中,可以反向增強上述基本能力的建設。少兒的學習狀態和發育狀況是不斷變化的,濃厚的學習興趣、合理的教學方法、科學的課程安排都能夠正向刺激學習過程。

2程序語言介紹

程序語言是人機交互的工具,不論是軟件編程還是硬件編程,都是通過程序語言將開發者的指令傳達到機器,機器識別語言指令后做出一定的響應。跟人類語言類似,程序語言必須同時具備語法和語義兩方面要素。要進行硬件編程,開發者必須對硬件特性非常了解,由于不同的硬件可能差別巨大,且硬件成本較高,因此總體來說硬件編程難度大、要求高,適合少兒編程的平臺少;軟件編程是建立在標準的平臺之上,開發成本相對低廉,軟件開發更加標準化和產業規?;?。當前軟件行業流行的C/C++、JAVA、Python等高級軟件編程語言,因其語法強大、程序可讀性強等設計特性,可方便進行數據運算和流程控制,在各自領域都一枝獨秀。其中C/C++和JAVA在程序入門學習的門檻較高,要求學習者有比較扎實的編程基礎,學習成本高,學習曲線陡峭,一旦掌握其編程精髓后,則產出較高,但都不適合少兒編程教育。

K12階段是青少年基礎教育和智力發育快速進步的階段,其中6~12歲定義為少兒。每個年齡段的兒童發育水平差異很大,為此少兒編程至少要分為2個階段,分別使用不同的語言和教案。我們需要針對兩個年齡段,選擇合適的語言和編程平臺,讓他們能夠逐步理解編程思想,進入編程學科的大門。

3適用于低年級少兒的編程語言

目前,國內外有專門針對10歲以內兒童的語言平臺,市場上流行的主要是Scratch、Tynker、Kitten、StartLogo和Kudo。考慮到Kudo更像一款游戲,而StartLogo操作界面復雜,語言國際化程度不高,這兩種語言在少兒編程教育中使用較少,因此在本文不做贅述。以下是對Scratch、Tynker、Kitten的介紹。

3.1 Scratch

Scratch是2006年由麻省理工學院領導的團隊開發的編程平臺,研發團隊成員來自美國賓州大學、哈佛大學、微軟等IT業頂級機構。目前,Scratch已經升級到3.0版本,功能日趨完善,國外部分高校的非計算機專業也在嘗試使用Scratch教授編程課程。Scratch作為一款在少兒編程教育中應用最廣泛的語言之一,具有以下多方面的優越性[4]。①使用者不論是否商用均可以免費使用;②界面為動畫風格,對兒童非常友好;③界面國際化完成度高,支持中文在內的大部分語言,學習者不需要英語基礎即可入門;④程序的基本元素充足,學習者能夠充分了解事件觸發、事件響應、流程控制、變量設置、運算過程、界面元素等程序基本結構;⑤以拖動積木的方式完成程序流程,低年級學生可以不敲字母即實現編程;⑥平臺自帶教程,低年級學生可以在家長陪伴下完成任務,動手能力強的學生也可以嘗試自學;⑦語言社區成熟,內容豐富,國際化程度高,上傳到社區的作品非常豐富,世界各地的開發者可以交流經驗;⑧系統跟多家硬件廠商合作,可以支持包括樂高在內的多種產品的硬件編程。

3.2 Tynker

Tynker平臺誕生于2013年,由硅谷的IT公司Tynker設計實現。這款軟件借鑒了Scratch積木式的編程方式,以web化的技術實現了系統功能,教學過程類似Scratch編程。目前,Tynker一方面通過在線接收學生的方式進行編程教育,另外一方面通過資助英語地區的中、小學,與這些學校開展合作從而為少兒編程培訓積累經驗。這個平臺與Scratch的主要區別在于,它采用收費式的線上、線下培訓體系,將培訓教學模式和教學平臺開發模式相結合。Tynker雖然推出了移動端的免費版本,但是桌面端還是收費模式,故在全球推廣上,受眾度比Scratch更低。Tynker目前主要的學習工具專注于瀏覽器在線和ipad上,更多的偏向于互聯網模式,其免費教程很少,大部分都服務于收費的培訓課程。Tynker的編程平臺界面如圖2所示,其總體結構和Scratch基本一致,左側是分類的程序控件,中部是編程的主要部分即程序流程編寫框,右側上方是程序運行效果圖,右側下方是程序需要的圖片和動畫元素。使用者從左側上方點擊“分類按鈕”后,左側下方會出現具體的程序控制按鈕,將需要的按鈕拖動到界面中部,并且將這些按鈕連接起來,形成完整的控制流程,右側的每一個動畫元素都可以有各自的控制流程。程序開始運行時,所有動畫在事件觸發后,按照程序制定流程運行。

3.3 編程貓

編程貓是類似Tynker的中國本土化產品,它的積木化風格完全繼承自Scratch,基于H5技術實現,它是國內同名培訓機構“編程貓”開發的少兒編程平臺?!熬幊特垺笔菄鴥纫幠]^大的編程教育培訓機構,該機構有較強的研發能力,獨立開發出這款少兒編程軟件——編程貓。編程貓集成了幾個模塊,分別是:類似Scratch的面向低年齡少兒的Kitten、面向中高年級的少兒編程產品海龜編輯器、游戲制作區代碼島、答題和交流社區產品——通天塔、還有硬件編程模塊。編程貓的獨特之處在于,平臺在創立之初就考慮到了學習者成長后需要從少兒編程語言過渡到使用高級編程語言。Kitten模塊中有一鍵切換的代碼轉換按鈕,可以將積木模式的代碼以Python或者js代碼形式展示;海龜編輯器是專門為過渡到Python編程而設計的,它繼承了Python的海龜畫圖功能,并提供了代碼模式和積木模式的切換功能。答題和交流社區產品通天塔也是其創新之處,它提供了各種難度的題目,學員可以在家長的指導下使用,檢測自身對編程知識點的掌握情況。編程貓Kitten的編程主界面如圖3所示,相對于Scratch和Tynker,該平臺最顯著的區別在于右側的代碼轉換區域,學員可以看到積木程序對應Python代碼的具體內容。

綜上,上述三款編程學習平臺都是針對基本能力較弱的低年齡少兒設計的,它們都采用積木式的拖拽方式,將流程設計概念直觀形象地展示出來。每種積木具備特定的功能和標識,使學員無需了解英文和語法即可使用。這三款編程學習平臺都具備了程序設計的最基本功能。因為Scratch屬于完全開源的項目,其版權聲明不論是否商業行為使用都完全免費,因此商業和非商業機構都大量采用Scratch作為教學平臺。另外,Scratch有非常豐富的教程,提供了由簡入繁幾十個案例,少兒可以在家長的指導下完成教程中的任務,從而掌握積木式編程的方法。家長也可以根據教程,以親子活動的形式,與孩子一起學習編程并協助完成學習任務,提高孩子的編程技能。而Tynker和編程貓是單個大型收費培訓機構自行研發的平臺,成本更高,他們在自家培訓機構的指導下結合業務特點做了更多的定制化開發,故這兩個平臺的受眾更少,但是在商業市場中也有大量學員使用。因此,不論從經濟性還是平臺的易用性來看,Scratch都具備非常強大的競爭力,這也是其在低年齡少兒編程領域全面領先的原因。

4適用于高年級少兒的編程語言

上述積木式開發工具,對于10歲以下的兒童入門學習來說已經足夠,通過使用這些工具,學習者可以了解程序的順序、結構、處理邏輯等基本概念和方法。進入高年級,編程學習的重點將逐步從興趣引導、概念認識方面過渡到計算思維、軟件開發初步能力、動手能力、初步計算機算法思維等能力的培養。這需要開啟高級語言的學習,但是軟件行業流行的C/C++和JAVA并沒有出現在少兒編程的重要選項之中,原因在于,C/C++需要扎實的計算機基礎,同時要掌握的細節極多;而JAVA面向對象方面的概念和語法對于青少年初學者來說難度很大。以下是國內外在小學高年級和中學階段采用的程序語言和平臺,我們逐一分析。

4.1 Alice

Alice創立于1995年,是一款定位于3D和VR的動畫游戲開發、設計的免費平臺,它也是通過拉取積木的方式,實現對動畫元素的控制。新版Alice的核心功能是用JAVA語言實現的,它自帶JAVA虛擬機。在任務練習的過程中,學習者將會在故事場景中加入各種元素,這些元素的功能設計,將代碼函數以下拉框形式呈現出來。涉及的JAVA類的選擇、JAVA對象的創建、對象屬性的設置,可以讓學習者了解到JAVA代碼的編碼流程和面向對象的程序設計理念;JAVA對象方法行為的實現,讓學習者可以更好地理解和掌握函數、變量、控制、遞歸等編程方法。

Alice具備國際化的功能框架,最新版本的中文國際化已經較成熟,缺點是界面友好度較差,控件比較復雜。目前美國的一些中學和小學高年級在使用Alice教授編程和動畫設計課程,其中包括有名的Duke中學。Alice采用積木拖拉式的設計,加入了比較復雜的操作函數和指令控件,適合于中學高年級的沒有編程基礎的學生。平臺的進化在近年來有所加快,包括VR功能、模塊化集成,并提供更加復雜的IDE環境,支持使用者加載項目外的其他有用資源。平臺自身也提供比較豐富的課程體系,包括如何處理動畫元素、如何建立和使用內容庫,并提供了對應的練習和小任務供學員強化。美國市場上也有大量的課程和書籍供學習者使用。但這些課程通常比較復雜,一般用于配合課程學習中試用。

4.2 Small Basic

Small Basic創建于2008年,它是微軟公司專為少兒編程而開發設計的一個精簡版的Basic平臺,在功能上參考了老牌的少兒編程語言LOGO,專門設計了小海龜繪圖的功能,同時又完全繼承了.NET家族中的Visual Basic語言。像其他.NET語言一樣,這款免費的學習語言也只能在Windows系統上運行,經過多年的改進,這個平臺已經日趨完善。該平臺包括3個部分:語言、IDE(集成開發環境)、函數庫。①語言,即Small Basic,來自BASIC的早期變體(Beginner's All-purpose Symbolic Instruction Code)。BASIC本是微軟公司最初創建的旨在幫助學生學習編碼的語言之一,微軟繼續提煉其中有益的部分用于設計適用于少兒的編程平臺,旨在培養少兒順其自然地過渡到微軟的.NET編程體系的重要部分,Small Basic語言簡單、有趣、易學,代碼可以移植到VB,還可以發布到網上。②IDE(集成開發環境):它的IDE基本功能齊備,簡單易用,初學者可以感受IDE對于提升編程效率的重要性。③庫:每一種編程語言都有大量的庫函數供開發者使用,Small Basic的庫簡單有趣,學生可以通過調用庫函數完成一些較高級的功能[5]。安裝軟件平臺時自帶教程,官方網站也可以在線瀏覽教程,這些教程需要家長翻譯后教授少兒使用。Small Basic程序語言學習難度總體較低,國內部分中學的編程課程和教材開始嘗試從VB轉變為Small Basic[6-7]。

4.3 Python

Python作為大數據算法庫的重要承載工具,近年來在工業界的使用率持續攀升。跟Small Basic相比,它有如下特征。①庫:大數據算法庫是其最大的特色,作為一款流行的高級語言,許多軟件公司還提供了大量開源的Python庫供開發者使用。教學方面,大學微積分、生物信息學、地質學、高性能計算等諸多學科的學者和研究機構也提供了Python編程所需要的庫函數。②腳本語言:Python也是一款腳本語言,無需編譯(從文字翻譯為機器指令的過程);其運行需要的虛擬機平臺在各主要流行的操作系統都有安裝包,因此Python是跨系統的語言;在語法上,它與其他的高級語言已經很接近,學習Python后再學習其他語言也很容易上手。③IDE:Python自身是不帶IDE的,只有類似寫字板的編寫工具,因此需要借助其他IDE工具比如Pycharm、eclipse、vscode等來進行編程。這些工具都很復雜,大部分學員需要專門培訓一段時間后才能熟練使用。這些IDE在業界都非常有名,支持跨語言功能,即使以后使用其他高級語言,在IDE的使用方式上也差別不大。IDE的學習難度是Python相較于Small Basic的劣勢,而學員一旦掌握了其中一種IDE,編程效率將極大提高。

國外一些大學將Python和C語言的教學效果做了比較,兩者除了在輟學率上相近外,在學習者的考試失敗率、作業提交數量、實驗參與率等方面,Python的教學結果均更優。

綜上所述,Small Basic專為初學者設計,上手難度較低,學習者只要按照教程一步步執行操作步驟,即可了解高級語言編程的基本過程,同時可以相對順滑地過渡到Windows平臺的VB或者.NET編程,對于大部分初學者來說,Small Basic還是比較合適的。Python的上手難度更大,界面和操作的友好性更低,需要專業培訓及指導才能入門,一旦進入學習狀態,達到了一定的熟練度就可以直接學習工業界的編程方式,能更平緩、順利過渡到更高階段的編程學習。Alice作為高年級入門編程工具,也是一個不錯的選擇,學習者可以通過編輯3D動畫游戲,了解程序設計的基本流程,其底層的Java代碼也可以天然對接更高級的編程學習。這三種語言中,Python語言最完備,IDE工具功能強大,在各個學科的用途廣泛,庫函數豐富,具有工業級的生產標準并且產業生態良好,雖然上手難度相對更大,但是建議對編程有極大興趣并希望進一步深入鉆研的學習者,可以考慮在高年級直接從Python開始學習[8]。

5教學說明

需要說明的是,少兒學習編程并不局限于讓他們走上編程的職業道路,我們只是希望他們能夠通過編程接觸到一種新的學習方式和思維方式,并幫助他們學會關注、想象、創造、合作、分享和思考[9]。美國在20世紀60年代就開始思考如何為少兒設計合適的編程語言,以一種新的形式培養他們的邏輯思維和計算思維能力。之后,歐、美、日在語言方面繼續研究并提出空間化的編程語言,逐步演化出畫圖的小海龜工具和針對少兒的圖形編程工具,構建了像Scratch這樣的積木式編程平臺,甚至連通了硬件設備和機器人,最后開啟了商業培訓模式。

編程學習不僅需要一款合適的語言平臺,還需要專業的老師對學員因材施教。目前少兒編程教育方面的研究表明,如果老師以積極的態度,協調學員參與各類活動,鼓勵他們交流和對話、克服困難,就會促進學員的編程興趣[10]。在編程學習的初期,家長也可以是孩子學習的好老師,高質量地陪伴孩子一起學習編程,相互借鑒、合作、討論、多鼓勵,會有非常不錯的效果。

最后,課程安排也是學習編程非常重要的環節。除了上課,試驗、交流、排查問題等過程都是必需的環節,學員們要參與編程的多個階段。除了編碼,老師還要指導并協助學員進行完整的小項目,按照步驟進行問題分析、方案設計、編寫代碼、調試運行、總結反思等,教學形式可以多樣化,比如參加夏令營、編程比賽、科技展覽,甚至親子結對編程等。

6結束語

孩子在校學習具備一定基礎之后,家長可以選擇合適的少兒編程平臺和培訓機構,讓孩子接受編程方面的學習,以激發計算化的思維從而提高思考和解決問題的能力。本文對3種入門級以及3款初級編程語言和平臺進行了詳細的介紹和比較,家長可以據此幫助孩子選擇合適的編程語言進行學習,讓孩子對編程保持濃厚的興趣和深入研究的精神,為進一步的人工智能學習打下編程基礎。

參考文獻

[1] 郭學軍,汪傳建.少兒編程培訓熱的教育學審視[J].人民教育,2019,(10):62-66.

[2] 馬強.基于計算思維培養的少兒可視化編程教學設計研究[D].石家莊:河北師范大學,2019.

[3] 戚偉慧.少兒編程的可行性研究與分析[J].電子技術與軟件工程,2016,(24):253-254.

[4] 錢筱陽,付詩佳,吳子昊,等.Scratch少兒編程教育探索與實踐[J].科教導刊(上旬刊),2019,(8):134-135.

[5] 蘆明明.基于small basic的高中信息技術課算法教學設計研究[D].上海:上海師范大學,2011.

[6] 況旭.基于翻轉課堂的初中Small Basic程序教學模式設計與實踐[J].教育信息技術,2018,(5):55-59.

[7] 顧佳敏.人工智能教育在初中信息科技課程中的初步探索[J].上海課程教學研究,2019,(9):31-34.

[8] 馬尚輝.基于學科核心素養的高中信息技術Python教學初探[J].教學管理與教育研究,2019,(6):82-83.

[9] 張陽.青少年編程教育體系研究與實踐[J].技術與教育,2019,(2): 24-29.

[10] 候繼倉,馬紅.選擇規劃人生中的編程教育——用選擇結構程序做出判斷[J].中國信息技術教育,2018,(1):28-29.

作者簡介

黃烈甫,學歷:碩士,專業特長:大數據應用、分布式計算、軟件開發。

主站蜘蛛池模板: 亚洲第一页在线观看| 成人午夜久久| 精品无码国产一区二区三区AV| 亚洲成人网在线播放| 国产精品爽爽va在线无码观看| 四虎精品黑人视频| 无码有码中文字幕| 国产美女无遮挡免费视频网站 | 男女性午夜福利网站| 亚洲中文字幕av无码区| 国产剧情国内精品原创| 欧美中出一区二区| 精品剧情v国产在线观看| 国产91透明丝袜美腿在线| 日本高清有码人妻| 久久人搡人人玩人妻精品| 99国产精品一区二区| 亚洲视频免| 国产免费羞羞视频| 日本三级黄在线观看| 亚洲成人网在线观看| 色男人的天堂久久综合| 国产伦精品一区二区三区视频优播| 日韩视频精品在线| 国产XXXX做受性欧美88| 99久久国产自偷自偷免费一区| 国产又大又粗又猛又爽的视频| 综合社区亚洲熟妇p| 国产精品第5页| 伊在人亚洲香蕉精品播放| 国产欧美在线观看一区| 狠狠色丁婷婷综合久久| 中文字幕1区2区| 国产永久免费视频m3u8| 9999在线视频| 真实国产精品vr专区| 国产在线八区| 国产亚洲精品97AA片在线播放| 国产欧美成人不卡视频| 国产欧美日本在线观看| 91在线无码精品秘九色APP| 欧美精品高清| 日韩欧美91| 欧美精品成人| 国产精品极品美女自在线网站| 亚洲成人网在线播放| 欧美性猛交xxxx乱大交极品| 亚洲视频无码| 91亚洲精选| 五月丁香在线视频| 国内精品小视频在线| 美女无遮挡免费网站| 亚洲中文字幕av无码区| 久久人搡人人玩人妻精品| 国产成人精品高清不卡在线| 九九视频免费在线观看| 亚洲无码高清视频在线观看| 国产精品无码作爱| 国产在线拍偷自揄拍精品| 在线日本国产成人免费的| 人人爱天天做夜夜爽| 国产精品无码在线看| 凹凸国产分类在线观看| 成年女人a毛片免费视频| 日本一区二区三区精品AⅤ| 亚洲性视频网站| 国产成人精品综合| 国产真实乱了在线播放| 少妇露出福利视频| 日本a∨在线观看| 九九久久精品国产av片囯产区| 免费毛片全部不收费的| 黄色污网站在线观看| 九九热精品视频在线| 成人免费视频一区二区三区| 伊人久热这里只有精品视频99| 女人av社区男人的天堂| 国内精自视频品线一二区| 日本欧美精品| 国产原创演绎剧情有字幕的| 欧美精品导航| 日本www色视频|