garmoshka-mo / nemobile

nepotom client
1 stars 0 forks source link

Chat dependency in user #12

Closed garmoshka-mo closed 9 years ago

garmoshka-mo commented 9 years ago

900 строк - жесть Как только класс начинаете переваливать за 200 - делите его сразу на несколько классов, не доводите до такой каши

убрать Chat dependency!

Разумно, что чат может потребовать информацию о текущем юзере, а вы сделали в user обратную зависимость на класс Chat, что во-первых не имеет никакого логичного смысла, во вторых блокирует логичные инъекции (user -> chat)

davoam commented 9 years ago

Для меня логичнее, что User - главный объект в приложении, у него может быть много чатов, он может создать чат, а не чат может создать юзера. Если есть необходимость использовать Юзера у чата, у каждого него есть поле currentUser, в котором содержатся владелец чата и из которого можно вытащить всю необходимую инфу + сейчас метод addChat и parseFromStorage использует Chat, поэтому если его убирать, то надо будет переделывать много

garmoshka-mo commented 9 years ago

он может создать чат

В реальной жизни по факту практически все действия иницииурет пользователь. Если вы будете следовать этой логике - у вас User будет содержать 100500 инъекций

у каждого него есть поле currentUser

а если нужно получить юзера из абстрактной сессии или других инджекнутых внутрь сервисов?

то надо будет переделывать много

Переделывать надо весь user по любому, см. #1 в данном случае "надо будет переделывать" - точно не аргумент