Ну, в двух словах о правильном проектировании рассказать просто не получится.
На данный момент у тебя не соблюдается даже принцип
инкапсуляции, а ведь это один из трёх базовых столпов
ООП. Данные должны сокрываться в классе. В идеале в секции public должны быть расположены только методы. Мотивацию смотри в статье.
Следующий шаг - разобраться с принципами
SOLID.
Когда с базой всё будет в порядке, то если захочешь расти дальше, нужно уже читать книги. Начать можно с чего-нибудь не очень тяжелого, например "Рефакторинга" Фаулера. Благо книга не новая, так что доступна для бесплатного скачивания, например
тут. Есть и парочка других книжек этого же уровня, названия которых легко гуглятся. Хотя, в принципе, и одного Фаулера будет достаточно.
После ещё одного левел апа, уже следует браться за более серьёзное чтиво, а именно за шаблоны проектирования. Вкратце о них можно почитать на
вики, но там очень сжато и непонятно зачем вообще это нужно. Лучше, конечно, будет прочитать книгу знаменитой "банды четырёх". Залакировать можно будет книжкой
"Рефакторинг с использованием шаблонов" Джошуа Кириевски.
Последние две книги по шаблонам это уже уровень опытного разработчика.
И это только чтиво по архитектуре. По хорошему нужно ещё и язык постигать. Здесь нужно читать Страуструпа, Майерса и даже Александреску (только последнего крайне осторожно, чтобы не сломать голову). Полный список книг, который обязан прочесть любой уважающий себя разработчик С++ состоит из около десятка произведений.
P.S. По поводу репутации. У тебя всё получилось. Этой кнопочкой народ так толком и не научился пользоваться, так как админы что-то намутили, и после смены пары движков форума, как у нас сейчас работает репутация, не понимает почти никто
