Я переорганизую или неорганизую код C ++?

Итак, я делаю свой первый серьезный проект.

Структура пространства имен:

  • Яйцо
    • математический
    • физика
    • моделирование

Заголовок:

#ifndef EGG_PHYSICS_WORLD_HPP
#define EGG_PHYSICS_WORLD_HPP

namespace Egg {
namespace Physics {

class Body
{
public:
Body();

const Math::Vector2& GetPosition() const;

/* ... */
};

} // namespace Physics
} // namespace Body

#endif // EGG_PHYSICS_WORLD_HPP

Вопросы:

  • Это нормальная организация в целом?
  • Это хорошая практика для создания вложенных пространств имен?
  • Можно ли использовать имя, которое не указано полностью (например, Math::Vector2) имя вместо ::Egg::Math::Vector2 в ::Egg::Physics Пространство имен?
  • Если вложенные пространства имен переупорядочены, можно ли использовать одно пространство имен, но при этом использовать структуру папок, например. Egg :: World находится в «Egg / Physics / World.hpp»?

2

Решение

Да, вы переорганизуетесь. Если это код приложения, я бы вообще не использовал пространство имен. Если вы переместите код в библиотеку многократного использования, оберните его в пространство имен тогда, но не раньше. Используйте имена классов, которые имеют смысл без пространства имен.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]