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

全文共6143字 , 预计学习时长25分钟或更长
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
对很多人来说 , 学写代码很难 。 本文将通过编写与众不同且富有诗意的代码来克服学习代码最初遇到的困难 。 如果你是个JavaScript新手 , 或者是在编程学习过程中遇到了困难 , 本文介绍的方法也许可以帮到你 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
为什么学习编程这么难?以下是人们对编程很难学及JavaScript(或任何编程语言)很枯燥的一些误解:
· 代码晦涩难懂令人望而生畏 , 只有实用功能毫无乐趣;
· 代码仅适用于机器 , 人们无法与它交流或参与其中;
· 代码不算一种语言 , 因为它与一般语言的用法截然不同 , 形式上的差别也很大;
· 提到程序员 , 人们就会想到邪恶的黑客或黑客帝国的成员等刻板形象 , 因此没有认同感 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
未接触编程的人
开发人员需要以一种非常特殊的方式看待代码 , 甚至要以一种完全不同且高度逻辑化的方式来思考 。 编程语言非常严格 , 对错误零容忍 , 单个字符就可能使机器无法理解人们的意思 , 并使应用程序奔溃 。 学习编程时 , 应将之前学习人类语言时的读写规则归零(顺便说一下 , 在学习一种新的人类语言时也是如此) 。
但并非网上的编程语言、文档或视频教程都是针对“从人类语言到编程语言的转换”这一思维而编写的 。 当然 , 他们也没有必要这样做 。 毕竟 , 写代码的主要是为了告诉机器要做什么 。
鉴于此目的 , 没有机会对这两种语言进行比较 , 因此人类的语言(包括词汇和语法规则)似乎对学习编程语言毫无用处 。 JavaScript语言中没有“爱”这个词 , “我爱你 。 ”这句话在其中也没有意义 。 机器(或浏览器)根本不理解爱 。 这种“闻所未闻”、“无从下手”的感觉可能会让人感到害怕 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
第一次接触编程的人
这就是本文的意义所在 , 借助已掌握的人类语言知识 , 将JavaScript看作一种人类语言 , 以一种更容易、更具艺术性的方式来学习它 。 举个小例子来说明吧!
一个有趣的事实是 , 一些编程语言实际上已经从一种编程语言转换到另一种编程语言 。 这就是为什么掌握多种编程语言变得简单多了——只学一门编程语言就够啦 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
一个小例子例如 , 在很多情况下 , 要想运行JavaScript代码 , 需要准备好“文档”(基本上是网站 , 用户每次访问时都在下载) , 以便与HTML元素进行交互 。 在纯JavaScript语言中 , 可能会偶然发现以下内容 。
(function() { // Your code goes here})();或者有时像这样:
if (document.readyState === ‘complete’) { // Your code goes here}上述第一个代码肯定需要加以解释 , 而对第二个代码(也许需要一些想象) , 可以这样理解:满足了必需的某个条件后 , 后续步骤仅通过观察就能进行下去 。
试想这样的场景:
onceUponATime(function () { // Your code (story) goes here})连小孩都能理解“Once upon a time” (“曾几何时”)这样的内容 。 这种内容在与开发者对话(通过唤起他们的童年回忆) , 同时在理论上也能做开发 。 这就是“让人类语言转换为编码语言”的想法 。
关于“functions(函数)”的简要说明:函数基本来说是一种技能 , 在调用之前处于休眠状态 。 “To read”是function read() { …}}的一项技能 , 想读取某内容时就写成这样:read() , 就会调用才会调用该函数 。 还有一种是“匿名函数” , 即function(){ … }(没有名字 , 就像上面的代码片段那样) , 它基本上是“一次性的临时操作” , 甚至不算一种技能 , 例如“按下按钮” 。
编程语言|跨过编程入门门槛,从写一首“代码诗”开始文章插图
扭转乾坤:从信息到基础要更进一步了解这个想法 , 可将上述的原因和误解颠倒过来:
一首小诗 ,
用JavaScript语言编写 。
为人类而写 ,
讲述两个人之间的爱 。
// Love at first sightif (me.getDistanceTo(you.position) < 200) { me.setFeelings({ inLove: true, });}它不具有功能性 , 目前也不适用于机器 , 只是方便人们阅读和理解 。