Генерация кода

Вкладка «Общие» параметров генерации кода

Параметры на вкладке «Общие» параметров генерации кода

Параметры на вкладке «Общие» параметров генерации кода

Umbrello UML Modeller позволяет генерировать исходный код для различных языков программирования на основе модели, помогая начать реализацию проекта. Сгенерированный код состоит из объявлений классов с их методами и атрибутами; остаётся только «заполнить пустые места» для реализации функциональности классов.

Язык

Выберите язык программирования для использования в проектах. Доступные варианты: ActionScript, Ada, C++, C#, D, IDL, Java, JavaScript, MYSQL, Pascal, Perl, PHP, PHP5, PastgreSQL, Python, Ruby, SQL, Tcl, Vala и XMLSchema.

Папки

Сохранять сгенерированные файлы в папку — укажите в поле редактирования ту папку, в которой следует сохранять сгенерированные файлы, или нажмите кнопку «Обзор...» для выбора пути.

Подключать заголовочные файлы из папки — если этот флажок установлен, возможно указать путь в поле редактирования или выбрать его с помощью кнопки «Обзор...».

Политика замены

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

  • Заменять файл без предупреждения или предложения выбрать другой вариант.

  • Спросить, следует ли перезаписать файл или переименовать его.

  • Выбрать другое имя, если файл уже существует (переименовать его путём добавления суффикса).

Вкладка «Оформление» параметров генерации кода

Параметры на вкладке «Оформление» параметров генерации кода

Параметры на вкладке «Оформление» параметров генерации кода

Подробность комментариев

Вставлять комментарии в документацию, даже если они пусты — создаёт комментарии для классов и функций, даже если они являются пустыми.

Вставлять комментарии для секций, даже если они пусты — записывает комментарии для приватных, защищённых и открытых секций, даже если они пусты.

Строки

Тип отступов — позволяет выбрать один из вариантов создания отступов (без отступов, табуляция или пробел).

Количество символов — позволяет пользователю указать количество пробелов для создания отступов с помощью табуляции или пробелов.

Конец строки — позволяет выбрать вариант конца строки (в стиле *NIX, Windows или Mac).

Вкладка «Языки программирования» параметров генерации кода

Параметры на вкладке «Языки программирования» параметров генерации кода

Параметры на вкладке «Языки программирования» параметров генерации кода

Содержимое этой страницы зависит от языка программирования, выбранного на вкладке «Общие». В настоящее время доступны параметры только для языка C++.

Генерация кода C++

Документация

Стиль — позволяет выбрать вариант оформления документации («/** */» или «//»).

Общие

Вкладка Языки программирования содержит вложенную вкладку Общие, на которой представлены несколько параметров генерации кода.

  • Префикс члена класса

    Этот параметр позволяет при генерации кода добавлять к членам класса заданный пользователем префикс.

  • Пакет является пространством имён

    В пространствах имён предусмотрен метод для предотвращения конфликтов имён в крупных проектах. Объявленные внутри блока пространства имён символы помещаются в именованную область, которая не позволяет ошибочно принять их за символы с такими же названиями, которые принадлежат другим областям программного кода.

  • Виртуальные деструкторы

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

  • Генерировать пустые конструкторы

    Будут сгенерированы конструкторы с пустыми скобками.

  • Генерировать методы доступа к атрибутам

    Будут сгенерированы методы для доступа к типам данных.

  • Встроенные операции

    Генерировать методы как встроенные, но при этом компиляторы смогут самостоятельно определить, следует ли их встраивать.

  • Встроенные методы доступа к атрибутам

    Генерировать методы доступа к данным класса как встроенные, но при этом компиляторы смогут самостоятельно определить, следует ли их встраивать.

  • Публичные методы доступа к атрибутам

    С помощью этого пункта возможно указать, что методы, созданные как открытые, будут доступны любому экземпляру класса.

  • Создавать методы получения значения с префиксом «get»

    С помощью этого пункта возможно указать программе добавлять префикс «get» для методов, которые получают или возвращают данные класса.

  • Удалять префикс «[a-zA-Z]_» из названий методов доступа

    Если в пункте Префикс члена класса был указан префикс, он будет удалён.

  • Методы доступа начинаются с заглавных букв

    С помощью этого пункта можно указать программе делать первую букву названия метода заглавной.

  • Для документирования используйте метку «\», а не «@»

    Выбор метки, которую следует использовать при документировании параметров метода.

Генерация тела метода

Параметры на вкладке «Генерация тела метода» параметров генерации кода

Параметры на вкладке «Генерация тела метода» параметров генерации кода

List

Доступны следующие варианты типа списка: QPtrList, vector и std::vector. С помощью расположенного ниже поля возможно указать файл для включения. Предусмотрена кнопка выбора файла для включения в файловой системе. Также имеется параметр, который позволяет сделать список глобальным.

String

Доступны следующие варианты типа строки: string и QString. С помощью расположенного ниже поля возможно указать файл для включения. Предусмотрена кнопка выбора файла для включения в файловой системе. Также имеется параметр, который позволяет сделать строку глобальной.