“Context”编程语言之义
在学习和使用各种编程语言中,我们总是提及或听到“context”的话题。最常听到的解释是context是一种“上下文”的概念。总有种说不清道不明的意味,似是而非。那么context到底是什么呢?
Context在英语的翻译是:
context
英 [ˈkɒntekst] 美 [ˈkɑːntekst]
n.
(事情发生的)背景,环境,来龙去脉;上下文;语境
Context理解为“上下文”:在编程语言中,要了解当前变量/方法的完整意义,需要从当前代码的“上下文”来查找相关定义和关联。我们知道这是编程当中定义使用变量和方法最常用的用法。在C语言中,变量和函数必须在定义(“上文”)之后的代码中应用。而在Java/PHP/Python/C++等更接近自然语言的高级编程语言中,则定义稍微宽松,变量和方法的定义可以在当前使用它的代码之前或之后可以访问的块(“上下文”)中溯源。
Context理解为“环境”:context是指定代码执行的实时运行环境。一个相同命名的变量或方法,可能具有多个定义。在实际运行环境中,我们往往需要指定一个特定的context,才能唯一确定其具体的意义。比如,相同命名的变量,可分为局部变量和全局变量。又比如,相同命名的方法/函数,在不同context环境中,运行内容结果是不相同的。甚至在相同的context环境也是不一样的,如面向对象的“多态”。Context环境又可以分为内部和外部环境。内部环境,可以理解为当前文件直观看到的集合。外部环境,相当于当前文件以外的其他文件的直观集合。如C语言的本地变量和外部变量。
Context理解为“语境”:我们知道,编程语言来自于自然语言。前人使用自然语言中的符号文字加以特定的逻辑构造了当前的各种编程语言。按理解难易、与自然语言的关联性,从难往易、从低向高的顺序排列,编程语言可以有下面的排列:
机器语言>>汇编语言>>C语言>>C++,Java,PHP,Python等等。
我们学习一种语言,会练习该语言的符号词组,进而利用语法规则掌握语句的意义。理解一个语句的含义,不仅需要把握语句的符号词组组成部分,更重要的是理解语境。语境是一个特别的事物。特定的语言情景下,相同一句话具有不同的意味。我们使用特定的符号词组按照一定的顺序表达一种语境。当我们直观地看到符合这样语法的排列组合,就能立刻联想到特定的情境。相应地,编程语言中亦具有相类似地语境--context。通过指定的context语境,我们能很快理解当前代码的意义--来源或目标。
更多推荐
所有评论(0)