Open edX Architecture Open edX 架构 Open edX is a web-based platform for creating, delivering, and analyzing online courses. It is the software that powers edx.org and many other online education sites. Open edX 是一个可以生成、发布、分析在线课程的基于 web 的平台。 该平台为 edx.org 等其他在线教育网站提供软件框架。 This page explains the current architecture of the platform at a high level, without getting into too many details. We also describe where we are actively working on making changes. 本文主要概括性的描述了 Open edX 现有技术架构,不包含更为细致的技术内容。 同时,我们也描述了我们目前主要工作集中在何处。 Technologies 技术 Almost all of the server-side code in Open edX is in Python, with Django as the web application framework, using Mako templates. 平台服务端源代码主要基于 Python 编写,同时在 Web 应用层框架基于 Django框架下的 Mako 模版系统开发。 The browser-side code is written primarily in JavaScript. Some of the code is written in CoffeeScript, and edX is working to replace that code with JavaScript. Parts of the client-side code use the Backbone.js framework, and edX is moving more of the codebase to use that framework. 系统前端主要基于 JAVAScript 编写。一些前端代码基于 CoffeeScript 编写,我们目前也正在致力于将 CoffeScript 部分用 Backbone.js 框架进行重写,同时计划将更多的代码库用 Backbone.js 进行替换。 Open EdX uses Sass and the Bourbon framew ork for CSS code. Open edX 使用 Sass 和 Bourbon 框架编写 CSS 代码。 图 1.1 Open edX -CMS-LMS 系统技术架构图 Components 组件 There are a handful of major components in the Open edX platform. Where possible, these communicate using stable, documented APIs. 这里介绍 Open edX 平台几大主要组件,和一些必要的已经稳定的功能 API 接口。 Select the diagram to the right to view a larger image of the...