Opciones de importación de código

www.altova.com Imprimir este apartado Página anterior Subir un nivel Página siguiente

Inicio >  Proyectos e ingeniería de código > Importar código fuente >

Opciones de importación de código

Cuando se importa código de programa en un proyecto de UModel, la aplicación ofrece varias opciones de importación (ver más abajo). Estas opciones se pueden configurar en el cuadro de diálogo que aparece cuando se ejecuta el comando Proyecto | Importar proyecto de código fuente o Proyecto | Importar directorio de código fuente.

um_dlg_import_source_project

Cuadro de diálogo "Importar proyecto de código fuente"

La mayoría de las opciones de este cuadro de diálogo pueden modificarse en cualquier momento, no solo durante la fase de importación de código (véase Configurar la sincronización del código).

 

Las opciones que aparecen a continuación afectan a todos los tipos de proyecto, independientemente del lenguaje o de la plataforma:

 

Opción

Descripción

Importar proyecto relativo al archivo de proyecto de UModel

Esta opción está marcada por defecto, lo que significa que se establecerá una dependencia de ruta relativa entre el proyecto de UModel y el proyecto de código fuente que se importa.

 

Cuando finaliza la importación se genera automáticamente un componente UML en el proyecto de UModel (se puede ver en la ventana Estructura del modelo y es secundario de Component View). Este componente realiza las interfaces o clases a las que se debe aplicar ingeniería de código y especifica las opciones de ingeniería de código, incluida la ruta de acceso del proyecto o directorio del código fuente. Esta ruta será relativa si se marcó la casilla Importar proyecto relativo al archivo de proyecto de UModel. Si no se marcó, será una ruta de acceso absoluta.

Combinar el código con el modelo

Sobrescribir el modelo con el código

Si elige la opción Combinar el código..., los conflictos entre nombres (p. ej. entre nombres de paquetes o clases) se resolverán anexando un número al elemento que se importa.

 

Si elige la opción Sobrescribir el modelo... y se dan conflictos entre nombres, el elemento importado tendrá prioridad sobre el que existe en el proyecto (es decir, el del proyecto se sobrescribe).

Habilitar la generación de diagramas

Marque esta casilla si quiere generar diagramas de clases y paquetes a partir de las clases importadas.

 

Si marca esta casilla, el asistente de importación incluirá una pantalla más donde podrá personalizar el aspecto de los diagramas que se generen.

 

Las siguientes opciones solo se pueden aplicar a proyectos C++:

um_dlg_import_source_project_cpp

Cuadro de diálogo "Configuración de proyecto C++"

Opción

Descripción

Modo de importación

La opción leer archivos de código fuente C++ analizará todos los archivos del proyecto de código fuente. Es la opción predeterminada. Si desea importar bibliotecas C++ solamente, entonces seleccione leer solo encabezados de C++, lo cual también acelerará la operación de importación.

 
Los archivos .h se tratan por defecto como encabezados de C++. Desactive la casilla tratar archivos .h como encabezados de C++ si el proyecto de código fuente utiliza otra extensión para los archivos de encabezado.

Compatibilidad

Esta opción solamente es relevante cuando se importa código C++ compilado con Visual Studio y sirve para especificar la versión del compilador Microsoft Visual C++. Elija la versión del compilador (dialecto del código) que utiliza su proyecto de Visual Studio C++. Tenga en cuenta que esta opción se refiere al dialecto del código de los archivos de código fuente. El proyecto o solución de Visual Studio propiamente dicho debe estar guardado con Visual Studio 2010 o superior para que se pueda importar.

Otras opciones del compilador (clang)

Internamente UModel utiliza la versión de compilador clang 3.8 para leer código C++. En este cuadro de texto puede definir opciones de análisis de código adicionales. Consulte la documentación de clang en http://releases.llvm.org/3.8.1/tools/docs/UsersManual.html#command-line-options.

Directorios de inclusión

En este panel puede especificar en qué directorios UModel debe buscar clases C++ cuando aplique ingeniería inversa al código C++. Especificar los directorios de inclusión es opcional si el proyecto de código fuente se escribió con Visual Studio.

Definiciones del preprocesador

En este panel puede especificar las directivas previas de procesador C++ necesarias para compilar el código. Si el proyecto se escribió con Visual Studio, las directivas se detectan automáticamente.

 

 

Las opciones que aparecen a continuación solamente están disponibles para proyectos C# y VB.NET:

 

Opción

Descripción

DocComments como documentación

Marque esta casilla si desea convertir los comentarios detectados en el código C# en documentación de elementos de UModel (véase Documentación).

Resolver los alias

Esta casilla está marcada por defecto. Si su código C# o VB.NET contiene alias de espacios de nombres o de clases (ver código más abajo), recomendamos que marque esta casilla. De lo contrario, puede que durante la importación UModel no detecte automáticamente las asociaciones y dependencias que conllevan clases y espacios de nombres con alias (por lo que no estarían presentes en el modelo).

 

using Q = System.Collections.Generic.Queue<String>;
Q myQueue;

Ejemplo de un alias en código C#

Durante la importación de código fuente, los alias que puedan suponer un conflicto se añaden al paquete Elementos externos desconocidos del proyecto de UModel si su uso no está del todo claro.

 

Cuando actualice el código con el modelo (ingeniería de ida y vuelta), los alias se conservarán tal y como están en el código generado.

 

La opción Resolver los alias se puede cambiar en cualquier momento y no solo durante la importación (véase Configurar la sincronización del código). Si habilita esta opción después de la operación de importación, UModel le pedirá que vuelva a actualizar el proyecto con el código porque esta opción también afecta a la ingeniería directa.

Símbolos definidos

Si su código C# o VB.NET incluye símbolos que están definidos por directivas previas de procesador como #if, #endif, puede hacer que UModel las tenga en cuenta durante la ingeniería inversa:

 

#if DEBUG      

       static void DisplayMessage()

       {

           Console.WriteLine("Please wait...");          

       }

#endif

Ejemplo de símbolo de compilación condicional en código C#

Por ejemplo, si aplica ingeniería inversa al código anterior, el método DisplayMessage() solo se importará en el modelo si se especificó el símbolo DEBUG.

 

Para especificar símbolos de compilación condicionales, introdúzcalos en el cuadro de texto Símbolos definidos, separándolos con puntos y comas.

 

Durante el proceso de ingeniería inversa, UModel mostrará todos los símbolos utilizados en la ventana Mensajes.

 

Las opciones que aparecen a continuación solamente están disponibles para proyectos Java:

 

Opción

Descripción

JavaDocs como documentación

Marque esta casilla si desea convertir los comentarios tipo JavaDocs detectados en el código en documentación de elementos de UModel (véase Documentación).

 

Nota: solamente se convierten los comentarios relacionados con clases, interfaces, operaciones y propiedades Java.


© 2019 Altova GmbH