从配置文件到各种计算机语言:扩展

1 配置文件
为什么会有配合文件?
配置文件依赖于功能,理论上说只要有功能就可以有相关的配置文件,配置文件可以增加功能的灵活度,以修改配置文件文本的方式,来达到修改功能的目的。能使程序在多种环境下,拥有更合适的功能和效率。

什么算配置文件?
从Linux下的/etc目录下的文件,jvm的java命令的启动参数,到Spring的applicationContext.xml文件,再到app中一般放到数据库的首页配置项,都算配置文件的表达形式。

配置文件的运行原理?
配置文件是纯文本数据,单独的配置文件不具备任何功能,必须配合相应的程序代码才能发挥作用。过程一般是: 程序读取配置文件,解析出相关属性值,赋值给程序中的变量,由此配置文件在程序中发挥作用。
依赖于过程性语言生成的程序.

配置文件储存内容的格式?
程序如果想比较容易读取解析配置文件中内容,配置文件需要有比较规范的格式。例如:xml,.properties,json,数据库关系表,这些格式各有各的好处,但共同点是“键值对”。

配置文件的特点?
扩展功能幅度小,只限定规定的功能的增加,修改.
规则范式简单,语法简单:配置文件针对专门的功能设定,即针对性比较强,由此不需要复杂的规则范式。




2 描述性语言


为什么会有描述性语言:
配置文件也有描述功能,例如配置文件描述功能有限,如果比较灵活的或比较专业的,不易描述.

哪些属于描述性的语言?
html:描述web页面的架子长什么样(配置文件常用xml,html可以算xml一种为了适合描述页面而做的优化)
CSS:修饰web页面
正则表达式:描述匹配的字符串的样子(此处可以想想如果不用正则,用xml怎么描述一个想要的字符串)
sql:描述想要哪些数据

运行原理?
和配置文件类似,相关执行引擎,读取语言文件,逐块解释内容
依赖于执行引擎

相关特点?
对功能的扩展增大,但依然无法创造功能
语法已经比较灵活

和配置文件比较?
配置文件 对应 相关功能 , 语言 对应  执行引擎.
语言文件相对于配置文件,语法范式更加灵活,内容的语义性更强.只要明白关键字,即使不知道引擎实现,也能读懂描述意思. 配置文件不行
语言文件对功能扩展比配置文件大.灵活的语法使语言文件能使执行引擎功能强大.例如:正则能引擎描述几乎所有规则的字符串.
执行引擎 相对 配置文件的功能 更加偏向底层,实现难度更加复杂.




3 过程性语言

为什么会有过程性语言?
之前的配置文件,描述语言只是扩展功能,如果想创造新功能,就只有过程性语言了.

过程性语言有哪些?
c/c++,汇编
java,c#
js,python

运行原理?
首先会编译成二进制文件(语言不同,编译成二进制的时机不同),最终由计算机执行
依赖于编译软件(有的语言是执行引擎进行动态编译的)和计算机

相关特点?
语法特别灵活
能创造功能,功能应在计算机的功能范围之内


其实把过程性语言文件,理解为计算机的配置文件,也是比较通的.例如:计算机没有电商网站的功能,我加上这些配置文件(过程性语言),计算机就有电商功能.
只不过过程性语言作为配置文件的运行原理与前两种不同.


操作系统最初的功能只是计算,过程性语言将它扩展成拥有各种功能:娱乐,办公,服务器.配置文件使过程性语言编写的功能更加灵活.描述性语言在特殊场景下,功能强大,为过程性语言扩展计算机功能减小难度.
喜欢的关注下,万分感谢.


















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值