|
From: Anton F. <tes...@bk...> - 2004-04-02 10:46:22
|
> Надо бы договорится по ключевым вопросам: > 1) Сколько неймспейсов будет. А что мешает использовать using namespace для нескольких неймспейсов? Смысл неймспейсов - ограничивать область видимости. Если у тебя будет два одинаковых класса/функции в двух модулях движка, то в случае одного неймспейса тебе придется придумывать новое имя, которое возможно отражает меньше смысла. В случае, когда различные модули движка - в разных неймспейсах, такие проблемы будут возникать намного реже. Что бы не писать лишний раз например rgde::core, rgde::audio и т.д., пишем "using namespace rgde::core; using namespace rgde::audio;" > 2) Условимся о количестве файлов. У движка будет SDK и рабочие файлы. > На количество последних в принципе не накладывается никаких > ограничений, конечный пользователь их и не увидет (если внутрь двига > не полезет ессно). Мое мнение: Очень удобно пихать каждый класс (интерфейс) в отдельный файл. И придумать иерархию каталогов - на каждый модуль по каталогу. Не стоит сваливать всё в одну кучу в которой потом трудно разобраться. > 3) Способ декларирования интерфейсов. Тут либо вариант Jihar'a, либо > мой: Вариант джихара мне ближе... Зачем СТОЛЬКО макросов!? :-) > 4) Далее договоримся о константах. Два варианта либо enum, либо > #define. а const? мы же на C++ пишем, или я что-то пропустил? ;-) |