av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

如何用Hedy教人編程

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

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

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

老師直到幾節(jié)課后才會解釋大部分的代碼。我們的期望是,我們只需輸入代碼,并最終了解為什么需要這些東西以及它們?nèi)绾喂ぷ鳌?/p>

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

 
 
 
  1. print("Hello World!")

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

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

在第 1 關(guān),Hedy 程序除了打?。?code>print)一條語句(不需要引號或括號),提出(ask)一個問題,并回傳(echo)一個答案外,不能做任何事情。第 1 關(guān)沒有變量,沒有循環(huán),結(jié)構(gòu)極精簡。回傳的工作原理幾乎和變量一樣,但只針對用戶的最后一個輸入。這可以讓學(xué)生對基本概念感到舒適,而不必一下子學(xué)習(xí)所有的東西。

這是一個第 1 關(guān)的 Hedy “Hello World” 程序:

 
 
 
  1. print Hello World

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

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

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

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

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

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

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

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


名稱欄目:如何用Hedy教人編程
文章轉(zhuǎn)載:http://uogjgqi.cn/article/codgiej.html
掃二維碼與項目經(jīng)理溝通

我們在微信上24小時期待你的聲音

解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流