Разработка Qt — структура Qt-приложения.?
Посмотрите это видео. Вот так, для начала,  должна выглядеть структура вашего приложения.
1. Для построения графического интерфейса пользуйтесь Qt Designer (а не размещая врукопашную виджеты, как это делаете вы).
2. В первом, самом простом приложении, должно быть 4 файла исходных кодов.
main.cpp
MainWindow.h
MainWindow.cpp
MainWindow.ui// MainWindow.h
class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget * parent = 0);
    ~MainWindow();

signals:

protected:

private:
    Ui::MainWindow * ui;
};
3. Если количество элементов в MainWindow становится слишком большим, выделяйте элементы в отдельные классы, наследники класса QWidget.
Допустим, у вас в MainWindow расположен элемент Tab Widget, в котором 2 вкладки.
Логично вынести логику работы элементов в каждой вкладке в свой класс, т.е. у вас в проекте должно появиться еще 6 файлов:
MyTabWidget1.h
MyTabWidget1.cpp
MyTabWidget1.ui
MyTabWidget2.h
MyTabWidget2.cpp
MyTabWidget2.ui// MyTabWidget1.h
#pragma once

#include <QWidget>

namespace Ui {
class MyTabWidget1;
}

class MyTabWidget1: public QWidget
{
    Q_OBJECT

public:
    explicit MyTabWidget1(QWidget * parent = 0);
    ~MyTabWidget1();

private:
    Ui::MyTabWidget1* ui;
};
В классе MainWindow используются объекты классов MyTabWidget1 и MyTabWidget2.
Логика работы MainWindow резко похудеет, все перенесется в MyTabWidget1 и MyTabWidget2.
4. Дальше. Избегайте реализации логики работы класса GUI. Эти классы (MyTabWidget1 и MyTabWidget2, MainWindow) должны быть простыми прокладками, трансляторами сигналов от пользователя в логику работы приложения и визуализаторами состояния приложения пользователю.
Начинаете логику работы приложения реализовывать в отдельном классе.
Обмен информацией между Logic <--> MainWindow возложите на сигналы-слоты.
Каких-то специальных рекомендаций для Qt лично я не видел. Есть общие концепции вроде MVC, MVP и проч. 
Прочитайте, например, про model-view в документации того же Qt. Разделите по тому же принципу движок (model) и интерфейс (view). Добавьте во View ссылку на модель и ловите сигналы.