Colección de citas famosas - Frases motivadoras - Documento de diccionario de datos

Documento de diccionario de datos

1 Introducción

Propósito de 1.1

En el proceso de desarrollo de software, la carga de trabajo de codificación es considerable. Las personas involucradas en el mismo proyecto pueden tener su propia experiencia y hábitos de programación, y los diferentes estilos de código de programa hacen que el trabajo de mantenimiento sea complicado y difícil. Para mejorar la legibilidad del código, la estabilidad del sistema y reducir el costo de mantenimiento y actualizaciones, esta especificación está escrita especialmente para unificar el trabajo de programación de los desarrolladores.

1.2 Objetos aplicables

Esta especificación se aplica a todos los desarrolladores, incluidos los desarrolladores de aplicaciones, páginas web y bases de datos, y los probadores de programas relacionados.

1.3 Estándar de referencia

GB/T 11457 Terminología de ingeniería de software.

Especificaciones de desarrollo de software informático GB 8566

Guía de documentación de desarrollo de productos de software informático GB 8567

2. Requisitos de redacción

2.1 Reglas generales del código

El principio de legibilidad es la primera opción para evaluar la calidad de un programa. Es mejor garantizar la legibilidad del programa sin algunas habilidades. No sacrifique la legibilidad del programa por una búsqueda excesiva. habilidades.

Principio de independencia funcional. Cada bloque de programa solo completa una función independiente. Por el contrario, cada función independiente solo se completa en un bloque de programa, con el menor acoplamiento y la mayor cohesión posible.

Las indicaciones deben ser breves y evitar la ambigüedad.

La información de aviso o advertencia debe ser instructiva y puede indicarle con precisión al usuario la causa del error y el método de recuperación. Los cuadros de diálogo de mensajes y advertencias deben utilizar convenciones estándar.

La definición de teclas de acceso directo debe ajustarse a los hábitos operativos del usuario.

Cuando el programa necesita procesarse o esperar mucho tiempo, se debe mostrar una barra de progreso y se le debe pedir al usuario que espere.

Algunas operaciones sensibles (como la eliminación) deben solicitar confirmación al usuario antes de su ejecución.

2.2 Reglas de nomenclatura de variables, funciones, procedimientos y controles.

2.2.1 Nomenclatura de variables

La nomenclatura de variables se define mediante la regla [alcance] [tipo de datos] [nombre definido por el usuario] y sigue el método de nomenclatura húngaro. Se requiere que el alcance y el tipo de datos de la variable se puedan ver intuitivamente al ver el nombre de la variable.

Reglas de nomenclatura húngaras:

Matriz de matrices

Booleano (entero)

Por carácter sin signo (byte) carácter sin signo (byte)

c carácter (byte)

Cb recuento de bytes

Valor de referencia de color Valor de color (referencia)

x (corto) cx recuento establecido para x (corto)

Dword (largo sin firmar)

f flag (valor genérico de varios bits) flag (normalmente un valor de varios dígitos).

Función Fn

G_Global Global

h identificador de identificador

I entero entero

l tipo entero largo

Puntero largo

M_ Miembro de datos de clase a miembro de datos.

Corte corto

Puntero puntero

cadena de cadena

Una cadena terminada en 0.

Texto Reglas de texto métrico

u unsigned int unsigned entero

Ul unsigned long (ULONG) unsigned long.

w palabra (entero corto sin signo)

coordenadas x, y x, y (entero corto) valor de coordenadas/entero corto.

Vacío

Alcance de la acción:

Ejemplo de prefijo de alcance

Alcance global g_ g_Servers

Variable miembro m_ m_pDoc

Sin alcance local de cadena

Tipo de datos

Lista de prefijos públicos de VC

Ejemplo de descripción del tipo de prefijo

Ch char carácter de 8 bits chGrade

Ch TCHAR carácter de tipo UNICODE de 16 bits chName

Boolean La variable booleana está deshabilitada

Entero (su tamaño está determinado por el sistema operativo ) longitud

Unint entero sin signo (su tamaño lo determina el sistema operativo) nLongitud

w palabra entero sin signo de 16 bits wPos

l largo 32 -bit Entero con signo l desplazamiento

Entero sin signo de 32 bits

Puntero de módulo de memoria, puntero variable pDoc

Puntero largo

32- carácter de bit Puntero de cadena

Puntero de cadena constante de 32 bits

Lpsz LPCTSTR Puntero constante de tipo UNICODE de 32 bits lpszName

identificador h Identificador de objetos de Windows hWnd

lpfn(*fn)() función de devolución de llamada puntero de devolución de llamada puntero lejano al que apunta.

Función de devolución de llamada lpfnAbort

2.2.2 Denominación de funciones y procedimientos

El cuerpo del nombre de la función o procedimiento debe ser mixto y debe ser lo suficientemente largo para describir su función . Además, los nombres de las funciones deben comenzar con un verbo, como InitNameArray o CloseDialog. Para proyectos más largos o de uso frecuente, se recomienda utilizar abreviaturas estándar para racionalizar la longitud del nombre. En términos generales, los nombres de variables de más de 32 caracteres son difíciles de leer en un monitor VGA. Cuando utilice abreviaturas, asegúrese de que sean coherentes en toda su solicitud. En un proyecto, si usa Cnt por un tiempo y Count por un tiempo, causará confusión innecesaria.

Para funciones escritas por usted mismo, si es una función clave del sistema, la información de la función debe marcarse encima de la parte de implementación de la función, en el siguiente formato:

/ /====== ============================================ =====

