前两天喜闻 @彭贞 创作的 mcuScript 语言出了测试版。压缩包内附带了例程,包括判断奇偶、冒泡排序、找出质数(素数)、生产者-消费者模型等。
这对第一次接触一个新编程语言的用户来说很方便。相对而言,无论是在官方网站或者第三方平台的文本或视频教程,对用户来说都不是“一站式”体验。这对编程新手尤为影响,而他们往往是中文编程语言工具的第一批用户(对工具的心态相对更开放,第一感觉好就乐于尝试)。越是一个包下来琢磨几分钟就可以跑出效果的,新手用户的第一感觉就越好。
在此整理一些中文编程语言工具捆绑例程库的好处:
是否能很方便找到一系列用户可运行的、覆盖最常用场景的例程,对新手用户来说可以说是在 10 分钟内决定是否继续使用这个编程工具的最大要素。在例程基础上改改跑跑慢慢就熟悉了工具,这是很多用户入门的路径。
借用 mcuScript 的一位用户反馈:
母语例程对用户的最直接好处是,举一反三更加容易。因为更容易猜出哪里是可以修改的。因此中文编程工具应该最大程度利用这一优势。
很多时候需要制作视频、文档等格式的教程,但这些的制作、更新所需的人力成本都高于例程库。分散在各个网络平台的内容,对编程工具作者来说很难保持与编程工具本身同步更新。它们可以作为引流渠道,但一旦内容与编程工具不同步就会给新用户带来困惑和麻烦,尤其是如果一些教程中的例程无法如期运行就会让第一印象大打折扣。
对中文编程工具来说,还有一个很重要的因素。由于例程是母语的,更大程度上可以代替文档教程,因为用户往往通过阅读例程就能有大概了解,只要保证例程本身的可读性,加上少数必需的注释。
因此,只要维护一个尽量可用、与编程工具保持同步更新的例程库,就可以省去不少开发教程的编写(并不是说完全不用写,而是说可以视精力时间酌情进行,更可以基于例程库进行编写),视频等引流渠道也可以侧重于演示效果而不是开发过程,以减少更新成本。
另外,将例程库与编程工具捆绑发布也可以更大程度借用社区力量对例程进行验证。尤其是 mcuScript 这种较依赖硬件进行测试的,单靠作者在每个版本发布前进行全面测试(覆盖不同硬件平台等等)往往不现实。
在例程库的积累过程中,必然能逐渐覆盖用户最常开发的应用。在此基础上,也会有越来越多可以提取为通用和标准库的内容(无论是封装现有的英文库还是自行设计)。这样可以自然形成该领域的中文库生态。
集成开发环境是用户编程时最直接和常用的工具。在入门阶段之后,大多数时候用户并不是直接在“使用编程语言”,而是在“使用 IDE”。这里说的 IDE 可以是现有通用 IDE 加上该编程语言的辅助插件,也可以是专为该编程语言开发的 IDE。
上面已经阐述了例程库的重要性,那么 IDE 在这方面又有何用武之地呢?IDE 大可以集成所有例程以及标准库,并提供用户根据需求搜寻和利用合适的例程和 API 的辅助功能。易语言的专用 IDE 是一个很好参考,应该有更大文章可作。
总之,用户在例程的基础上修改和组合这一开发方式普遍存在,那么中文编程工具就应尽量发挥母语例程的优势,在各个方面将例程的潜力发掘出来。