Допустим, имеется класс A, у объектов которого есть поля класса B, у которых есть поля класса C. Например, A - это книга, B - страница, а C - строчка. Какие соображения нужно принять во внимание, выбирая между вариантами (Scala)
class A {
class B {
class C { }
val cs: List[C]
}
val bs: List[B]
}
class A { val bs: List[B] }
class B { val cs: List[C]; val a: A }
class C { val b: B }