前言


    Web application 已经不再是简简单单的HTML页面,它已经变得十分的富有(就是大家通常说的富客户端),具有强大互动性的应用能够带来更好的用户体验。如今的Web application给我们开发人员带来很大的机会,然而,你如何才能创建从服务端下载速度更快、能跨浏览器、高效的JavaScript 代码?

Closure Tools 帮助开发人员使用web开发工具创建强大高效的富客户端Web application。Closure Tools包括:

JavaScript优化器(A JavaScript optimizer)
JavaScript加强库(A comprehensive JavaScript library)
Java&JavaScript模板系统(An easy templating system for both Java & JavaScript)
JavaScript风格检查工具(A JavaScript style checker and style fixer)
增强版样式表语言(An enhanced stylesheet language)

Java&JavaScript模板系统

  首先我将重点介绍Java&JavaScript模板系统– Closure Templates。

Closure Templates简化动态生成HTML的工作量,它语法简单很容易掌握。相对于传统的模板系统,Closure Templates摒弃了使用一个页面一个(大)模板,而是针对一个一个的小组件使用(小)模板,如此可以复用。同样你可以使用build-in信息来支持简单的国际化工作。Closure Templates 由Java 和JavaScript实现,因此你可以使用在客户端或者服务端使用相同的模板。客户端方面,Closure Templates被预编译为高效的JavaScript代码。

使用Closure Templates 的有点如下:

1. 方便性,Closure Templates提供一个简单的方法为你的应用的用户界面(UI)创建HTML,从而帮助你将你的应用逻辑和显示分离。

2. 复用性,Closure Templates支持JavaScript和Java,因此可以在客户端和服务短的代码中使用同一个模板

3. 提升客户端运行速度,Closure Templates被编译成高效的JavaScript方法用来最大化提升客户端性能。

4. 可读性,你可以清楚地根据模板的代码看到输出的HTML结构,内嵌的翻译信息同样具有很好的可读性。

5. 工具而并非框架,在任何web application 环境(库,框架或者其他工具)下都能很好的工作。

6. 安全性,减少XSS风险

7. …

参考链接


https://developers.google.com/closure/?hl=zh-TW 

转载于:https://www.cnblogs.com/youngC/archive/2012/10/15/2724147.html

[JavaScript Java] 初识Closure Tools(一)相关推荐

  1. java系列课程第一天(软件安装规范、java初识)

    Day_01 软件安装规范.java初识 1.打字练习 每天坚持打字,把打字速度提高的180以上 https://dazi.kukuw.com/ 2.安装规范 磁盘分类,方便管理 根据提示下一步,一直 ...

  2. Google公开其JavaScript工具:Closure Compiler

    Google Code官方博客今日开源了一个Google内部使用的JavaScript工具:Closure Compiler.这个工具在Google的Gmail,Google文档和Google地图中都 ...

  3. Java Machine Learning Tools Libraries--转载

    原文地址:http://www.demnag.com/b/java-machine-learning-tools-libraries-cm570/?ref=dzone This is a list o ...

  4. swift golang java,解决两数之和 (Javascript, Java, C#, Swift, Kotlin, Python,C++, Golang)

    解决两数之和(Javascript, Java, C#, Swift, Kotlin, Python,C++, Golang) 给定一个整数数组,返回两个数字的索引,以便它们加起来成为一个特定的目标. ...

  5. (转)深入理解Javascript闭包(closure)

    深入理解Javascript闭包(closure) 一.什么是闭包?        "官方"的解释是:所谓"闭包",指的是一个拥有许多变量和绑定了这些变量的环境 ...

  6. 个人知识整理(javascript篇初识)

    个人知识整理(javascript篇初识(简介 书写方式 注释)) 一个小前端~突然想写点什么-算是梳理一下自己的知识吧 Javscript 简介 浏览器本身并不会执行JS代码,而是通过内置 Java ...

  7. eclipse中jsp文档无语法着色,安装Eclipse Java Web Developer Tools插件

    一.安装Eclipse Java Web Developer Tools插件 1.eclipse菜单:help/install New Software,打开Available Software窗体: ...

  8. Java —— 初识集合

    Java -- 初识集合 每博一文案 我们一生可能会遇到一个人,一路相遇,相知相爱,却注定不能相守, 可即使没有结果,也足够我们从中汲取力量,奔赴下一场山海了. 正如村上春树的这句话,我告诉你,我喜欢 ...

  9. The archive: F:/soft/java/jdk-8u31-windows-x64/lib/tools.jar which is referenced by the classpath,

    解决: The archive: F:/soft/java/jdk-8u31-windows-x64/lib/tools.jar which is referenced by the classpat ...

最新文章

  1. linux驱动:TI+DM8127+GPIO(三)之omap_hwmod中添加GPIO资源
  2. android 自定义图片容器,Android应用开发中自定义ViewGroup视图容器的教程
  3. 使用Java消费API的一个错误消息PKIX path building failed以及解决方案
  4. [Linux]NIS: 集中化认证服务
  5. PS如何生成svg代码格式的path路径 - PS技巧篇
  6. Android Animation学习(三) ApiDemos解析:XML动画文件的使用
  7. 关于struts2 中result type=stream
  8. lambda List实现某列去重的解决方案采用扩展方法
  9. 【万用表识别】基于matlab数字仪表识别【含Matlab源码 693期】
  10. 批量查找修改替换多个 Word 文件中的关键字,也支持修改替换 Excel、PPT、PDF 和记事本文本文件
  11. DSP技术:基于TMS320F28027芯片的温度测量系统
  12. 计算机视觉知识点-人脸对齐
  13. 远程教育英语和计算机难吗,网络教育英语统考难么?
  14. SHINE OPENCART 自适应 多用途主题模板 ABC-0021
  15. 物联网驱动数字化转型
  16. ctf之crypto练习二
  17. (12)WLAN体系结构及各层的主要功能
  18. BZOJ3118 : Orz the MST(对偶费用流)
  19. php怎么改北京时间,php如何设置北京时间
  20. 蚂蚁研究员玉伯:做一个简单自由有爱的技术人

热门文章

  1. matlab的实用与仿真,MATLAB建模与仿真实用教程
  2. 045_Collapse折叠面板
  3. 005_FreeMarker入门程序
  4. 030_html脚本
  5. mysql 同一张表 某个字段更新到另一条数据上_面试基础:数据库MySQL基础入门(下)...
  6. git 提交代码命令_Git命令可视化展示,代码管理再也不愁了,建议收藏!
  7. android 屏保_Mac视频屏保随心换!
  8. sharedpreferences 重启不保存_MMKV为什么可以替换SharedPreferences
  9. Java设计模式(十八):享元设计模式
  10. Java设计模式(二):观察者设计模式