美文网首页
藏在儿童玩具中的编程原理

藏在儿童玩具中的编程原理

作者: 静绚 | 来源:发表于2018-10-14 21:04 被阅读0次

    文/静绚

    看见孩子玩电动高架桥模型,把小汽车放到入口处,会自动升上去,绕着轨道跑一圈,回到起点,再来另一圈。看了一会儿,突然发现,这款玩具与编程有蛮多的相似性。

    儿童高架桥玩具

    有人曾调侃说程序员搭建好流程,实现自动化以后,就可以闲下来了。所谓花两小时完成两个月的工作量。这款玩具便形象地展示了这个过程。

    玩具组装好,将小汽车放置到入口处,可以自动升至高处,沿着轨道向下运行。如果没有bug,理论上可以一路顺畅跑到底。这就是程序的运行。每一辆小汽车都是一个新的输入文件,共用相同的运行过程。

    如果中间存在bug,比如说玩具放置不平整,或者组装不好,汽车运行到半程就会停滞,需要有人给它一个助推力。这种情况就代表程序需要修订,因为自动化程度不够。

    一辆小汽车运行完全程重回起点再来第二轮,在游戏中没有任何问题,但是在编程上就是一个严重问题。因为这意味着程序没有一个运行结果,它会无限循环,占内存耗时间还无效。所以需要给高架桥设置一个出口,跑完全程的汽车从出口离开,相当于一个输出文件。

    如果只有一条运行途径,未免单调。对于程序本身来说,普适性也不足,所以需要在高架桥上设置数个关卡,相当于程序中的不同参数,目的是使得汽车运行指定路段,从特定的出口离开,即根据需求不同得到不同的输出结果。

    有的高架桥设置了两个入口,两辆小汽车同时运行可能会经过同一段路程,这就相当于是多个程序共用的一个模块。程序运行得多了,就需要设置优先度,以防“堵车”。

    当然,两者最大的一个共同点,便是为了“玩”。享受高架桥的搭建过程,享受程序的撰写过程。要不程序员常说的三个字便是“去玩吧”。

    Have a fun!

    相关文章

      网友评论

          本文标题:藏在儿童玩具中的编程原理

          本文链接:https://www.haomeiwen.com/subject/acbtzftx.html