7

我不知道美国和英国,但在印度,学校仍然教授 GW-BASIC。是的,它是:

10 PRINT "HELLO WORLD"
20 GOTO 10

就我的经验而言,即使是编写汇编程序也比这种乱七八糟的语言更容易。它可以很容易地被 Python 之类的东西取代,这将使学生更容易真正理解编程的基本概念,并帮助他们理解他们做得更好的背后的逻辑。

4

13 回答 13

17

因为Basic是最呃......对von-Neumann架构的基本介绍,这是所有现代计算机和(通过扩展)编程语言的基础。

想一想:

  • 行号 = 内存地址
  • 变量 = CPU 寄存器
  • 当前行 = CPU 指令指针
  • Goto = 跳转指令
于 2009-10-02T18:40:48.393 回答
16

曾经尝试向不知道编程内容的人教授编程吗?

我做了4年。对于绝对入门,GWBASIC 非常好。您可以以最少的努力获得最多的行动,同时仍然传达基本的想法,例如:

  • 计算机在开始下一个语句之前完成一个语句。(新手倾向于认为计算机“一次”完成所有事情。)

  • 程序就像是用修补玩具建造的东西。只有几个基本部件,您可以将它们组装成您想要的样子。(新手通常认为,因为该语言有 IF 和 PRINT 之类的词,所以它只会理解他们输入的任何内容。)

  • 变量是一个关键概念。它们有你给它们的名字,它们有程序运行时得到的值。这很复杂。名称和值不是一回事,写时和运行时是有区别的。

一旦你在 GWBASIC 的帮助下了解了一些基本概念,你就可以开始引入一种更现代的纪律语言。

于 2009-10-02T22:11:26.507 回答
10

大约 10 年前,我在 7 年级时教给我 GW-Basic。我发现它是一门很棒的语言,并且作为初学者很容易尝试。即使是非 pc-freaks 学习语言也没有什么问题。

在我看来,它是激励初学者学习更高级编程语言的好工具。

于 2009-10-02T18:49:38.453 回答
8

至于在印度的教学以及他们为什么使用 GW-Basic,我只能猜测(来自美国):

  1. 它很便宜。也许他们收到了带有 GW-Basic 的旧硬件。嘿,它就在那里,它是免费的,为什么不用它来教孩子呢。
  2. 老师知道。如果老师知道/理解它,他/她可以教它。

在上一个。雇主,我遇到了一些从印度移民到美国的人,并解释说他们第一次使用 Windows 是在他们到达这里时,没有一所学校(甚至大学/大学)都没有。这可能取决于他们去的学校,但可能是可用设备的问题。您所说的这种 GW-Basic 用法可能以相同的方式起作用:他们使用了他们拥有的技术。

也许这意味着他们是,嗯,足智多谋。

至于他们学习这么古老的东西是否好,我不太确定这是一个好主意。但正如著名的(美国西部)民间智慧所说,“用你所拥有的去做。它最终会得到回报。” 最好在他们年轻的时候暴露他们。

于 2009-10-02T19:01:54.247 回答
8

有趣的是,人类忘记的速度有多快。

还记得你第一次为循环的概念而苦恼吗?有一个变量的想法,它是如何保留值的?记住语法?

Basic 具有相对较小的内置语法,它具有相当灵活的循环结构和其他结构。

我想总的来说它是“松散的”。这对学习有很大帮助。

对于好的、稳定的程序来说,松散是非常不利的。你只需要很少的灵活性,你需要可以依赖的模式和很少的选项(即使你不知道这是你想要的,只要你必须领导一个由 5 名开发人员组成的团队,你就会明白另外一个国家)。

如果这里有谁没有真正考虑过,我们不喜欢基本的原因不是缺乏“力量”或速度——因为它太松了——这与它对教学有好处的原因完全相同。

您不会开始跑步,而是学会以一种摇摇晃晃的方式爬行,然后跌倒,等等。

但是一旦你开始冲刺,你真的想确保每一个脚步都准确地放在你想要的地方,如果你前面的人决定他突然想要开始爬行,你就完蛋了。

当然,如果您是独自在赛道上奔跑,或者在一个同步的小型团队中奔跑,那么您做什么并不重要。随意使用您想要的任何语言:)

于 2009-10-02T22:22:31.510 回答
7

GW-Basic 对于新程序员来说是一门很棒的语言。如果有人以前从未做过任何编程,那么与 Python 之类的东西相比,GW-Basic 之类的简单东西对他们来说更容易理解。此外,与 C++ 相比,Java 对面向对象编程的支持要好得多。如今,更多的商业应用程序是用 Java 编写的,而不是 C++。[来源]。因此,我会说他们通过 C++ 切换到 Java 是一件好事。

于 2009-10-02T18:40:07.027 回答
5

如果有人真的对编程感兴趣,他们会将在课堂上学到的东西应用到自己学习的语言中。

对于从功能远不如 Java 或 C++ 强大的语言开始,还有一些话要说。

于 2009-10-02T18:45:47.873 回答
4

所以你会学会不使用 GOTO

于 2009-10-02T22:24:02.197 回答
2

这很容易学,学校不以教授新技术为目标,学校想教授信息学基础知识

于 2009-10-02T18:37:44.860 回答
1

我认为在我的学校 GW Basic 仍然在 6-7 年(10 年)教授,原因是小女孩和男孩不能理解比基础更难的东西:)

更重要的是,在我的大学里,我们在QBasic o_O omg 你说?是的,我也很震惊 :) 哦,他们承诺在四年级学习一个学期的 C++.. 耶!

于 2010-01-16T19:10:26.553 回答
1

我来自印度,早在 1995 年,GW-BASIC 就是我的第一语言。这很有趣。现在情况发生了变化。我的学校现在教授另一种 BASIC 变体,QBASIC 作为第一语言。然后学生转向标准 8、9、10 中的 C++ 和 Java。希望 Python 会在某个时候接管。

正如有人已经指出的那样,它的简单惯性。它没有太多便宜的硬件,这就是原因。它只是继续做任何事情的心态。叹息。

于 2010-04-12T07:03:29.907 回答
1

我认为 GW-BASIC 是教孩子编程的好工具。我教小学生编程大约 10 年。GW-BASIC 提供了一个易于学习的环境,而无需进入技术细节。

如果我们使用一些高保真编程语言来教孩子们,他们将学习编程语言而不是编程。使用 GW-BASIC 很容易教授编程,我们可以专注于编程技术,而不是讨论编程语言的结构。它具有非常简单和类似英语的语法,因此学生很容易理解它。

另外要记住的是它是 BASIC 的解释器,因此我们可以逐行执行不同的指令,并且可以执行程序的任何部分,这让学生清楚地理解。

GW-BASIC 的直接模式为解释内存概念提供了很大帮助,因为我们可以监控变量(内存地址和值)的变化状态

于 2011-04-24T12:38:37.820 回答
0

就 GW-BASIC 而言,我完全同意。这就是为什么一位只被称为“_why the luckystiff”的 Ruby 程序员创建了一个名为“Hckety Hack”的令人惊叹的编程学习平台。事实上,他对在 Art & Code 研讨会上向年轻人教授编程有很多见解:

http://vodpod.com/watch/2078103-art-code-symposium-hackety-hack-why-the-lucky-stiff-on-vimeo

于 2009-10-02T18:47:32.203 回答