Erlang和工具链
有没有人为Erlang开发出超高效的工作流和工具集?调试、原型制作、浏览、版本控制等Erlang和工具链,erlang,Erlang,有没有人为Erlang开发出超高效的工作流和工具集?调试、原型制作、浏览、版本控制等 Smalltalk的集成映像系统给我留下了非常深刻的印象,但我想知道是否有什么东西可以通过Erlang实现。Erlang有一个非常强大的开发链,特别是如果您是EMACS专家的话。有一个特定于Erlang的构建系统,有对打包应用程序及其依赖项以进行部署的强大支持,不要忘记OTP 至于工具,有透析器、运行系统的实时跟踪、热代码加载(例如,您可以在不重新启动的情况下启用和禁用或向运行系统添加日志记录)、远程代码执行,
Smalltalk的集成映像系统给我留下了非常深刻的印象,但我想知道是否有什么东西可以通过Erlang实现。Erlang有一个非常强大的开发链,特别是如果您是EMACS专家的话。有一个特定于Erlang的构建系统,有对打包应用程序及其依赖项以进行部署的强大支持,不要忘记OTP 至于工具,有透析器、运行系统的实时跟踪、热代码加载(例如,您可以在不重新启动的情况下启用和禁用或向运行系统添加日志记录)、远程代码执行,要了解的东西太多了,当您启动时会感到头晕目眩。
- 艺术经纬:你想用什么就用什么。我在erlang的第一年使用了emacs,但目前我正在使用gedit
- 版本控制:我喜欢git。似乎大多数erlang社区都同意这一点(大多数项目都托管在github上)
- 工作流程:我建议您熟悉
REBAR := ./rebar
.PHONY: all deps doc test clean release
all: deps
$(REBAR) compile
deps:
$(REBAR) get-deps
doc:
$(REBAR) doc skip_deps=true
test:
$(REBAR) eunit skip_deps=true
clean:
$(REBAR) clean
release: all test
dialyzer --src src/*.erl deps/*/src/*.erl
以下是一些基本要点:
- 将您的单元测试与它们正在测试的代码放在相同的模块中。有关详细信息,请参见钢筋维基
- 将
添加到{cover_enabled,true}
文件中。每次运行rebar.config
时,您都会得到一个HTML格式的覆盖率报告李>maketest
- 将项目的依赖项添加到
中,您可以在运行rebar.config
时获取并构建它们make deps
- 确保用edoc注释代码。如果您这样做,当您运行
时,力霸可以生成所有文档makedoc
-Todd我知道我应该在某个时候学习emacs,但是作为一个ViGuy,这些工具中的哪些不能在Vi上使用?@ross没有一个需要emacs,所有这些工具都可以(并且可能应该)在Erlang shell中运行。Emacs带来的唯一东西就是标准的缩进规则和一个非常整洁的flymake模式。