配置、脚本和编程语言,看似很不相同,其实本质上是一样的东西。这点从Ant脚本可以看出来,它基于的XML是配置所采用的流行格式。同时Ant脚本里有量,有函数,能循环和逻辑判断,已经具备编程语言的基本要素了。
程序像一个水桶,边界条件的约束就像桶边,有了边才能盛水。编程就像箍桶。但通常我们不把桶做成三维密封的圆柱体,顶上留口,以便水进出。编程也一样,为灵活性考虑,我们通常会让某些条件开放着,留待部署时配置。我们通常对这种灵活性认识深刻。
程序又可被看作是一个数学命题。命题通常先题设,再推断。程序也有像题设一样的“边界条件”,比如用什么算法,内存组织,持久化策略,具体到数据库的url。编程就是用配置、脚本或语言,为所有条件给出具体约束,最后程序才能工作。所以这三者或都可以定义为定义程序边界条件的语法集合,区别只在简单复杂而已。这说明,这三者之间并非不可逾越。它们是什么,不在于组织形式—并非XML文件就一定是配置文件,而在于语法集合本身—如果希望用配置定义像算法内部实现一样复杂的流程,那么配置就会变成复杂的编程语言,即便它以XML的形式组织。
所以在实践中,有必要时时保持警惕,避免把配置定义得过于复杂。我曾经有两次开发经历,有把配置脚本化的倾向,最终还是抵挡住了这种诱惑。
不过于复杂的原因,我还是从成本来考虑的。
|
实现成本
|
学习使用成本
|
配置
|
配置导入模块
|
低。有限的参数,可以手工配置。
|
脚本
|
脚本解析器
|
高。复杂的语法集合,需要有界面辅助配置
|
语言
|
编译器
|
高。全集,需要有IDE
|
当然,我们也许会觉得这世上脚本和语言多得是,而且不乏人开发,多我一个也不多啊!还是用数学命题打比方吧。命题有公理、定理和推论等。世上发明公理定理的牛人是不辈出的。大多数人不过是拿着推论搞应用。我见过朴实的农民拿着厚厚的稿子来大学找教授的,但绝大多数是初中生证明哥德巴赫猜想似的例子。所以像你我这样的普通程序员,如果碰到了发明自己的脚本甚至语言的机会,提醒一下自己是不是幻觉,还是有现实意义的。当然配置脚本化这样极端的情况不会经常发生的,但基于此,处处提醒自己不要让配置太复杂,也有好处。
最后谈谈关于咋做的一些经验之谈。要避免让程序配置长得太过复杂,首先每次往文件里塞一条新的配置之前,都要先问问自己:这样做有必要吗?或者当配置复杂到将要超出自己控制的时候,就要选择“立定,向后转”,失控的标志通常就是配置需要定义流程控制,循环等。
对于模块和规模不大的程序而言,简单的配置+接口回调,可以用来抵挡配置脚本化的趋势。简单的边界条件用配置,复杂的则仍然在接口实现里用代码定义。这样对于使用者而言,学习配置格式的代价有限,而写接口实现代码的语言则应该是早为他们所熟悉的C/C++或Java等。
分享到:
相关推荐
以下是对TCL脚本语言编程和TCL语言教程的一些关键知识点的详细说明: 1. **基本语法**:TCL的语法简洁明了,以空格和换行符作为语句分隔。命令通常由关键字和参数组成,不区分大小写。例如,`puts`命令用于打印输出...
总的来说,《TCL脚本语言编程》是一本全面介绍TCL语言和expect扩展的实用指南,对于想要提升运维自动化能力的读者来说,它提供了丰富的学习资源。通过阅读本书,你不仅可以掌握TCL的基本语法,还能熟练运用expect...
UR机器人的编程主要使用URscript这种专用的脚本编程语言。URscript功能强大,能够方便地集成到机器人的控制系统中,使其可以根据用户需求完成一系列动作。 URscript语言为用户提供了丰富的控制命令,这些命令可以...
VB脚本是基于Microsoft的Visual Basic编程语言的一个轻量级、解释型的版本,广泛应用于Web开发和自动化任务。在SIMATIC WinCC中,VB脚本可以用来创建交互式的用户界面,响应用户的操作,处理数据,以及与PLC(可编程...
《TCL脚本语言编程》这本书可能是为初学者设计的,旨在帮助读者掌握TCL的基础知识和应用技巧。 TCL的核心特性包括简洁的语法、动态类型和内置的字符串处理能力。其语法结构相对简单,使得学习曲线较平缓。例如,...
总的来说,脚本语言编程是Web开发的核心技能之一,VBScript和JavaScript作为两种常见的脚本语言,各有其特点和用途。通过此类实验,学生可以更好地理解和应用这些语言,提升自己的Web开发能力。
4. **网页脚本编程与调试**:在HTML页面中嵌入VBScript和JavaScript代码,可以实现动态效果和用户交互。学生需要学会如何在Dreamweaver中编写和调试这些脚本,利用预览功能检查代码的正确性。 实验内容涵盖以下任务...
随着时间的推移,TCL逐渐发展成为一个通用的编程语言,广泛应用于系统管理、GUI开发、网络设备配置、科学计算以及嵌入式系统等多个领域。 **1. TCL基本语法** TCL的语法非常简洁,变量声明无需类型,直接通过等号...
易语言是一种专为中国人设计的编程语言,它以简明直观的中文语法,降低了编程的门槛,使得更多非计算机专业的人也能快速上手编程。在本压缩包中,"易语言自动获取配置脚本生成脚本"是一个用易语言编写的程序,用于...
在深入探讨TCL脚本语言编程之前,我们先来了解其基础概念。 1. **语法结构**:TCL的语法相对简单,主要由命令、变量、控制结构和函数组成。命令是TCL的核心,例如`puts`用于输出信息,`set`用于定义和赋值变量。TCL...
脚本语言编程是Web开发中的基础技能,主要涉及两种在本实验中被提及的语言:VBScript和JavaScript。这两种语言在Web页面中常用于实现交互性和动态功能。 VBScript是一种微软开发的轻量级脚本语言,主要应用于...
VBScript是一种轻量级的、解释型的编程语言,广泛应用于网页交互、系统管理和自动化任务执行等领域。 在Windows环境中,VBScript与WScript或CScript解释器配合,可以实现丰富的功能。通过学习VBScript,开发者能够...
8. **实际应用案例**:书中可能包含了大量的实战示例,涵盖系统管理、用户配置、网络配置、性能监控等多个方面,帮助读者理解并掌握脚本编程的实际运用。 9. **故障排查与调试技巧**:介绍如何定位和解决脚本运行中...
学习Windows脚本编程,你需要掌握基本的脚本语言语法,理解如何利用WSH和其他脚本宿主执行脚本,以及熟悉WMI、ActiveXObject等高级技术。此外,了解如何调试脚本和解决运行时错误也非常重要。通过实践,你可以编写出...
***技术:组件对象模型(Component Object Model,简称COM)是一种标准的互操作性规范,它允许不同的编程语言和组件之间的交互。COM的基础设施是COM对象,它封装了操作(方法)、数据(属性)和状态,并通过引用计数...
从给定的文件标题、描述、标签以及部分内容中,我们可以提炼出关于Lua脚本编程语言的重要知识点,这些知识点覆盖了Lua的基本概念、特点、应用场景以及其与其他编程语言的关系。 ### Lua脚本编程语言简介 #### 核心...
脚本编程在Windows环境中,主要涉及的是批处理文件(Batch Scripting)和VBScript或JScript等更高级的脚本语言。Windows 2000系统中,这些脚本语言是系统管理的重要工具,能够自动化执行日常维护、系统配置和故障...
《Windows 脚本编程核心技术精解》的光盘资源包含了一系列有关Windows脚本编程的实践教程和示例代码,是深入理解这一领域的宝贵资料。Windows脚本编程是一种利用脚本语言实现自动化任务的技术,主要应用于系统管理、...
通过VBS(Visual Basic Script)和VBA(Visual Basic for Applications)脚本编程,用户可以自定义WinCC的功能,实现更灵活、高效的系统控制。 VBS是一种轻量级的脚本语言,它基于Visual Basic语法,无需编译即可...
【标题】"sii9022 配置脚本...总之,"sii9022 配置脚本"涉及到的核心技术是RFID设备的配置管理,包括理解RFID协议、硬件接口、编程语言以及实际的设备操作和测试。掌握这些知识对于实现高效、可靠的RFID系统至关重要。