Xblock核心库
xblock-openedx的Python项目详细描述
部分"edx代码"部分` ` ` ` ` ` ` edx代码` ` ` ` ` edx代码` ` ` ` `
http://code.edx.org//
xblock课件组件`;
xblock是由edx.org为xblock课件组件制作课件。
Xblock API的一个版本,用于收集API潜在用户的输入。我们喜欢这里的内容,但对
更改的建议持开放态度。我们将很快在edx lms中实现这一点。
此repo包含实现xblocks的核心代码。
background
----
edx课件由分层组合的组件构成。
这些组件包括视频播放器等组件。`lon-capa问题,以及
作为复合成分,如学习序列。我们正在为这些组件开发一个称为xblocks的第二代api。尽管他们处于原型阶段,但我们喜欢这个api,并希望与其他人合作,将其开发为行业标准。这是我们提议的API和Xblocks规范。_ lon-capa:http://www.lon-capa.org/
在高级别上,xblocks是一个python
语言级api,它为存储
数据等提供了合理的默认值。xblock可以封装在lti中,也可以生成lti xblock。编写xblock的核心原因是它是可部署的。你可以给我们一个xblock的
代码,我们可以把它嵌入到我们的课件中。LTI将要求您
给我们一个运行它的虚拟机映像。
…_学习工具互操作性:http://www.imsglobal.org/toolsinteroperability2.cfm
…_ scorm:http://scorm.com/scorm explained/
安装
----
此代码在python 2.7上运行。如果您喜欢使用python 3,那么xblock中有一个fork
提供python3支持,但是edx还不支持这个fork
1。获取此回购协议的本地副本。
2。(可选)创建并激活要在其中工作的虚拟机。
3。安装需求并向注册xblock入口点(如果不使用virtualenv,您可能需要sudo):
$pip install-r requirements.txt
……_提供python 3支持的一个xblock分支:https://github.com/singingwolfboy/xblock/tree/py3
覆盖范围内的套件:
$coverage run-m nose
以执行测试。然后要查看覆盖率报告:
$coverage report
有关更多信息和选项,请参阅"coverage.py"文档。
……_ coverage.py:http://nedbatchelder.com/code/coverage/
style testing
----
我们使用两个工具--``pylint``和``pep8``来管理此repo中所有python文件的代码质量和样式。我们的目标是始终保持零报告的pylint
和pep8冲突。
在单个文件上运行这些工具:
$pylint path/to/file.py
$pep8 path/to/file.py
我们不遵守所有Pylint和PEP8违规行为。通过查看"pylintrc"和"setup.cfg"的内容,可以检查我们忽略了哪些冲突。在发出pull
请求之前,您应该使用这些工具检查您的代码,以确保您的分支不会添加任何新的质量冲突。_ pylintrc:https://github.com/edx/xblock/blob/master/pylintrc
。_ setup.cfg:https://github.com/edx/xblock/blob/master/setup.cfg
您可以在pushin之前自动运行这些测试g通过激活"pre-push"脚本将代码发送到github(并在travis中运行
ln-s../。/script/pre-push
xblock sdk存在于单独的存储库中。sdk包含一些有用的工具,用于
开发您自己的xblock,例如模板xblock生成器、示例xblock
,这些工具演示了xblock的功能。
您可以在它自己的存储库中找到它:https://github.com/edx/xblock sdk
https://xblock.readthedocs.org.
在docstrings中,我们试图弄清楚代码所在的层,尽管有时行是模糊的:
1。**xblock**示例xblock代码。这是最重要的,它是大多数第三方将要编写的
代码,并演示xblock
接口。**运行时**我们认为对所有运行时都是通用的运行时代码。
这是edx为使xblock工作而编写的后台代码。
这一层可能不是真正的代码,但我们需要编写真正的代码来执行这些功能。
g Xblock可以很简单地创建一个python类,只需使用一些特定的方法。
Xblock sdk:https://github.com/edx/Xblock sdk
license
----
WISE
注意。
请参阅"license.txt"了解详细信息。
最简单的方法是分叉此repo,然后从分叉发出拉取请求。第一次发出请求时,您可能会被要求签署贡献者协议。
--————
请不要公开报告安全问题。请发送电子邮件至security@edx.org
packaging
----
ps://github.com/warner/python versioner)
|构建状态图像::https://travis-ci.org/edx/xblock.svg?branch=master
:目标:https://travis ci.org/edx/xblock
…|覆盖状态图像::https://coveralls.io/repos/edx/xblock/badge.svg
:目标:https://coveralls.io/r/edx/xblock
http://code.edx.org//
xblock课件组件`;
xblock是由edx.org为xblock课件组件制作课件。
Xblock API的一个版本,用于收集API潜在用户的输入。我们喜欢这里的内容,但对
更改的建议持开放态度。我们将很快在edx lms中实现这一点。
此repo包含实现xblocks的核心代码。
background
----
edx课件由分层组合的组件构成。
这些组件包括视频播放器等组件。`lon-capa问题,以及
作为复合成分,如学习序列。我们正在为这些组件开发一个称为xblocks的第二代api。尽管他们处于原型阶段,但我们喜欢这个api,并希望与其他人合作,将其开发为行业标准。这是我们提议的API和Xblocks规范。_ lon-capa:http://www.lon-capa.org/
在高级别上,xblocks是一个python
语言级api,它为存储
数据等提供了合理的默认值。xblock可以封装在lti中,也可以生成lti xblock。编写xblock的核心原因是它是可部署的。你可以给我们一个xblock的
代码,我们可以把它嵌入到我们的课件中。LTI将要求您
给我们一个运行它的虚拟机映像。
…_学习工具互操作性:http://www.imsglobal.org/toolsinteroperability2.cfm
…_ scorm:http://scorm.com/scorm explained/
安装
----
此代码在python 2.7上运行。如果您喜欢使用python 3,那么xblock中有一个fork
提供python3支持,但是edx还不支持这个fork
1。获取此回购协议的本地副本。
2。(可选)创建并激活要在其中工作的虚拟机。
3。安装需求并向注册xblock入口点(如果不使用virtualenv,您可能需要sudo):
$pip install-r requirements.txt
……_提供python 3支持的一个xblock分支:https://github.com/singingwolfboy/xblock/tree/py3
覆盖范围内的套件:
$coverage run-m nose
以执行测试。然后要查看覆盖率报告:
$coverage report
有关更多信息和选项,请参阅"coverage.py"文档。
……_ coverage.py:http://nedbatchelder.com/code/coverage/
style testing
----
我们使用两个工具--``pylint``和``pep8``来管理此repo中所有python文件的代码质量和样式。我们的目标是始终保持零报告的pylint
和pep8冲突。
在单个文件上运行这些工具:
$pylint path/to/file.py
$pep8 path/to/file.py
我们不遵守所有Pylint和PEP8违规行为。通过查看"pylintrc"和"setup.cfg"的内容,可以检查我们忽略了哪些冲突。在发出pull
请求之前,您应该使用这些工具检查您的代码,以确保您的分支不会添加任何新的质量冲突。_ pylintrc:https://github.com/edx/xblock/blob/master/pylintrc
。_ setup.cfg:https://github.com/edx/xblock/blob/master/setup.cfg
您可以在pushin之前自动运行这些测试g通过激活"pre-push"脚本将代码发送到github(并在travis中运行
xblock sdk存在于单独的存储库中。sdk包含一些有用的工具,用于
开发您自己的xblock,例如模板xblock生成器、示例xblock
,这些工具演示了xblock的功能。
您可以在它自己的存储库中找到它:https://github.com/edx/xblock sdk
https://xblock.readthedocs.org.
在docstrings中,我们试图弄清楚代码所在的层,尽管有时行是模糊的:
1。**xblock**示例xblock代码。这是最重要的,它是大多数第三方将要编写的
代码,并演示xblock
接口。**运行时**我们认为对所有运行时都是通用的运行时代码。
这是edx为使xblock工作而编写的后台代码。
这一层可能不是真正的代码,但我们需要编写真正的代码来执行这些功能。
g Xblock可以很简单地创建一个python类,只需使用一些特定的方法。
Xblock sdk:https://github.com/edx/Xblock sdk
license
----
WISE
注意。
请参阅"license.txt"了解详细信息。
最简单的方法是分叉此repo,然后从分叉发出拉取请求。第一次发出请求时,您可能会被要求签署贡献者协议。
--————
请不要公开报告安全问题。请发送电子邮件至security@edx.org
packaging
----
ps://github.com/warner/python versioner)
|构建状态图像::https://travis-ci.org/edx/xblock.svg?branch=master
:目标:https://travis ci.org/edx/xblock
…|覆盖状态图像::https://coveralls.io/repos/edx/xblock/badge.svg
:目标:https://coveralls.io/r/edx/xblock