Coding4Fun:兒童的編程語言

Coding4Fun 就是您要找的,對嗎?

我敢打賭,如果進行一次投票,您會發現很多人在成爲程序員之前都是遊戲愛好者 - 並且他們的職業生涯正是從編寫遊戲代碼起步的。很酷的是,在學習了編寫代碼並在現實中開始實際工作之後 - 雖然工作不是遊戲 - 仍然很有意思。顯然在 Coding4Fun 網站閱讀本文的人贊同這一點,對嗎?

所以我們所有人才學習如何編寫代碼,而且我們瞭解編寫代碼是充滿樂趣的,那麼我們該做什麼呢?我想我們要給其他人嘗試編寫代碼的機會,看看他們做得怎麼樣,是否會如我們一樣從中得到樂趣。如果是這樣,他們也將成爲程序員,併爲此感到高興。

那麼,我們如何幫助他們嘗試編寫代碼?從什麼時候開始?我們認爲,兒童在有能力學習閱讀、打字和數學時就已可以學習編寫代碼了,而且學習編寫代碼可以幫助和補充其他方面的學習 - 因此,越早越好。兒童都喜歡有趣的東西:哈利波特、任天堂、拼裝玩具等,所以,如果要讓兒童學習編寫代碼,就應該讓學習變得簡單,並且充滿樂趣。幫助他們將學習變成遊戲。

以上就是我們提出 KPL(即兒童的編程語言)時所考慮的一些問題。Coding4Fun 對我們意義重大,它彙集了這些類似的想法,因此,我們很高興有機會在此寫一篇文章來介紹 KPL。

兒童的編程語言

KPL 包括:

易讀的模塊化編程語言

兒童可以使用、但功能完全的集成開發環境

一個不斷增長的有趣的示例程序和遊戲的集合

爲使兒童充滿樂趣地學習編寫代碼而設計的一種體驗

KPL 是一款免費軟件,可以從 http://www.ms-inc.net/kpl.aspx 下載。下載的 KPL 版本默認是英語版本,但現在也能下載該軟件的波蘭語版本,同時,西班牙語、瑞典語、希伯來語、挪威語、德語以及羅馬尼亞語的版本也即將問世。

編程語言

KPL 的語言借鑑了 BASIC 的簡單性和可讀性,但它是一種結構化而非線性的編程語言。KPL 使兒童能立即看到由他們的程序所產生的引人注目的結果,同時還教給他們一些基本概念,比如變量、數據類型、循環、判斷結構、方法和函數。KPL 的數據類型包括整數、小數、字符串、布爾值、數組和用戶定義的結構。

下面是一個典型的 KPL 方法,它在屏幕上畫出一條拋物線。

Method DrawParabola()
Var X As Decimal = -199.0
Var Y As Decimal = -200
        
Color( Blue )
        
Var LastX As Decimal 
Var LastY As Decimal

While X < 200 
        
LastX = X
LastY = Y

Y = (X * X / 200) * -1
X = X + 3

DrawLine( LastX, LastY, X, Y )
Trace( "X = " + X + ", Y = " + Y )

// 想要觀看慢速繪製?取消下一行的註釋:
// Delay( 1 )

End While
End Method

如上所示,IDE 根據語言的語法自動將顏色應用到代碼。本例還顯示了一些其他語言功能,包括:對運行時跟蹤消息的內置支持、代碼註釋的使用以及對系統方法(如 Color()Delay())的使用。

集成開發環境

KPL 代表了一種現代的、功能完備的集成開發環境,其功能包括:

Windows 標準菜單、工具欄和鼠標懸停時的工具提示

代碼編輯器功能,比如語法顏色編寫代碼、放置書籤、縮進/突出和註釋/取消註釋

鼠標懸停在變量或方法名上時的工具提示信息

在標籤上顯示多個程序文件,在 Window 菜單上顯示快捷鍵

用於查看和瀏覽代碼層次結構的程序資源管理器窗格

可停靠和可固定的 IDE 窗格

所有方法和函數的可摺疊和可展開的代碼區 - 當鼠標懸停其上時,摺疊區域會在工具提示中顯示基礎代碼

跟蹤、調試和狀態的消息窗格

可以從 KPL 源程序生成 C# 和 VB.NET 代碼

KPL IDE 提供了很多可以提高生產率和可用性的功能。它的視覺設計和功能集經過專門構建,以便爲用戶“升級”爲 Visual Studio.NET 用戶做好準備。


圖 1. KPL 集成開發環境的屏幕快照

在此屏幕快照中,鼠標懸停在調用 ColorRGB 的方法上,並且顯示了說明該系統方法的工具提示。此外,右側窗格沒有固定,並被摺疊到窗口邊緣。如“消息”窗格所示,已經對程序進行了錯誤檢查。

有趣的示例程序和遊戲

幫助兒童編寫遊戲代碼,並從編寫的代碼立即顯示出圖形結果 - 這是非常好的方法,可以激發並保持他們對編寫代碼的興趣。這是 KPL 附帶的示例程序和遊戲中隱含的真正意圖。

在多種 KPL 支持的有趣的圖形功能之中,Sprite 提供了最強大的圖形功能,可以爲兒童編寫代碼帶來極大樂趣。可以使用多種不同格式的圖形文件來創建 Sprite,然後可使其顯示、移動、活動、旋轉、縮放並可與其他 Sprite 進行交互。這使得我們可以創建交互式程序,而無需學習通常的技術細節,如窗口創建、文件處理、設備上下文、字母混合、衝突檢測等等。

根據我們的經驗,當新程序員開始編寫第一個程序時,如果只用若干行代碼就能在屏幕上顯示一個活動的太空船或其他 Sprite,將極大地激發他們的興趣,使他們相信他們能夠編程,並想學習更多。


圖 2. 運行的 KPL 示例程序的屏幕快照

圖 2 顯示的示例程序是一個功能完整的遊戲,它帶有滾動的屏幕、變速移動的活動目標 Sprite 以及鍵盤控制的太空船。這一款具有上述功能的特殊的示例遊戲,是一個僅包含 210 行代碼的 KPL 程序。這樣一款很小但具有完整功能的遊戲,演示了 KPL 所提供的圖形的妙用 - 而且它提供了一個遊戲示例和運行代碼,兒童可以修改和擴充以生成更復雜的遊戲。

當然,除了編寫遊戲以外,KPL 及其圖形引擎還可用於編寫其他程序。不規則圖形也很有意思,對嗎?


圖 3. 一個由 KPL 呈現的 Mandelbrot 集,由 70 行 KPL 代碼繪製

想玩一個遊戲嗎?

如果您認識可能對編寫遊戲代碼感興趣的兒童,這裏有免費而有趣的 KPL。試試看,然後請告訴我們您和他們的想法。

我們將刊登一系列關於使用 KPL 編寫遊戲代碼的文章。請關注將在 Coding4Fun 網站上刊登的文章。某些文章可能會使您回想起很久很久以前的小遊戲......

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章