Я не думаю, что Symbol
s является заменой для использования case
классов. На самом деле, я не совсем уверен, что вообще используется Symbol
, поскольку ему не хватает силы символов в других языках (например, Ruby, Smalltalk) - это просто интернированная строка.
Например, в стандартном примере аукциона трудно понять, как вы представляете сложность заявки / предложения, используя только символы.
Что касается case
объектов , я также считаю, что они предпочтительнее символов. Например, они могут быть экземплярами trait
s и т. Д. И, следовательно, предоставлять функциональность.