Структура обычно выглядит как-то так:
models
----UserModel
----NoteModel
controllers
----UserController
----NoteController
ui
----UserView
----NoteView
Всегда за собой замечаю что как правило вношу правки во что-то одно(что-то одно я подразумеваю например из моего примера я в user-ов вношу изменения). Приходится скроллить туда и обратно. Сначала правки в model, потом в ui, потом в controller и так по кругу. В приличном проекте сущностей много, слоёв больше, между model и ui например может быть больше высоты экрана монитора.
Все яро структурируют именно так, и я подумал может есть веская причина так делать?