在Elixir中,函数名称可以在没有类型规范的情况下安全地重构吗?

时间:2016-02-23 19:24:24

标签: refactoring elixir dynamic-typing

标题问道。例如,我想在Elixir中重命名随机函数名称,我可以安全地进行吗?

1 个答案:

答案 0 :(得分:1)

您必须找到调用该函数的任何位置,并将其更改为匹配。

帮助解决这个问题的一个工具是单元测试。 Exixit在Elixir中可用,Eunit在Erlang中可用。对于集成测试,Common Test框架可以使用两种语言,但我不知道Elixir包装器。

另一种选择是使用透析器,您可以使用Dialyxir轻松地将其集成到Elixir项目中。如果您在代码中包含type annotations,则会特别有用。即使您不使用它们,透析器也可以在您的代码中发现许多功能合同违规,但您仍需要手动修复它们。

Dialyxir只是dialyzer的灵丹妙药整合,是一种Erlang工具。 Function specifications也适用于Erlang