Erlang и Toolchains - PullRequest
       5

Erlang и Toolchains

8 голосов
/ 23 февраля 2011

Кто-нибудь разработал сверхэффективный рабочий процесс и набор инструментов для Erlang?Отладка, создание прототипов, просмотр, управление версиями и т. Д.

Я чрезвычайно впечатлен интегрированной системой изображений Smalltalk, но мне было интересно, может ли что-то даже приблизиться к ней с помощью Erlang.

Ответы [ 3 ]

7 голосов
/ 23 февраля 2011

Erlang имеет очень надежную цепочку разработки, особенно если вы являетесь специалистом EMACS.Существует специальная система сборки Erlang, есть надежная поддержка для упаковки вашего приложения и его зависимостей для развертывания, и не забывайте OTP.

Что касается инструментов, есть Dialyzer, трассировка в реальном времени на работающих системах, горячаязагрузка кода (например, вы можете включить и отключить или добавить запись в работающую систему, не перезапуская ее), удаленное выполнение кода, так много всего можно узнать, что это вызывает головокружение при запуске.

5 голосов
/ 28 февраля 2011
  • Редактор: вы можете использовать все, что вы хотите. Я использовал emacs для моего первого года обучения на erlang, но в настоящее время я использую gedit.
  • Контроль версий: мне нравится git. Похоже, что большинство сообщества erlang с этим согласны (большинство проектов размещаются на github).
  • Рабочий процесс: я бы рекомендовал ознакомиться с арматурой .

Вот пример 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

Вот несколько основных указателей:

  • Поместите ваши модульные тесты в те же модули, что и код, который они тестируют. Смотрите вики арматуры для деталей.
  • Добавьте {cover_enabled, true} в файл rebar.config. Каждый раз, когда вы запускаете make test, вы получаете отчет о покрытии в HTML!
  • Добавьте зависимости вашего проекта в rebar.config, и вы сможете их извлекать и создавать при запуске make deps.
  • Обязательно прокомментируйте свой код с помощью edoc. Если вы это сделаете, арматура может построить все ваши документы, когда вы бежите make doc.
1 голос
/ 06 сентября 2012

Меня интересует разница между Синан / Факсен и Арматура тоже.Из моих заметок я помню, что Sinan / Faxien больше занимался созданием шаблона проекта и управлением зависимостями, в то время как Rebar был более полезен для создания шаблона модуля ... Мои заметки здесь , им несколько лети предназначены для начальной загрузки эрлангских новичков (таких как я).

-Todd

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...