Они должны быть классами со связями, а не пытаться использовать собственные структуры данных ruby.Даже если классы ничего не делают, вы получаете много естественного звучания из рельсовых отношений.
Я бы скорее сказал:
team = Team.find_by_name("Ravens")
, чем
team = nfl[0][0][0]
Вы также можете получить потенциально другие полезные звонки почти бесплатно:
team = Team.find_by_city("Baltimore") # also gets you the ravens
и когда вы хотите собрать все команды для разделения:
all_nfc_teams = Division.find_by_name("NFC").teams
, что далекоболее читабельный, чем
all_nfc_teams = nfl[0][1]
Я могу представить себе всевозможную другую полезную семантику, например, поиск всех игр АФК на 4-й неделе или распределение команд по победам и поражениям.Вы можете определить области действия в командах, которые позволят вам получать коллекции команд с очень четкой семантикой.
all_nfc_teams = Team.nfc