Share via


每周源代码49 – SmallBasic老少皆宜的,有趣而简单且强大的编程

[原文发表地址] The Weekly Source Code 49 - SmallBasic is Fun, Simple, Powerful Programming for Kids and Adults

[原文发表时间] 2010-02-09 13:18

我的两个小子一个只有2岁,一个不过4岁,不过我一直在寻找新的方法来教他们编程。当然我希望他们能更全面地发展,并且有更多的时间和我一起出去玩,但我觉得即使在编程和逻辑上有点基础的背景也会使他们更强。

Vijaye Raji 创建的Small Basic 是一款简单(只有15个关键词)却强大的编程初学环境。尤其对孩子和没有技术基础的同志们来说,十分强大,同样,即使对专业的游戏开发者来说,也是足够强大的。实际上,Small Basic大概是我见过的最简单最快速的制作和发布基于Silverlight游戏的方法。继续读下去看看我为什么这么说。

Small Basic是MSDN DevLabs的一部分,最近才发布了0.8版。这是第8个安装,但我觉得他们不将它称为8.0版实在是太谦虚了。J 它支持国际多种语言,包括英语、中文、法语、德语、意大利语、日语、韩语、俄罗斯语、西班牙语、巴西语、葡萄牙语和土耳其语。所以如果你认识教计算机的老师,你可以把它推荐给他们。

看一下Small Basic Tetris 。例如你可以在安装了Silverlight的浏览器中运行它,就在这里。 页面右边罗列了应用程序所需的完整的Small Basic源代码。这里也有一些很棒的Small Basic应用程序的例子。

它有一个非常友好的IDE(集成开发环境),如下图所示,它灵活地运用了智能感应。IDE用它自己的方式提供你尽可能多的信息和文本,不仅仅通过智能感应“弧形”,还有右边文档的上下文相关的辅助。

clip_image001

我觉得更聪明的是“Graduate”按钮,它能将Small Basic程序转换成Visual Basic,使之能在Visual Studio中被直接使用。

下面是Small Basic文本模式应用程序的样式:

    1: number = 100
    2: While (number > 1)
    3:    TextWindow.WriteLine(number)
    4:    number = number / 2
    5: EndWhile

以下是Small Basic 窗口模式应用程序的样式:

    1: GraphicsWindow.BackgroundColor = "Black"
    2: GraphicsWindow.Width = 200
    3: GraphicsWindow.Height = 160
    4: GraphicsWindow.PenColor = "Blue"
    5: For i = 1 To 10
    6:    GraphicsWindow.PenWidth = i
    7:    GraphicsWindow.DrawLine(20, i * 15, 180, i * 15)
    8: EndFor

对于我们这些老人物,应该还记得曾经用LOGO 和它无处不在的Turtle来学习编程,Small Basic有一个内置Turtle对象!记得这个吗?

sides = 50

length = 400 / sides

angle = 360 / sides

Turtle.Speed = 9

For j = 1 To 20

For i = 1 To sides

Turtle.Move(length)

Turtle.Turn(angle)

EndFor

Turtle.Turn(18)

EndFor

是谁在呈现给我们这个图像呢?看到内置的turtle了吗?

clip_image002

从学习的角度来说,最棒的部分就是它能把你的游戏直接发布到Small Basic网站,直接运行把玩,或者发给你的朋友。我针对这个Turtle应用程序点击发布, 在Small Basic中,只要一次点击,它给了我这个链接:https://smallbasic.com/program/?WKN265。现在我就能把这个链接发给我的朋友或者学生了。他们可以在线玩游戏,查看旁边的源,或者使用HTML将其嵌入到自己的网站。

应用于这个程序的很多想法和它的便捷度给我留下了深刻的印象。我希望微软的其他同仁们也可以查看一下,一起来享受一下这样的简洁。

相关链接

· https://smallbasic.com

· 25行内SmallBasic程序

· SmallBasic 论坛

· MSDN初学开发者中心

· 专为初学者而设的编程

· 孩童编程传统教学法

Hanselminutes 播客 194 – 你好世界:孩童及初学者计算机编程