Używanie symboli Ruby

Po raz pierwszy próbowałem uczyć się Ruby 2 lata temu, teraz zacząłem od nowa. Przyczyną, dla której się zatrzymałem, było to, że nie mogłem zrozumieć klasy Symbol. A teraz znów jestem w tym samym punkcie, całkowicie zagubiony, kiedy i dlaczego używasz symboli. Przeczytałem inne posty na Stackoverflow, a także Googled dla kilku wyjaśnień. Ale jeszcze tego nie rozumiem.

Najpierw myślałem, że symbole są tylko sposobem na stworzenie pewnego rodzaju „stałej nazwanej” bez konieczności przechodzenia przez ten sam proces, co powiedzmy Java.

:all 

zamiast tworzyć stałą o dowolnej wartościpublic static final String ALL = 8;

Jednak nie ma to większego sensu, gdy używasz go np.attr_accessor :first_name etc. Czy symbole są lekką klasą String? Mam problemy ze zrozumieniem, jak powinienem interpretować, kiedy i jak używać symboli zarówno w moich klasach, jak i w frameworkach.

questionAnswers(4)

yourAnswerToTheQuestion