// Nombre de la función: InsureHasOutputInfo

// Descripción de la función: Asegúrese de que la información de salida sea correcta.

//Parámetros de entrada:nproductivo:ID del producto correspondiente.

//Parámetros de salida: void

//Fecha de creación: 00-2-21

//Fecha de modificación: 00-2-21

//Autor: * * *

//Comentarios adicionales:

//=================== ====================================

Tipos definidos por el usuario

En proyectos grandes con muchos tipos definidos por el usuario, a menudo es necesario darle a cada tipo su propio prefijo de tres caracteres. Si estos prefijos comienzan con "u", es fácil identificar rápidamente los tipos definidos por el usuario al trabajar con ellos. Por ejemplo, ucli se puede utilizar como prefijo para variables de tipo de cliente definidas por el usuario.

Nota: Para variables no generales, indíquelas al definirlas y, si es posible, coloque la definición de la variable al principio.

Control de nombres

Los objetos deben nombrarse con prefijos consistentes para que las personas puedan identificar fácilmente el tipo de objeto.

Lista de nombres de definiciones de macros comunes de VC

Rango de ejemplo de símbolo de tipo de prefijo

IDR_identifica el tipo compartido por múltiples recursos * * * IDR_MAINFRAME 1~0x6FFF

IDD _ dialog IDD _ Spell _ check 1 ~ 0x 6 fff

HIDD_Ayuda contextual basada en diálogo Hidd _ Spell _ Check 0x 20001 ~ 0x 26 ff

Recurso de mapa de bits IDB_ (mapa de bits) BID_empresa_logo1 ~ 0x6fff

IDC_cursor IDC_lápiz 1 ~ 0x 6 fff

IDI_icon recurso (icono) IDI_Bloc de notas 1~0x6FFF

Barra de herramientas o barra de menú ID_, IDM_ Elemento de comando ID_TOOLS_SPELLING 0x8000~0xDFFF

Ayuda contextual del comando HID_ HID_ herramientas _ ortografía 0x 18000 ~ 0x 1 dfff

El cuadro de mensaje IDP_ solicita el recurso de texto IDP _ NO VÁLIDO _ PARTNO 8 ~ 0xDFFF.

HIDP_Message box contexto ayuda hidp_invalid_part no 0x 30008 ~ 0x 3d fff

IDS_ recurso de cadena (cadena) ids _ copyright 1 ~ 0x7fff

Control de recursos en IDC_dialog IDC_Recalc8 ~ 0xdfff

2.3 Reglas del código fuente

2.3.1 Convención de estilo: la estructura jerárquica del programa se guarda en formato sangrado. Es necesario ver intuitivamente estructuras jerárquicas como bucles y juicios.

Para cada bloque de funciones anidadas, use sangría de tabulación (se puede establecer en 4 espacios) y las llaves deben colocarse en la siguiente línea de la declaración condicional, que es una línea separada, por lo que los paréntesis deben colocarse en líneas separadas. En la mayoría de los casos, se deben comentar las banderas anti-expansión. Los ejemplos son los siguientes:

si (condición 1)

{

mientras (condición 2)

{

… ..

… ..

}//finalizar mientras (condición 2)

}//finalizar si (condición 1)

O

si (condición 1) {

mientras (condición 2) {

….

….< /p >

}//end while (condición 2)

}//end if (condición)

2.3.2 Se deben utilizar espacios antes y después del operador.

2.3.3 Se debe agregar un espacio después de la coma que separa el índice del array y los parámetros de la función.

2.3.4 El uso de declaraciones go to está estrictamente prohibido.

2.3.5 Solo se pueden utilizar sentencias SQL estándar para operaciones de bases de datos, y las palabras clave deben estar en mayúscula (como SELECT, WHERE, etc.) y los elementos de datos (tablas, campos, vistas, etc.). ) debe escribirse según el diccionario de datos.

2.3.6 El código del programa debe tener suficientes funciones de procesamiento tolerantes a fallos.

Utilice uniformemente el formato de lanzamiento de C++ para posibles excepciones:

Pruebe

{

//Código que puede causar excepciones

Lanzar t; // Generar manualmente una excepción

}

catch (type_1e) //type_1 es un definidor de tipo, como int, CException, _com_error.

{

//manejo de excepciones de tipo type_1

}

Catch (tipo 2 e)

{

//manejo de excepciones de tipo type_2

}

2.3.7 La estructura del código del programa debe ser clara y las líneas en blanco deben usarse de manera adecuada.

El control de versiones del proyecto 2.3.8 debe ser estricto y el formato de versión es me.ae.aa.mmdd, donde [me] representa el número de versión principal [ae] representa la versión secundaria; número; [yy.mmdd 】Indica la fecha de creación de la versión. Las versiones superiores son lo más compatibles posible con el uso, los datos o los protocolos de las versiones inferiores.

2.4 Reglas de nomenclatura de archivos

2.4.1 De acuerdo con la estructura especificada en el diseño del sistema, cree las carpetas y subcarpetas correspondientes según sea necesario.

2.4.2 Los nombres de carpetas y archivos deben poder expresar su significado tanto como sea posible. Los nombres en inglés deben usarse tanto como sea posible. No se permiten caracteres chinos.

2.4.3 El nombre del archivo generalmente adopta el formato "xxx_yyy.ext", XXX (3-4 letras) representa la clasificación y yyy (número personalizado de letras) representa la operación (como " /ejemplo/exp_edit.htm").

\

¡Lo copié de documentos de la empresa! ¡Compruebe usted mismo si funciona para usted!