成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何用 Hedy 教人編程

開發 后端
Hedy 是一種專門為編碼教學而設計的新語言,它通過在語言中將復雜性分成多個關卡來解決語法復雜性的問題。Hedy 沒有馬上提供語言的全部功能,而是采取循序漸進的方式,隨著學生在 Hedy 的學習的通關,慢慢變得更加復雜。

[[392615]]

Hedy 是一種專門為教人編程而設計的新型編程語言。

學習編程既要學習編程邏輯,又要學習特定編程語言的語法。我在大學上第一堂編程課的時候,教的語言是 C++。第一個代碼例子是基本的 “Hello World” 程序,就像下面的例子。

  1. #include <iostream>
  2.  
  3. int main() {
  4. std::cout << "Hello World!";
  5. return 0;
  6. }

老師直到幾節課后才會解釋大部分的代碼。我們的期望是,我們只需輸入代碼,并最終了解為什么需要這些東西以及它們如何工作。

C++(以及其他類似的語言)的復雜語法是為什么 Python 經常被建議作為一種更容易的編程教學語言。下面是 Python 中的同一個例子:

  1. print("Hello World!")

雖然 Python 中的 “Hello World” 基礎例子要簡單得多,但它仍然有復雜而精確的語法規則。print 函數需要在字符串周圍加括號和引號。這對于沒有編程經驗的人來說,還是會感到困惑。Python 比 C++ 少了 “我以后再解釋” 的語法問題,但還是有一些。

Hedy 是一種專門為編碼教學而設計的新語言,它通過在語言中將復雜性分成多個關卡來解決語法復雜性的問題。Hedy 沒有馬上提供語言的全部功能,而是采取循序漸進的方式,隨著學生在 Hedy 的學習的通關,慢慢變得更加復雜。隨著關卡的進展,該語言獲得了新的功能,最終變得更像 Python。目前有七個關卡,但更多的關卡正在計劃中。

在第 1 關,Hedy 程序除了打?。?code>print)一條語句(不需要引號或括號),提出(ask)一個問題,并回傳(echo)一個答案外,不能做任何事情。第 1 關沒有變量,沒有循環,結構極精簡?;貍鞯墓ぷ髟韼缀鹾妥兞恳粯?,但只針對用戶的最后一個輸入。這可以讓學生對基本概念感到舒適,而不必一下子學習所有的東西。

這是一個第 1 關的 Hedy “Hello World” 程序:

  1. print Hello World

第 2 關引入了變量,但由于 print 函數沒有使用引號,可能會出現一些有趣的結果。如果用來存儲一個人的名字的變量是 name,那么就不可能打印輸出 Your name is [name],因為 name 的第一次使用(本意是字符串)和第二次使用(是變量)都被解釋為變量。如果將 name 設置為(is) John Doe,那么 print Your name is name. 的輸出就會是 Your John Doe is John Doe。雖然這聽起來很奇怪,但這是一個引入變量概念的好方法,這恰好是第 3 關中增加的一個功能。

第 3 關要求在字符串周圍加引號,這使得變量的功能就像在 Python 中一樣?,F在可以輸出與變量相結合的字符串,做出復雜的語句,而不用擔心變量名和字符串中的單詞之間的沖突。這個級別取消了 “回傳”(echo)函數,這看起來確實是一個可能會讓一些學習者感到沮喪的東西。他們應該使用變量,這是更好的代碼,但如果一個 ask/echo 代碼塊變成無效語法,可能會讓人感到困惑。

第 4 關增加了基本的 if/else 功能。學生可以從簡單的問/答代碼轉向復雜的交互。例如,一個問“你最喜歡的顏色是什么?”的提示可以根據用戶輸入的內容接受不同的回復。如果他們輸入綠色,回答可以是“綠色!這也是我最喜歡的顏色。”如果他們輸入其他的東西,回復可以是不同的。if/else 塊是一個基本的編程概念,Hedy 引入了這個概念,而不必擔心復雜的語法或過于精確的格式。

第 5 關有一個 repeat 函數,在現有的功能上增加了一個基本的循環。這個循環只能多次重復同一個命令,所以它沒有 Python 中的循環那么強大,但它讓學生習慣了重復命令的一般概念。這是多介紹了一個編程概念,而不會用無謂的復雜來拖累。學生們可以先掌握概念的基礎知識,然后再繼續學習同一事物的更強大、更復雜的版本。

