Как управлять одной последовательной документацией для разных реализаций одного проекта на Java, C # и C ++?

0

Как управлять одной последовательной документацией для разных реализаций одного проекта в Java, С# и C++?

У нас есть проекты, для которых нам необходимо предоставить версии на Java, С# и C++.

Одна из проблем, с которыми мы сталкиваемся, - документация Версия C++ - наша основная версия. Затем мы распространяем изменения на версии С# и Java. Каждый раз, когда мы вносим изменения в C++, нам нужно сделать то же самое для версий Java и С#. Есть ли способ справиться с этим?

Для документирования C++ и С# мы используем Visual Studio и javadoc для версий Java.

  • 0
    Возможно, вы захотите заглянуть в Doxygen для документации. Я не думаю, что у вас есть самораспространяющееся поведение, которое вы ищете, но, по крайней мере, оно даст вам некоторую согласованность между языками, поскольку поддерживает все три используемых вами типа.
  • 0
    Это вообще возможно? Идиоматическая сигнатура Java, такая как public <T> void f(Collection<T> x) , вероятно, будет выглядеть как template<typename It> void f(It begin, It end) в C ++. Как будет выглядеть унифицированная документация для f ?
Показать ещё 2 комментария
Теги:
documentation

2 ответа

2

Вы можете использовать Doxygen, который обеспечивает единый, независимый от языка синтаксис и работает для C++, Java, а также для С#.

  • 1
    Doxygen создает дерьмо, которое не более информативно, чем просто чтение исходного кода или просмотр списка завершения кода самостоятельно.
  • 1
    @DeadMG: Конечно, если вы покормили ерунду документацией.
2

Я предпочитаю решать эту проблему с помощью инструментов управления версиями.

  1. Я создаю отдельные репозитории Git для каждого другого языкового проекта. В этом случае я начну с репозитория C++, а затем создаю дополнительные для кода Java и С#.

  2. Поскольку код C++ является "основной" (или ссылочной) версией, я бы открыл репозиторий С# и добавил новый подмодуль Git для кода C++. Этот подмодуль всегда будет представлять, как "современная" ваша библиотека С# сравнивается с библиотекой C++. Сделайте то же самое для репозитория библиотеки Java.

  3. После внесения изменений в код C++ (включая документацию) вы можете изучить подмодули для целей С# и Java. Эти подмодули покажут коммиты, внесенные в библиотеку C++ с момента последнего обновления кода С# или Java, что позволяет легко применять и/или проверять изменения на других языках. Когда вы фиксируете изменения в библиотеках С# или Java, вы можете обновить ссылку на подмодуль, чтобы указать на новую "обновленную" фиксацию в библиотеке C++.

Этот рабочий процесс имеет большое преимущество в том, что он всегда информирует всю команду о том, обновляется ли каждая библиотека или нет, а если нет, то какие именно изменения необходимо внести для ее обновления.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню