读书笔记:《java脚本编程:语言、框架与模式》-(1)脚本语言
2011-04-02 20:56
288 查看
脚本语言的定义很模糊,脚本语言一般是一种高级语言,在它们被执行的时候进行解释。这样,应用程序就以他们原始的形式存在于脚本中,并且这种构造由名为解释器的程序在运行时进行转换。一般而言,你是在执行解释器,它读取应用程序的语句然后执行它们。这类语言称为脚本或者动态语言。
java平台幕后的主要思想是将一个虚拟的处理器实现为一个软件组件,称作虚拟机。当我们有这样一台虚拟机时,就可以为该处理器编写和编译代码了,而不需要特定的硬件平台或操作系统。编译过程的输出称作是字节码,它实际上表示目标虚拟机的机器代码。所以,java语言是既有编译语言的特点,也有解释语言的特点,使得java平台非常特殊。
java采用的是一种混合了编译器和解释器的模型。源代码首先被编译成一些中间代码,随后它们得到解释。通常,这个中间代码都设计得非常紧凑。而且,这种语言没有绑定于任何特定的机器,它是针对虚拟机设计的,可以在软件中实现。这种混合方法是一种折衷,有以下两个特点:
因为字节码是优化且紧凑的,与纯解释语言相比,解释工作的耗费被减到了最少;
解释语言的平台独立性是继承于纯解释语言的,因为中间代码可以在包含适当虚拟机的任何主机上执行
类型策略,一般可以分为动态类型和静态类型,强类型和弱类型。脚本语言一般为动态类型。
传统编程语言一般在编译时进行类型检查,这就是典型的静态类型。类型错误会在编译时发现。
动态类型的语言,一般是在运行时进行类型检查,当试图执行到有问题的代码时,会触发一个运行时错误。
强类型语言,当程序员试图在其类型不适合该操作的变量中执行一个操作时,类型误用,强类型语言会出现错误。比如python。
弱类型语言,会隐式地进行适当的类型转换。比如JavaScript。
大部分的脚本语言都提供了常用的数据结构,比如list、set、map等,作为这些语言的原生数据类型。这些常用数据结构的支持提高了开发人员的生产力。
java平台幕后的主要思想是将一个虚拟的处理器实现为一个软件组件,称作虚拟机。当我们有这样一台虚拟机时,就可以为该处理器编写和编译代码了,而不需要特定的硬件平台或操作系统。编译过程的输出称作是字节码,它实际上表示目标虚拟机的机器代码。所以,java语言是既有编译语言的特点,也有解释语言的特点,使得java平台非常特殊。
java采用的是一种混合了编译器和解释器的模型。源代码首先被编译成一些中间代码,随后它们得到解释。通常,这个中间代码都设计得非常紧凑。而且,这种语言没有绑定于任何特定的机器,它是针对虚拟机设计的,可以在软件中实现。这种混合方法是一种折衷,有以下两个特点:
因为字节码是优化且紧凑的,与纯解释语言相比,解释工作的耗费被减到了最少;
解释语言的平台独立性是继承于纯解释语言的,因为中间代码可以在包含适当虚拟机的任何主机上执行
类型策略,一般可以分为动态类型和静态类型,强类型和弱类型。脚本语言一般为动态类型。
传统编程语言一般在编译时进行类型检查,这就是典型的静态类型。类型错误会在编译时发现。
动态类型的语言,一般是在运行时进行类型检查,当试图执行到有问题的代码时,会触发一个运行时错误。
强类型语言,当程序员试图在其类型不适合该操作的变量中执行一个操作时,类型误用,强类型语言会出现错误。比如python。
弱类型语言,会隐式地进行适当的类型转换。比如JavaScript。
大部分的脚本语言都提供了常用的数据结构,比如list、set、map等,作为这些语言的原生数据类型。这些常用数据结构的支持提高了开发人员的生产力。
相关文章推荐
- 读书笔记:《java脚本编程:语言、框架与模式》-(2)jvm内部的脚本语言
- java脚本编程 语言、框架与模式
- (一)Android框架中的设计模式(读书笔记)
- Lua脚本语言中字符匹配模式详解
- Go语言中Restful模式与Routes路由框架
- 【脚本语言系列】关于Python网络通讯Twisted网络框架,你需要知道的事
- 使用Jena RDF API 开发脚本语言管理资源描述框架模型
- Jquery如何序列化form表单数据为JSON对象 C# ADO.NET中设置Like模糊查询的参数 从客户端出现小于等于公式符号引发检测到有潜在危险的Request.Form 值 jquery调用iframe里面的方法 Js根据Ip地址自动判断是哪个城市 【我们一起写框架】MVVM的WPF框架(三)—数据控件 设计模式之简单工厂模式(C#语言描述)
- 【脚本语言系列】关于Python实现网络模式发布-订阅,你需要知道的事
- 框架计划随笔 三.EntityFramework在传统事务脚本模式下的使用
- 读书笔记-贰-《网站设计结构-有效的交互设计框架和模式》
- 【深入PHP 面向对象】读书笔记(二十二) - 企业模式(七) - 业务逻辑层与事务脚本
- 《网站设计解构-有效的交互设计框架和模式》读书笔记
- QLExpress脚本语言技术讲解(4)------扩展QLExpress来管理spring的bean,写出简单的脚本语言框架
- yii框架下 i18nDemo 模式 网站多种语言切换
- 【脚本语言系列】关于Python设计模式,你需要知道的事情
- 【脚本语言系列】关于Python基础知识设计模式,你需要知道的事
- 写一个FrameWork(框架)程序和写一个脚本语言之间的异同
- 自动化测试脚本语言-Python 读书笔记
- 简易模式脚本语言(PS)设计