在第 6 關,Hedy 現在可以進行基本的數學計算。加法、減法、乘法和除法都支持,但更高級的數學功能不支持。不能使用指數、模數或其他任何 Python 和其他語言能處理的東西。目前,Hedy 還沒有更高關卡的產品增加更復雜的數學功能。

第 7 關引入了 Python 風格的縮進,這意味著 repeat 可以處理多行代碼。學生在這之前都是逐行處理代碼,但現在他們可以處理代碼塊。這個 Hedy 關卡與非教學型編程語言能做的事情相比還是有很大的差距,但它可以教會學生很多東西。

開始學習 Hedy 最簡單的方法是訪問 Hedy 網站上的 課程,目前有荷蘭語、英語、法語、德語、葡萄牙語和西班牙語。這樣一來,任何有網頁瀏覽器的人都可以進入學習過程。也可以從 GitHub 下載 Hedy,并從命令行運行解釋器,或者運行 Hedy 網站的本地副本及其交互式課程。基于網頁的版本更容易使用,但網頁版本和命令行版本都支持運行針對不同復雜程度的 Hedy 程序。

Hedy 永遠不會與 Python、C++ 或其他語言競爭,成為現實世界項目編碼的首選語言,但它是編碼教學的絕佳方式。作為學習過程的一部分,學生編寫的程序是真實的,甚至可能是復雜的。Hedy 可以促進學生的學習和創造力,而不會讓學生在學習過程中過早地被過多的信息所迷惑。就像數學課一樣,在進入微積分之前很久要從學習計數、相加等開始(這個過程需要數年時間),編程也不必一開始就對編程語言的語法問題“我稍后再解釋”、精確地遵循這些語法問題,才能產生哪怕是最基本的語言程序。 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2023-08-09 09:00:00

樹莓派物聯網

2023-08-10 06:51:39

人工智能學習模型安全

2013-09-04 10:54:39

jQueryAngularJS編程思想

2013-12-27 09:00:27

編程語言

2011-08-08 15:25:42

iPhone SQLite BLOB

2021-11-01 22:36:04

JavaScript

2017-04-11 17:22:57

編程程序員語言

2014-03-11 15:32:25

2009-05-07 08:13:06

2011-06-03 10:06:57

MongoDB

2011-03-15 09:10:47

iptablesNAT

2018-03-27 18:12:12

PythonHTML

2021-04-02 06:35:49

Bash讀寫文件Linux

2020-07-10 09:49:53

數據清理數據分析查找異常

2011-07-13 14:02:42

OracleExcel

2011-03-15 14:26:23

iptablesNAT

2023-02-08 07:09:40

PythonChatGPT語言模型

2017-05-31 14:55:19

2009-06-22 11:52:00

javascriptxml

2023-12-12 09:00:00

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美偷偷操| 在线看一区二区 | 亚洲欧美第一视频 | 国产精品久久久久久福利一牛影视 | 国产午夜精品理论片a大结局 | 视频二区在线观看 | 久久久做| 日韩精品久久一区 | 欧美日本高清 | 2021狠狠干 | h视频免费看 | 欧美 日韩 国产 在线 | 亚洲欧美成人在线 | 国产精品一区二区福利视频 | 毛片网站免费观看 | 精品一区免费 | 久久精品国产99国产 | 欧美日韩成人影院 | 成人在线免费网站 | 日韩视频一区二区在线 | 美女日批免费视频 | 日日噜| 久久成人一区 | 久久中文视频 | 午夜伦理影院 | 在线一区视频 | 国产精品久久久久久久久久久久久 | 亚洲欧洲视频 | 欧美a级成人淫片免费看 | 操久久| 久久一级 | 在线观看中文字幕亚洲 | 亚洲国产精品一区二区第一页 | 午夜视频免费在线观看 | 国产乱码精品一区二区三区忘忧草 | 日韩精品久久久 | 久草视频观看 | 影音先锋亚洲资源 | 成人黄色在线观看 | 午夜精品一区二区三区在线观看 | 中文字幕一区二区三区精彩视频 |