---
title: Meteor 術語表
slug: meteor-vocabulary
date: 0099/01/01
number: 99
points: 1
appendix: true
contents: 介紹一些常見的 Meteor 術語
paragraphs: 24
---
#### 客戶端 Client
當我們談論客戶端時,我們指的是用戶的**網頁瀏覽器**,不論是傳統的像 Firebox 或 Safari 的瀏覽器,或是像在 iPhone 原生應用中的 UIwebView 一樣復雜的其他程序。
#### 集合 Collection
Meteor 的集合是自動在客戶與服務器之間同步的數據源。集合的名稱(比如 `posts`)通常存在于客戶端和服務器端。雖然它們表現不同,但是它們有共同的基于 Mongo 的 API。
#### Computation
Computation 就是每當響應數據源變化時而運行的代碼塊。如果你想讓一個響應數據源去響應處理(比如,Session 變量),你需要為它來設置一個 computation。
#### Cursor
Cursor 是查詢 Mongo 集合后的結果。在客戶端,cursor 不僅僅是結果的數組,也是一個*響應的*對象,對應于相關集合的添加、刪除和更新對象。
#### 分布式數據協議 DDP
DDP 是 Meteor 的分布式數據協議,用來同步集合和調用方法。DDP 的目的是作為一個通用的協議,在大數據的實時應用中起 HTTP 的作用。
#### Tracker
Tracker 是 Meteor 響應性系統。Tracker 在后臺使 HTML 自動保持與底層數據模型的同步。
#### 文檔 Document
Mongo 是基于文檔(document)的數據庫,多個文檔組成集合。它們是純 JavaScript 對象(雖然它們不能包含函數),只有一個 `_id` 屬性,Meteor 用這個屬性通過 DDP 跟蹤這些對象的屬性。
#### Helper
當模板需要渲染復雜的多于一個文檔屬性時,調用 helper 以函數方式來完成渲染任務。
#### 延遲補償 Latency Compensation
延遲補償是一種在客戶端模擬方法調用以避免等待服務器回應的一種技術。
#### Meteor Development Group (MDG)
Meteor 開發小組(MDG),開發 Meteor 的公司,區別于這個框架本身。
#### 方法 Method
Meteor 方法是一個從客戶端到服務器端的遠程調用,以一些特別的邏輯保持跟蹤集合的更改和允許延遲補償。
#### MiniMongo
客戶端的集合,是有類似 Mongo API 并存在內存的數據源。支持這種操作的庫叫做“MiniMongo”,是在內存中運行的小版本的 Mongo。
#### 代碼包 Package
Meteor 代碼包可以包含服務器端運行的、客戶端運行的 JavaScript 代碼,處理資源的說明(比如 SASS 至 CSS),處理的資源。<br/>代碼包就像一個超級庫。Meteor 自帶了很多核心代碼包,同時在 [Atmosphere](http://atmosphere.meteor.com) 集合了社區提供的第三方代碼包。
#### 發布 Publication
一個發布就是一套為每個訂閱用戶而訂制的數據。在服務器端設置發布。
#### 服務器 Server
Meteor 服務器是運行在 Node.js 之上的 HTTP 和 DDP 服務器。它包含了所有的 Meteor 庫,同時也包含了你的服務器端的 JavaScript 代碼。當 Meteor 服務器啟動時,它會連接 Mongo 數據庫(在開發模式時,會自啟動)。
#### 會話 Session
在 Meteor 中,會話指的是客戶端的響應數據源,用來跟蹤用戶所處的狀態。
#### Subscription
訂閱是為特定客戶的發布的連接。訂閱是運行在瀏覽器中的代碼,與服務器的發布對話,并保持數據同步。
#### 模板 Template
模板就是一個通過 JavaScript 生成 HTML 的方法。Meteor 默認支持 Spacebars 模板系統,但是將來也會支持其他系統。
#### 模板數據上下文 Template Data Context
當模板渲染時,它指的是 JavaScript 對象為此次渲染提供特定的數據。通常來說,對象就是純原始的 JavaScript 對象(POJO),經常也是集合的文檔,但是它們也可以變得更復雜,可擁有函數。