Ionic开发词汇表
http://ionicframework.com/docs/v2/resources/what-is/
Android SDK
Android SDK是构建Google Android平台的开发套件。包含了编译,测试,调试Android程序等工具。
Annotations(注解)
Annotations
用来给类添加元数据。TypeScript
通过添加Annotations
扩展了ES6
。你可以自定义你的Annotations
,Ionic
经常使用Angular2
提供的两个Annotations
:@Component
和 @View
。
Autoprefixer
Autoprefixer是一个方便Sass/CSS编码而添加特定前缀的工具。这将确保你写的标准CSS规则可以被所有的浏览器所支持。例如,你不需要知道所有的浏览器所用的flexbox
语法,Autoprefixer
让你只写一个display: flex;
就可以了,它会自动转换成正确的CSS。
Babel
Babel是一个下一代JavaScript编译器。目前的浏览器不支持下一代JavaScript(ES6)的所有特性。Babel通过将ES6代码转译成ES5代码,这样所有的浏览器就可以很好的理解并运行了。
Browserify
Browserify是一个代码打包工具,类似webpack,可以分析项目中的所有代码并打包到一个文件里。
Bundling
Bundling是一个解析依赖(代码中使用了npm模块)的过程,将它们编译/转译到一个文件中。
CLI
CLI或者叫命令行,是与程序交互的接口。Mac用户经常称之为Terminal,Windows用户一般称之为命令行窗口。Ionic社区也经常用来称呼Ionic CLI。Ionic CLI可以用来做很多事情,比如创建应用,启动开发服务器,或访问Ionic Services。
CommonJS
CommonJS是一组JavaScript API的标准定义,定义了JavaScript模块和包的标准。
Cordova
Cordova是将标准的HTML/CSS/JS转换成原生应用的工具。它提供了使用JavaScript API来访问原生设备功能,如摄像头、加速计等。Cordova包含打包iOS、Android、Windows Phone的必要工具。
Decorators
Decorators是返回一个函数的表达式,可以使用一个现有的函数并扩展它的行为。使用TypeScript,你可以装饰类或参数。当装饰一个类的时候,你将封装并扩展它的构造函数的行为。换句话说,装饰器将在构造函数被调用的时候添加一些功能,并返回原始的构造函数。当你装饰一个参数的时候,你将封装将要传递进来的参数。换句话说,装饰器将给传递进来的参数添加一些功能,并返回原始的参数。
ES5
ES5即EcmaScript第五个版本。这个版本也是开发者目前最熟悉的版本。
ES2015/ES6
ES2015/ES6是最新的JavaScript版本的两个名字。这个版本加入了很多新特性,如类,模块,迭代器和Promise等。ES6最终版本已经发布,这意味着实际上ES6代码将会被浏览器直接执行。但是今天要使用ES6的话,必须由一些工具如Babel、TypeScript等将其转译成ES5代码才能被浏览器正确识别。
ES2016/ES7
ES2016/ES7是下个实验性的JavaScript版本。这个版本将会添加更多新特性,如异步等。这个版本目前还在继续修订,所以还不适合用到生产环境中。
Genymotion
Genymotion是一个第三方Android模拟器。它非常快,很适合用来快速调试Android应用。可以参考开发者小贴士一节中的相关信息。
Git
Git是一个代码管理的版本控制系统。可以让开发者进行团队开发并避免代码冲突。
Gulp
Gulp是一个用来构建应用的任务管理工具。一般的构建任务包括将ES6转译成ES5,将Sass转换成CSS,压缩代码,打包文件等。
Imports
ES6中使用了新的模块。模块内的内容不再是全局性的,如果要使用必须先Import(引入)进来。这将很容易理解某个功能是从哪个模块中来的。
Ionicons
Ionicons是一个开源的图标库,由Ionic创建。它包含了iOS,Material Design,及社交图标。默认的Ionic应用都包含了Ionicons,这些图标也可以用在其他任何项目中。
Karma
Karma是一个在真实的浏览器中进行测试的工具。它可以使用任何开发框架开发的测试代码,只是在浏览器中运行它们。最开始是为Angular1开发的。
Module
模块是比较小的,独立的可以重用的代码块,独立于其他的模块和全局范围。
Live Reload
Live Reload是一个监测到更改后自动在浏览器中重载页面的工具。它监控指定的路径,任何时间如果某个文件或目录被更新,它将触发整个浏览器重载的动作。当CSS被更改的时候,它只更改新的CSS文件,并不会重载整个页面。
Node
Node是一个可以使用JavaScript开发服务端的运行环境。除了可以用来开发web service,Node还经常被用来构建开发工具,如Ionic CLI。
NPM
NPM是Node的包管理工具。可以用来安装,分析,打包node模块。Ionic可以用NPM进行安装,并同时安装它的依赖。
Observable
Observable是一个可以触发事件或通知的对象。Observer是监听这些事件的对象,当收到事件的时候会做一些处理。这是一种处理异步编程的机制(观察者模式)。
Polyfill
Polyfill是一小段代码,用来给留起来添加功能,抹平浏览器的差异。它很shim很像,但shim有自己的API,Polyfill可以让你使用浏览器能理解的API。
Protractor
Protractor是Angular团队开发的测试框架,类似Karma。
Sass
Sass是Ionic使用的一种样式表,可以转换成CSS。Sass很像CSS,但是有一些扩展的特性,如变量,mixins,循环等。
Shim
Shim是一小段代码用来抹平浏览器的差异。Shim有自己的API用来处理不同浏览器之间的差异。
SystemJS
SystemJS是一个模块加载器(类似RequireJS),可以加载所有的模块格式——AMD,CommonJS,ES6等,它建立在ES6 Module Loader polfill之上。
Transpiler
Transpile意味着从一种语言转换成另一种语言。一般来说转译器将一种高级语言转换到另一种高级语言。Ionic经常在转换ES2015/ES6或TypeScript到ES5的时候使用这个词。
TypeScript
TypeScript是JavaScript的超集,你可以使用JavaScript,也可以使用很多高级特性如类型声明,接口等。虽然Ionic是用TypeScript开发的,但并不是一定要选择TypeScript来开发。
单元测试
单元测试是一种测试小段代码的方式,确定代码是否符合期望的结果。单元测试框架有Jasmine,Mocah,QUnit等。
Webpack
Webpack将JavaScript模块和其他资源打包到一起。可以用来创建单个或多个支持延迟加载的包。你可以用它将许多文件和依赖打包到一个文件中,或是你喜欢的任何方式。
XCode
XCode是开发iOS应用的IDE,包含构建,测试,调试的工具。许多Ionic开发者并不把它当做主要的编辑器,一般用来构建应用和对最终产品进行签名。