Opciones de importación de código
Al importar código de programa a un proyecto de UModel, es posible que tenga que configurar o modificar las opciones que se indican a continuación. Estas opciones están disponibles en el cuadro de diálogo que aparece al ejecutar el comando de menú Proyecto | Importar proyecto de código fuente o Proyecto | Importar directorio de código fuente.

Cuadro de diálogo Importar proyecto de código fuente
La mayoría de las opciones del cuadro de diálogo anterior también se pueden modificar más adelante; consulte la sección Configurar la sincronización del código.
Las siguientes opciones pueden aplicarse a todos los tipos de proyectos, independientemente del lenguaje o la plataforma:
Opción | Descripción |
|---|---|
Importar proyecto relativo al archivo de proyecto de UModel | Esta opción está seleccionada de forma predeterminada, lo que significa que se establecerá una dependencia de ruta relativa entre el proyecto de UModel y el proyecto de código fuente importado.
Una vez importado el código fuente, se genera automáticamente un componente UML en el proyecto de UModel (que se encuentra disponible en la estructura de árbol de modelos, como elemento secundario de «Component view»). Este componente implementa las interfaces o clases que se van a procesar; además, especifica las opciones de procesamiento del código, incluida la ruta al proyecto o directorio de código fuente. Esta será una ruta relativa si se ha seleccionado la opción Importar proyecto relativo al archivo de proyecto de UModel; de lo contrario, será una ruta absoluta. |
Combinar el código con el modelo / Sobrescribir el modelo con el código | Si se selecciona Combinar el código con el modelo, los posibles conflictos de nombres (como los nombres de paquetes o clases) se resolverán añadiendo un número al elemento que se está importando.
Si se selecciona Sobrescribir el modelo con el código y se producen conflictos de nombres, el elemento importado tendrá prioridad sobre el que ya existe en el proyecto (lo sobrescribirá). |
Habilitar la generación de diagramas | Marque esta casilla si desea generar diagramas de clases y paquetes a partir de las clases importadas. Cuando se marca esta casilla, el asistente de importación incluye pasos adicionales que le permiten personalizar el aspecto de los diagramas generados. |
Las siguientes opciones solo están disponibles para proyectos de C++:

Cuadro de diálogo Configuración de proyecto C++
Opción | Descripción |
|---|---|
Compatibilidad con Microsoft Visual C++ | Esta opción solo es aplicable al importar código C++ compilado con Visual Studio; le permite especificar la compatibilidad con el compilador Microsoft Visual C++. Configure este valor con la versión del compilador (dialecto de código) que utilice su proyecto de Visual Studio C++. Tenga en cuenta que esta configuración se refiere al dialecto de programación de los archivos de código fuente; el proyecto (o solución) de Visual Studio en sí debe haberse guardado con Visual Studio 2010 o una versión posterior para que pueda importarse. Para importar código fuente creado en un IDE distinto de Visual Studio, utilice el comando Proyecto | Importar directorio de código fuente. |
Opciones adicionales del compilador (clang) | A nivel interno, UModel utiliza el compilador clang, versión 11.1.0, para leer código C++. Si es necesario, se pueden especificar opciones adicionales de análisis de código en este cuadro de texto (si es aplicable a UModel); consulte también la documentación de clang (https://releases.llvm.org/11.1.0/tools/clang/docs/UsersManual.html#command-line-options). |
Directorios de inclusión | Utilice esta opción para especificar cualquier directorio adicional en el que UModel deba buscar clases de C++ al realizar la ingeniería inversa del código C++. Especificar los directorios de inclusión es opcional si el proyecto de origen es un proyecto de Visual Studio.
Si marca la casilla Detectar automáticamente y usar directorios de inclusión del sistema, UModel intentará detectar cualquier directorio de inclusión definido a nivel del sistema, además de los mencionados explícitamente en este cuadro de diálogo.
También es posible definir las rutas de los directorios de inclusión mediante la variable de entorno del sistema UMODEL_CPP_INCLUDE; consulte la sección Ingeniería inversa de proyectos C++. En este caso, los directorios de inclusión definidos en la variable de entorno del sistema UMODEL_CPP_INCLUDE sustituirán a los que se incluirían de otro modo si se marcara la casilla Detectar automáticamente y usar directorios de inclusión del sistema. |
Definiciones del preprocesador | Utilice esta opción para especificar las directivas del preprocesador de C++ necesarias para compilar el código. Si el proyecto de origen es un proyecto de Visual Studio, las directivas del preprocesador se detectan automáticamente. |
Modo de importación | La opción leer archivos de código fuente C++ analizará todos los archivos del proyecto de código fuente. Esta es la opción predeterminada. Si desea importar únicamente bibliotecas de C++, seleccione la opción leer solo encabezados de C++, lo que además agilizará la operación de importación. |
Las siguientes opciones solo están disponibles para proyectos de C# y VB.NET:
Opción | Descripción | |
|---|---|---|
DocComments como documentación | Marque esta casilla para convertir los comentarios que se encuentren en el código C# en documentación de elementos de UModel (ver también Documentación). | |
Resolver los alias
| Esta casilla está activada por defecto. Si su código C# o VB.NET contiene alias de espacios de nombres o clases, como en el fragmento de código que se muestra a continuación, se recomienda dejar esta casilla marcada. De lo contrario, es posible que UModel no detecte automáticamente durante la importación las asociaciones y dependencias que impliquen clases y espacios de nombres con alias en su código (y, por lo tanto, no aparecerían en el modelo).
Ejemplo de un alias en código C# Durante la importación del código fuente, cualquier alias que pueda dar lugar a conflictos se añade al paquete «Elementos externos desconocidos» del proyecto UModel si su uso no está claro.
Cuando se actualice el código a partir del modelo (ingeniería de ida y vuelta), los alias se mantendrán tal y como aparecen en el código generado.
La opción Resolver los alias se puede modificar en cualquier momento más adelante; consulte Configurar la sincronización del código. Si activa esta opción después (y no antes) de la operación de importación, UModel le pedirá que vuelva a actualizar el proyecto a partir del código, ya que la opción también tiene consecuencias para la ingeniería inversa. | |
Símbolos definidos | Si su código C# o VB.NET incluye símbolos definidos mediante directivas del preprocesador, como #if o #endif, puede indicar a UModel que los tenga en cuenta al realizar la ingeniería inversa del código.
Ejemplo de un símbolo de compilación condicional en código C# Por ejemplo, si se realiza ingeniería inversa en el código anterior, el método DisplayMessage() solo se importará al modelo si se ha especificado el símbolo DEBUG.
Para especificar símbolos de compilación condicional, introdúzcalos en el cuadro de texto «Símbolos definidos», separados por un punto y coma.
Durante el proceso de ingeniería inversa, UModel muestra todos los símbolos utilizados en el código fuente en la ventana Mensajes. |
La siguiente opción solo está disponible para proyectos Java:
Opción | Descripción |
|---|---|
JavaDocs como documentación | Marque esta casilla para convertir los comentarios estilo JavaDocs que se encuentren en el código en documentación de elementos de UModel (véase también Documentación).
Nota: Solo se convierten los comentarios aplicables a clases, interfaces, operaciones y propiedades de Java. |