Честно, сначала тоже пытался всё в одном файле держать — казалось проще. Но на деле багов только прибавлялось, особенно из-за сессий и пропущенной фильтрации. Когда начал разделять логику и вывод, код стал понятнее, а ошибки искать быстрее. В общем, разделение — это не только порядок, но и спасение от головной боли.