Нет единственного способа, который лучше. Для небольших приложений удобно создавать все виджеты в одном месте. По мере того, как масштаб проекта увеличивается, он получает больше преимуществ от модульного подхода. Если графический интерфейс пользователя очень сложный, лучше разбить его на куски, но даже тогда нет необходимости строго следовать правилу «родитель знает только о своих дочерних элементах».
Компоненты графического интерфейса не сильно отличаются от других программных компонентов, поэтому применимы общие рекомендации.