【发布时间】:2023-03-26 09:46:01
【问题描述】:
我已经到了编写相当多 Erlang 代码的阶段,并且我可以看到一些风格(坏的或好的)潜入了我一直在编写它的方式中。我想对这个特殊的习语发表一些意见 - 将 case 样式语句转换为函数模式匹配是否更好(更具可读性/更快/无论如何)?
例如
比较(一个人为的例子)
case {Size > 100000, Type} of
{true, ets } ->
%% Do something to convert to dets
something;
{false, dets} ->
%% do something to convert to ets
somethingelse;
_ ->
ignoreit
end;
与
...
maybeChangeStorage(Size, Type)
...
maybeChangeStorage(Size, ets) when Size > 10000 ->
something;
maybeChangeStorage(Size, dets) when Size < 10000 ->
somethingelse;
maybeChangeStorage(_,_) ->
ignoreit.
在大多数情况下我更喜欢后者,但我会对其他意见感兴趣。
【问题讨论】:
-
maybeChangeStorage(Size, dets) 当 Size 应该是 Size
标签: coding-style erlang