Erlang和工具链

Igo*_*rio 8 erlang

有没有人为Erlang制定了超高效的工作流程和工具集?调试,原型设计,浏览,版本控制等

我对Smalltalk的集成图像系统印象非常深刻,但是想知道是否有些东西甚至可以用Erlang接近它.

小智 7

Erlang拥有非常强大的开发链,特别是如果您是EMACS专家.有一个Erlang特定的构建系统,有强大的支持来打包你的应用程序及其部署的依赖关系,不要忘记OTP.

至于工具,有Dialyzer,运行系统上的实时跟踪,热代码加载(例如,您可以启用和禁用或添加日志记录到正在运行的系统而不重新启动它),远程代码执行,还有很多需要学习的东西你开始的时候会很眩目.


Dav*_*don 5

  • 编辑:你可以随意使用.我使用emacs作为我第一年的erlang,但我现在正在使用gedit.
  • 版本控制:我喜欢git.似乎大多数erlang社区都同意(大多数项目都托管在github上).
  • 工作流程:我建议熟悉钢筋.

这是一个rebar风味的Makefile的例子:

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
Run Code Online (Sandbox Code Playgroud)

以下是一些基本指示:

  • 将您的单元测试放在与他们测试的代码相同的模块中.有关详细信息,请参阅钢筋维基.
  • 添加{cover_enabled, true}到您的rebar.config文件中.每次运行时make test都会得到HTML格式的报道!
  • 将项目的依赖项添加到您的项目中rebar.config,您可以在运行时获取并构建它们make deps.
  • 请务必使用edoc注释您的代码.如果你这样做,钢筋可以在你跑步时建立你的所有文档make doc.