Web 应用安全代码生成
1. 开发者友好目标
在介绍具体方法之前,我们先列出一些对于基于语言的新方法在开发者社区获得认可至关重要的目标。
- 宿主语言相关目标
- 所提出的概念不应依赖于特定宿主语言的特性,而应适用于过程式和面向对象编程语言类别中的任何编程语言。
- 概念的实现不应深刻改变宿主语言,仅应影响直接处理嵌入式代码组装的宿主语言方面。
- 嵌入式语法创建相关目标
- 计算机语言的特定设计基于语言创建者选择的一组范式。为宿主语言内组装嵌入式语法的机制应尽可能模仿嵌入式语言。若语言集成需要对嵌入式语法进行深刻更改,很可能会违反语言的原始设计范式,还会给熟悉原始嵌入式语言的开发者带来大量培训工作。
- 字符串操作(如字符串连接、拆分或搜索替换)在语法组装中是强大工具,新引入的方法应紧密模仿字符串类型的功能和灵活性。
2. 关键组件
我们提出一种可靠的方法来组装嵌入式语言语法,其中所有代码语义都被明确创建,并严格分离数据和代码。为此,需要向宿主语言及其运行时环境引入三个关键组件:
- 数据类型 :引入一种新的数据类型 ELET(Embedded Language Encapsulation Type),用于组装和表示嵌入式语法,并根据开发者意图保证数据和代码的严格分离。
- 语言集成 :在宿主语言中添加合适的方法,使开发者能将嵌入式语法传递给 ELET 数据类型,且这些方法不应显著改变嵌入式语言的语法。
- 外部接口
基于ELET的Web安全代码生成
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



