您的位置:首页 > 产品设计 > UI/UE

dojo:creating builds

2016-10-11 20:01 134 查看
C#在执行前会将代码编译为机器码,同样的dojo build主要用于在把代码传到客户端前,对代码进行优化处理。

基本概念

Modules and Packages

module先被组织成package,这些package依据逻辑组成了module。在dojo1.10中,每个package都有一个package.json(对这个package进行描述)。许多package都有一个package.js文件,提供了针对dojo的build信息。

Dojo Configuration

从本质上来讲,dojo利用许多配置选项来配置应用程序。这个配置项不仅对于正确地运行应用程序很重要,同时也参与了应用程序的build(作为build处理的一部分)。

Layers

Layer本质是是一个javascript文件,这个文件包含了几个module和一些资源。一个layer通常是一个build的重要输出项,创建一样这样的文件让应用程序变得可配置。一个layer可以是包含了dojo引导代码的”根“layer,让dojo可以加载其他module。你所拥有的layer和layer的内容取决于应用程序和应用程序的设计,没办法说得清到底哪个是对的。

Build Profiles

Build Profiles是一些小的javascript文件,它们提供了与build处理代码相关的信息。在旧的build系统中,你可能有一个profile,在util/buildscripts/profiles路径中包含了你所需要的所有东西。在dojo1.7及以后的版本中,每个package都有一个它们自己的build profile,并且有一个”主“build profile指示构造者构造哪个package和layer,并且提供了用于优化代码的配置项(可选)。

Minification

就叫压缩率吧,就是将代码的压缩地更小,但是不影响代码功能。从效率方面来看作用很大,并且一些开发人员喜欢混淆代码(可能出于代码安全考虑吧),但是这样会给调试工作增加难度。dojo创建者提供了两个工具集,一个是shrinksafe,在dojo1.7及以前的版本只能用这个。从1.7之后,可以使用谷歌的Closure Compiler。

Dead Code Path Removal

Closure Compiler最大的一个优势是它可以对代码进行检测,删除没有什么意义的代码。

Build Controls, Transforms and Resolvers

在build体系中有几个基本的创建块。不感兴趣的可以不用看。The build control is the set of "instructions" for the build, that reads the profile and determines what transforms and resolvers need to be used. Transforms do what they logically say,
in taking something and transforming it to something else and resolvers are what are used to resolve AMD plugin modules at build time. For example if you are using dojo/text to load a widget template, the build time plugin resolver for it will read the text
and in-line it into the compressed file.

对后面的不怎么感兴趣,先写到这里,后面用到了再翻译吧。原文地址:点击打开链接
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  dojo