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 网站上刊登的文章。某些文章可能会使您回想起很久很久以前的小游戏......

你可能感兴趣的:(C#,And,ASP.NET)