编程语言|跨过编程入门门槛,从写一首“代码诗”开始( 三 )

< 200) { me.setFeelings({ inLove: true, });}那么在这里发生了什么?
· 为了让人们理解 , 读取一首用JavaScript“语法”编写而成的JavaScript诗;
· 在理解信息之后 , 为理解诗的结构(JavaScript的语法和基础知识) , 对规则、词汇和变量进行了区分;
· 通过这种区分后 , 使用JavaScript规则设计了其余的诗歌变量 , 使其可以通过机器(在浏览器中)运行 。
这可以做到 , 因为处理JavaScript , 就像处理英语语言一样 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
更大的例子:交互式代码诗歌LoveBits是一种代码学习或用代码讲故事的体验 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
LoveBits:基于JavaScript的代码诗歌项目
它试图通过以下方式让人们对JavaScript或代码感兴趣:
· 将可读性和人类语言放在第一位;
· 将代码与读者可能熟知的艺术形式相结合 。
故事情节与两个比特(矩形状)有关;其中一个比特(blueBit)是浪漫主义者 , 为另一个比特(purpleBit)写出JavaScript的爱情诗 。
启动LoveBits时 , 可选择其中一首爱情诗(由JavaScript代码编写而成) 。 每首诗都有一个代码片段 , 不甚熟悉编程的人都能理解其中的编写方式 。 这个项目唯一的要求就是要懂英语 。
例如 , “love at first sight”(实际上是LoveBits诗歌中的一首)讲述的是这两个比特之间的故事 , 诗中 , blueBit大致是这么说的 , “If I get close enough toyour position, I will ‘set my feelings’ to inLove: true.”
这些诗歌的特殊之处在于你可以通过点击下面的“play”按钮,“run”或“play”它们 。 在“Love at first sight”的诗中 , 你会见到一个蓝色和紫色的矩形以及一个数字 。 正如你猜到的那样 , 它们就是诗中提到的两个比特 , 而blueBit下面的数字实际上是blueBit和purpleBit之间的距离 。
正如诗歌所暗示的那样 , 你可能想要通过减少它们之间的距离让blueBit爱上purpleBit 。 那要怎么做呢?可以和blueBit互动 , 把它拖来拖去 , 让它坠入爱河 。 但要小心 , 有时结果可不只一种 。
实际上有人可能会说程序员成为了这里的机器 , 但程序员才是需要解释JavaScript代码 , 并采取行动帮助两个数字生物坠入爱河的那个人 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
未来将何去何从?如果你是个奋力拼搏的开发者 , 试着将JavaScript视为人类语言吧 , 只了解需首先执行的代码片段就够了 , 不必去考虑它们最终运行的结果 。
进一步的建议:
· 永远优先选择能将规则、词汇和变量组合在一起形成应用程序逻辑的整个应用程序;
· 应用程序逻辑会讲故事 , 这些故事将帮你填补上述代码示例中的空白 。 代码库和实用程序(如lodash)只能提供新的词汇表 , 在你能阅读和理解JavaScript代码后会有所帮助;
· 检查现有代码 , 并尝试将其分解为具有反映其功能名称的小函数 。 编写适用于人和机器的代码 , 编写出可以像句子一样阅读的代码 , 并在需要的地方加以注释 。 思考:怎么用人类语言(向另一个开发者)表述这个代码?
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
结论将代码视为人类语言而不是外星人发明的东西 , 学习代码就会更容易 。 学习区分语言属性(内置)和应用程序逻辑的变量/自定义代码至关重要 。 理解了应用程序逻辑 , 你就无需了解语言特征即可作出改进和更改 。
学习基础知识前需明白:理解了任一代码片段的信息 , JavaScript的基础知识自然就能随之掌握 。 有多少次你听到有人说:“我能看懂这种语言 , 但我还不会说 。 ”这是一个自然过程 , 能够并可能适用于人类语言和编码语言的学习 。
此外 , 请牢记代码有明确的功能性目的 , 但也并非总是如此 。 即使是人类语言 , 曾经也只满足纯粹的功能性需求 , 后来才出现了诗歌甚至歌曲(说到这 , 有人对JavaScript歌曲感兴趣吗?)这些以截然不同方式使人们密切相联的语言形式 。 这同样适用于编程语言 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
留言 点赞 关注
我们一起分享AI学习与发展的干货
【编程语言|跨过编程入门门槛,从写一首“代码诗”开始】欢迎关注全平台AI垂类自媒体 “读芯术”