Vous êtes sur la page 1sur 32

PRI VADO

ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 1-1/32

ESTNDARES DE PROGRAMACIN
HIPER S.A.
VERSIN 2.00

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 2/32

Rol Preparado por: Revisado por: Aprobado por:


Analista de Procesos Encargada de Procesos Gerente de Desarrollo de Software

Autor
Mauro Rojas Susana De la Cruz lvaro Chavez

Fecha
05 de junio de 2009 05 de junio de 2009

Resumen :

Procedimiento para estndares de programacin en el rea de desarrollo, cubre BD, Visual Basic, Visual C++ y Java.

EVOLUCIN DEL DOCUMENTO


Versin Draft 1.00 1.10 1.20 1.30 1.40 2.00 Fecha 23/05/00 09/07/03 29/11/05 19/12/05 29/05/07 07/07/08 11/07/08 Autor Achavez Achavez Evolucin Documento de trabajo, primera versin Simplificacin, inclusin de tablas, normas de VB Bmatic2

Ccardenas Revisin y modificaciones de estndares de Java. Ccardenas Modificacin de declaracin de controles GUI en los estndares de java Scruz Mrojas Mrojas Mrojas, Bguerra, Jwong, Jhuaman Unificacin de documentos (java y visual) Refinamiento de los estndares de Programacin. Incorporacin de observaciones de validacin. Unificacin de los prefijos de las variables segn el tipo de dato. Descripcin de nomenclatura de objetos de base de datos. Modificacin en la ubicacin del bloque de comentarios en los archivos fuentes en Java. Modificacin en la ubicacin de los ejemplos de listados en la seccin 8.

2.10

07/04/09

2.20

05/06/09

Mrojas

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 3/32

CONTENIDO

1 1.1 1.2 1.3 2 3 3.1 3.2 3.3 4 4.1 4.2 5

INTRODUCCIN...............................................................................................5 OBJETIVO ......................................................................................................5 AUDIENCIA ....................................................................................................5 DOCUMENTOS DE REFERENCIAS ..............................................................5 CRITERIOS GENERALES DE CODIFICACIN ...............................................6 CRITERIOS GENERALES PARA BASE DE DATOS .......................................7 TABLAS ..........................................................................................................7 CAMPOS ........................................................................................................7 OBJETOS DE DATOS ....................................................................................8 CONVENCIONES GENERALES DE ABREVIACIN .......................................9 TIPO DE DATOS ............................................................................................9 CONTROLES..................................................................................................9 PROGRAMACION EN VISUAL BASIC ..........................................................10

5.1 GENERALIDADES .......................................................................................10 5.2 COMENTARIOS ...........................................................................................10 5.3 CONVENIOS DE NOMBRES........................................................................11 5.3.1 TIPOS DE DATOS...................................................................................11 5.3.2 CONTROLES ..........................................................................................11 5.3.3 COMPONENTES.....................................................................................12 5.3.4 OTRAS CONVENCIONES ......................................................................13 5.3.5 OBJETOS DE BASE DE DATOS............................................................13 5.3.6 NOMBRES DE CONSTANTES ...............................................................13 5.4 OPERADORES.............................................................................................14 6 PROGRAMACION EN C++.............................................................................15 6.1 COMENTARIOS ...........................................................................................15 6.2 CONVENCIONES DE NOMBRES ................................................................16 6.2.1 NOMBRES DE VARIABLES Y FUNCIONES ..........................................16 6.2.2 TIPO PREFIJO ........................................................................................16 6.2.3 NOMBRE.................................................................................................17 6.3 CONSIDERACIONES PARA EL ESTILO DE CODIFICACIN. ....................18 7 PROGRAMACION EN JAVA ..........................................................................19 7.1 GENERALIDADES .......................................................................................19 7.2 ORGANIZACIN DE LOS ARCHIVOS.........................................................19 7.3 ARCHIVOS FUENTE ....................................................................................19 7.4 TABULACIONES ..........................................................................................20 7.4.1 LONGITUD DE LINEAS ..........................................................................20 7.4.2 JUNTADO DE LINEAS ...........................................................................20 7.5 COMENTARIOS ...........................................................................................20 7.5.1 DELIMITADORES ...................................................................................20 7.5.2 BLOQUES DE COMENTARIO ................................................................21 7.5.3 COMENTARIOS DE UNA LINEA............................................................22
NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 4/32

7.6 CONVENCIONES DE NOMBRADO .............................................................22 7.6.1 TIPOS DE DATOS...................................................................................23 7.6.2 CONVENCIONES DE NOMBRADO DE CONTROLES...........................24 7.6.3 CONVENCIONES DE NOMBRADO DE OBJETOS ................................24 7.7 DECLARACIONES .......................................................................................25 7.7.1 POR LINEA .............................................................................................25 7.7.2 UBICACIN ............................................................................................25 7.7.3 INICIALIZACIN .....................................................................................25 7.7.4 DECLARACIONES DE CLASES E INTERFACES..................................26 7.8 SENTENCIAS ...............................................................................................26 7.8.1 SENTENCIAS SIMPLES .........................................................................26 7.8.2 SENTENCIAS RETURN ..........................................................................26 7.8.3 SENTENCIAS IF- ELSE ..........................................................................27 7.8.4 SENTENCIAS FOR .................................................................................27 7.8.5 SENTENCIAS WHILE .............................................................................27 7.8.6 SENTENCIAS DO- WHILE......................................................................28 7.8.7 SENTENCIAS SWITCH...........................................................................28 7.8.8 SENTENCIAS TRY- CATCH - FINALY ...................................................29 7.9 ESTILO DE PROGRAMACIN RECOMENDADO .......................................29 8 OTROS ESTNDARES: .................................................................................31

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 5/32

1 INTRODUCCIN
1.1 OBJETIVO

El presente documento contiene las recomendaciones para el formato y escritura de archivos fuente, est orientado a los lenguajes de programacin Java, C++ y Visual Basic. En general estas normas o convenciones deben seguirse a menos que expresamente se determine seguir otras normas en algn proyecto en particular, en este caso las nuevas normas deben estar descritas dentro de la documentacin del proyecto.

El objetivo de las normas es garantizar una fcil lectura de los archivos fuente por parte de personas diferentes a los programadores originales, del mismo modo facilita la portabilidad de rutinas entre diferentes proyectos y la integracin con libreras de terceros ya que se utilizan normas que son consideradas estndares de facto o de gran difusin en la industria.

1.2

AUDIENCIA

El presente documento esta dirigido a programadores responsables por el mantenimiento y desarrollo de los diferentes sistemas, tambin a las personas involucradas en la revisin de las fuentes y la determinacin de la calidad de los mismos.

1.3

DOCUMENTOS DE REFERENCIAS

Este documento contiene los convenios de nombres usados por los Servicios de Consulta Microsoft (MCS), y los estndares de Sun Microsystems.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 6/32

2 CRITERIOS GENERALES DE CODIFICACIN


La codificacin debe seguir los siguientes principios generales, algunos de los cuales son ampliados posteriormente:

Todos los archivos fuente deben incluir una cabecera indicando el propsito, sistema e historia de cambios (el historial de cambios no ser necesario si se maneja una herramienta para el control de versiones).

Todas las declaraciones de variables deben incluir un comentario en lnea describiendo el uso de la variable.

Cada funcin debe tener una cabecera indicando el nombre, el propsito, los argumentos y los valores de retorno.

Las partes del cdigo complejas deben incluir comentarios aclaratorios en la lnea respectiva.

Las variables y funciones deben nombrarse de acuerdo a los estndares descritos en este documento.

Las entidades deben estar identificadas en clases y la funcionalidad correctamente encapsulada.

Para Visual Basic y C++: o Las funciones deben tener un tamao manejable, no deberan tener ms de 100 lneas en condiciones normales. o Las funciones deben ser escritas respetando los principios de cohesin y acoplamiento de programacin estructurada.

Para Java: o o Los mtodos deben tener un tamao manejable, no deberan tener ms de 50 lneas en condiciones normales. Los mtodos deben ser escritas respectando los principios de Programacin Orientada a Objetos (Herencia y Polimorfismo). o Todos los comentarios de la clase, funciones y variables miembro debe estar sujeta al estndar JavaDoc.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 7/32

3 CRITERIOS GENERALES PARA BASE DE DATOS


El nombre de los objetos usados en la base de datos no debe exceder a 16 caracteres.

3.1

TABLAS

El nombre de la tabla tiene el siguiente formato: <Acronmico de tabla><nombre de tabla> Ejemplo: tmTicket

CAMPO

LEN

DESCRIPCIN Existen los sgtes. Tipos: - tm = tabla maestra - tx = tabla de uso del sistema - tp = tabla de proceso - ta = tabla asociativa y relacional. - th = tabla historial Td=dimensional El nombre de la tabla puede ser de una palabra o compuesta de ms de una. En cualquier caso se escribe tipo ttulo la primera con mayscula y lo que sigue con minscula.

Acronmico

Nombre de tabla

Hasta 14

3.2

CAMPOS

El nombre de los campos tiene el siguiente formato. <Acronmico del campo><abreviatura de la tabla><abreviatura de la tabla> Ejemplo: fTkGenerado

CAMPO

LEN

DESCRIPCIN Los acronmicos representan la funcin del campo ms no el tipo de dato dado que todos son de tipo STRING. Existen los siguientes. Tipos: - c = campo cdigo - d = campo descriptivo - h = campo hora - f = campo fecha - n = campo nmero La abreviacin puede ser las iniciales del nombre de la tabla. Cuando este coincide con otra tabla, se puede usar una abreviacin compuesta hasta 4 caracteres. Es la descripcin del campo y tiene un tamao tal, que el nombre completo del campo no debe exceder los 16.

acronmico

Abreviatura de tabla Nombre del campo

Hasta 4 En funcin al anterior

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 8/32

3.3

OBJETOS DE DATOS
TIPO DE DATO Store Procedure Trigger Funciones Indices ABV SP_ TRG_ FUNCT_ IX_ OBSERVACIN Todo en mayscula. Dos o tres palabras descriptivas separadas por el carcter underline (_) Todo en mayscula. Dos o tres palabras descriptivas separadas por el carcter underline (_) Todo en mayscula. Dos o tres palabras descriptivas separadas por el carcter underline (_) Todo en mayscula. Dos o tres palabras descriptivas separadas por el carcter underline (_)

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 9/32

4 CONVENCIONES GENERALES DE ABREVIACIN


La abreviatura de la los tipos de datos generales para los lenguajes de programacin que se especifican en este documento, se listan en la siguiente tabla:

4.1

TIPO DE DATOS
Tipo de Datos String boolean double Int, integer float char long short List, ArrayList Array Date, Fecha Abreviatura/Prefijo s 1 is/can/has d i f c l sh lst arr dat Ejemplo sDescripcionTicket isEstadoRegistro dTotalTickets iContTicket fPromedio cPrefijoTable lResultadoOperacion lstProveedores arrRecibosfacturados datGeneracionTicket

4.2

CONTROLES
Tipo de Controles CheckBox ComboBox Label TextField, Textbox Button Panel Imagen RadioButton Listas, Listbox ProgressBar Timer Formulario Groupbox Abreviatura/Prefijo chk cmb lbl txt btn pan img rdb lta pgb tmr frm grp Ejemplo chkEstadoTicket cmbAgencia lblNombreAgencia txtNombreAgencia btnAceptar panCliente imgAyudaAgencia rdbCargaOnLine ltaTipoVentanilla prgCargaInicio tmrTiempoRetardoEntreTicket frmPersona gprDatosCliente

Nota: Los tipos de datos y controles particulares a cada lenguaje se listan en las secciones siguientes.
El prefijo va a depender del tipo de condicional que se quiera evaluar por ejemplo: Si se quiere crear una variable condicional para determinar si un valor es de tipo fecha se debera establecer el siguiente nombre isTipoFecha. Si se quiere crear una variable condicional para determinar si un registro puede ser almacenado se debera establecer el siguiente nombre canGrabarReg. Si se quiere crear una variable condicional para determinar si un valor es contenido en una cadena se debera establecer el siguiente nombre hasCodigo.
1

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 10/32

5 PROGRAMACION EN VISUAL BASIC


5.1 GENERALIDADES

El lenguaje Visual Basic est documentado en funcin a las convenciones de codificacin establecidas por Microsoft y las buenas prcticas adquiridas en el desarrollo de nuestros sistemas. Se sugiere tomar en consideracin las siguientes recomendaciones:

Use la Opcin Explcita. Declare todas las variables para guardarlas en tiempo de programacin para reducir el nmero de errores causados por tipos (por ejemplo, aUserNameTmp versus sUserNameTmp versus sUserNameTemp). En el dilogo de Opciones del Entorno, configure la Declaracin de Variable requerida a S. Guarde archivos como texto ASCII. Guarde archivos, formularios (.FRM) y mdulos (.BAS) como texto ASCII para facilitar el uso de la versin de los sistemas de control y minimizar el dao que puede ser causado por la descomposicin del disco.

5.2

COMENTARIOS

Todos los archivos fuente contendrn un ttulo en la parte de arriba del archivo. Este ttulo seguir el formato del ejemplo que sigue.

'Author: ' Wei Hua ' ' Revision History: ' Who When ' --------------' Wei Hua 08-20-99

August 20, 1999 What --------------------------------created

Todos los procedimientos y funciones deberan comenzar con un comentario breve que describa las caractersticas funcionales de la rutina (lo que hace). ' ' ' ' ' ' ' ' ' ' ' ' ' ' ParseMultistring converts C++ type multistring to VB type array of strings and reports the number of strings in array assumptions: first parameter actually contains a good format multistring no checking is done for bad format, empty string, or null pointer arguments: strMultistring - supplies the multistring to be converted, whose format is concatenated null terminated strings, with an

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 11/32
' additional null terminator at the end of the last string ' ' intReaderCount - returns the number of strings in the array ' note that an array with 4 strings will have indexes 0 to 3 ' ' return value: ' ' an array of strings - can contain one empty element if no readers found ' indirectly through second parameter, the count of strings in the array '

5.3
5.3.1

CONVENIOS DE NOMBRES
TIPOS DE DATOS

Las variables deben declararse lo mas descriptivo posible y de tipo camello, es decir cuando es compuesta, la primera letra de cada palabra es mayscula y el resto minscula.

TIPO DE DATO Object Variant

ABV Obj Var

EJEMPLO ObjTicket VarOpcionesDePantalla

NOTA: Cualquier otra variable que no figure en la lista, no debe utilizarse.

OTROS Variables pblicas

ABV

EJEMPLO La abreviacin no cambia, pero el ttulo de la variable es todo con mayscula y si es compuesta va separado por un carcter anderlyng Ejemplo: sNOMBRE_ACTUAL_VENTANILLA Debe ser descrita todo con mayscula y lo ms descriptivo posible: Ejemplo: OPCION_ACEPTAR = 1 OPCION_RECHAZAR = 2

Constantes

5.3.2

CONTROLES

Los controles deben declararse lo mas descriptivo posible y de tipo camello, es decir cuando es compuesta, la primera letra de cada palabra es mayscula y el resto minscula.

TIPO DE CONTROL CommandBottom DriveListBox

ABV Cmd Drv CmdAceptar DrvUnidadC

EJEMPLO

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 12/32 DirListBox DTPicker ImageList Line ListView OptionButton Picture RichTextBox StatusBar SSTab Toolbar TreeView Menu WebViewer Link Listview Datagridview Datatimepicker Groupbox MaskTextbox Picturebox Statusstrip Tabcontrol Webbrowser Dir Dtp Iml Lin lvw opt pic rtb stb sst Tlb tvw mnu web lnk lvw dgw dtp grp msk pic stb tab web DirBaseDeDatos DtpFechaIngreso ImlListaAgencia LinSeparadorA LvwCliente optSexoCliente picFondoPantalla rtbObservacionGeneral stbPantallaPrincipal sstOpcionTicketera tlbPantallaPrincipal tvwMenuPrincipal mnuArchivo webAyudaAgencia lnkAsientoContable lvwTipoCuenta dgwDescripcion dtpTime gprDatosCliente mskIngreso picRegion

5.3.3 COMPONENTES
Los componentes deben declararse lo mas descriptivo posible y de tipo camello, es decir cuando es compuesta, la primera letra de cada palabra es mayscula y el resto minscula.

TIPO DE COMPONENTE ADOConnection ADORecordset Collections Clase Maestra (servidor) Clase Control (servidor) Clase de usuario (cliente) Archivos HTML

ABV cnn rec Cll CM_ CC_ cls htm

EJEMPLO CnnBMatic RecAgencia cllDetalleProgrmacion CM_Cliente CC_Ventanilla ClsCliente htmAyudaAgencia

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 13/32 NOTA: Cualquier otro componente que no figure en la lista, debe utilizarse la abreviacin de objeto genral (obj)

5.3.4 OTRAS CONVENCIONES

Otros Procedure o Function privado Procedure o Function pblico

Abv V_ B_

Ejemplo v_BuscarSiguienteTicket b_ListarAgencia

5.3.5 OBJETOS DE BASE DE DATOS


Prefijo Db Ds Fdc Fd Ix Ixc Qd qry (sufijo) ss tb td Tipo de Objeto ODBC Database ODBC Dynaset object Field collection Field object Index object Index collection QueryDef object Query (ver NOTA) SalesByRegionQry Snapshot object Table object TableDef object Ejemplo dbAccounts dsSalesByRegion fdcCustomer fdAddress ixAge ixcNewAge qdSalesByRegion ssForecast tbCustomer tdCustomers

NOTA: Usando un sufijo para consultas permite a cada consulta ser ordenado con su tabla asociada en dilogos de Microsoft Access (Agregar tablas, Listar tablas instantneas).

5.3.6 NOMBRES DE CONSTANTES


El cuerpo de los nombres constantes debera ser UPPER_CASE con subraya (_) entre las palabras. Aunque las constantes estndar de Visual Basic no incluyen informacin Hngara, los prefijos como i, s, g, y m pueden ser muy tiles para la comprensin del valor y alcance de una constante. Para nombres constantes, seguir las mismas reglas como las variables. Por ejemplo: <mnUSER_LIST_MAX gsNEW_LINE la
NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

' Lmite de ingreso mximo para la lista de Usuarios (valor entero, local al mdulo) ' Nueva lnea de cadena de caracteres (global a

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 14/32 aplicacin entera)

5.4

OPERADORES

Siempre usar un ampersand (&) cuando se concatenan cadenas, y usar el signo ms (+) cuando trabajamos con valores numricos. Usar un signo ms (+) con valores no numricos, puede causar problemas cuando operamos sobre dos variantes. Por ejemplo:

vntVar1 = "10.01" vntVar2 = 11 vntResult = vntVar1 + vntVar2 vntResult = vntVar1 & vntVar2

' vntResult = 21.01 ' vntResult = 10.0111

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 15/32

6 PROGRAMACION EN C++
6.1 COMENTARIOS

Todos los archivos fuente contendrn un ttulo en la parte de arriba del archivo. Estos elementos son:

Elemento File Summary History

Copyright

DESCRIPCIN Nombre del archivo. Resumen de la implementacin del archivo fuente. Historial de cambios, debe seguir la siguiente estructura: <Fecha dd-mm-yy>-<nombre programador>-<modificacin> El nombre del programador deber ser el nombre de red. Copyright HIPER S.A.

Este ttulo seguir el formato del ejemplo que sigue.

/*+========================================================================== File: APPUTIL.CPP Summary: Implementation file for the general application utility classes and functions offered by the APPUTIL library. For a comprehensive tutorial code tour of APPUTIL's contents and offerings see the tutorial APPUTIL.HTM file. For more specific details see the comments dispersed throughout the APPUTIL source code. History: 8-28-97: atrent - Revised (based on WINHLPRS by stevebl). (Nombre programador, modificacion) ---------------------------------------------------------------------------This file is part of the Microsoft COM Tutorial Code Samples. Copyright (C) 1995 - 2000 Microsoft Corporation. All rights reserved.

This source code is intended only as a supplement to Microsoft Development Tools and/or on-line documentation. See these other materials for detailed information regarding Microsoft code samples. ==========================================================================+*/

Adicionalmente cada funcin debe tener un encabezado con la siguiente informacin: Elemento Function Summary Args DESCRIPCIN Nombre de la funcin. Resumen de la implementacin de la funcin. Describe los parmetros de entrada y salida de la funcin, deber seguir la siguiente estructura: <tipo de parmetro> <Nombre parmetro> <Descripcin Parmetro> El tipo de parmetro puede ser: [in], [out] o [in/out] Returns Describe el retorno de la funcin. La descripcin de la funcin seguir el formato del siguiente ejemplo.
NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 16/32
/*+========================================================================== Function: AnsiToUc Summary: Convert an ANSI 'multibyte' string into a UNICODE 'wide character' string.

Args: [in/out] LPSTR pszAnsi Pointer to a caller's null terminated input ANSI string. [in] LPWSTR pwszUc Pointer to a caller's output UNICODE wide string buffer. [out] int cch Size of pwszUc in number of wide characters. Must be greater than 0. HRESULT Standard result code. NOERROR for success. ==========================================================================+*/ Returns:

6.2

CONVENCIONES DE NOMBRES

6.2.1 NOMBRES DE VARIABLES Y FUNCIONES


Los nombres de variables y funciones siguen el ejemplo de la Notacin Hngara para C. La mayora de los programadores no familiarizados con la experiencia de la Notacin Hngara tienen un poco de incomodidad con el concepto al principio, pero una vez que el concepto se vuelve parte de su rutina normal ellos encuentran que esto proporciona una mejora significante en la productividad, especialmente en el mantenimiento y perspectiva del perfeccionamiento.

Un nombre Hngaro se construye como sigue:

nombre_variable ::= [tipo_prefijo] [nombre_descriptivo] nombre_funcin :: = [prefijo_tipo_retorno] [nombre_descriptivo]

6.2.2 TIPO PREFIJO


El prefijo para todos los nombres de variables y funciones se adherirn al siguiente esquema. Esto pone informacin til acerca de un nombre de variable o funcin, incluso cuando se vieran fuera del contexto. El prefijo designa el tipo (para las variables) o el tipo de retorno (para las funciones), y cuando es seguido por unos nombres significativos, rinde una descripcin bastante completa del propsito de la variable o funcin. DESIGNACIN Global pointer enum structure unsigned short integer (2 bytes) PREFIJO g p e st u n COMENTARIOS

n se usa estrictamente para los enteros cortos

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 17/32 character byte bitfield constant (C++ equivalent of #define) non-null-terminated character string C-style null-terminated character string n by bf k s sz

En ciertos casos, estos prefijos pueden estar combinados. Por ejemplo, un nombre de variable tipo carcter no establecido se prefijara por u y c. El orden de composicin generalmente sigue el orden de la tabla de arriba, y comunica informacin importante.

Como ejemplos:

alDailyScanQuantityTotalAllLines[10]

szCustomerName[32];

PstStoreInformation

Un arreglo de 10 enteros largos, cada uno de los cuales representa la cantidad total de exmenes reunidos para todas las lneas en un da dado. Cadena de caracteres que terminan en null contienen 31 bytes paras el nombre del cliente (ms 1 byte para el null) Un indicador para estructurar stStoreInformation

Note el caso especial para uniones: en lugar de prefijar el nombre de la variable con un tipo de dato, la palabra unin debera ser usado como el nico tipo_prefijo o, alternativamente, pudiera aparecer en otra parte del nombre de la variable, con tal de que el tipo_prefijo sea nulo.

6.2.3 NOMBRE.
Este es el componente principal de un nombre Hngaro para una variable o funcin. Esto simplemente describe el uso o propsito principal de una variable o de una funcin. Esto tpicamente consiste de una o ms palabras compuestas de slo caracteres alfabticos, concatenados juntos, sin subrayas. La primera letra de cada palabra comprende el nombre_descriptivo que siempre se capitaliza, y las letras restantes de cada palabra son en minscula.

Las abreviaciones son aceptadas cuando son completamente inequvocas y describen trminos generalmente usados a travs de muchas aplicaciones. Esto se deja a la prudencia del desarrollador para usar las abreviaciones; generalmente esto se disuelve a menos que ellos puedan tener claramente un solo significado. Los ejemplos de abreviaciones aceptables son las que siguen:

ABREVIACIN

DESCRIPCIN

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 18/32 Addr Amt Misc Msg Nbr Pct Qty Direccin (de un cliente, no de estructura o variable C) Suma, importe Miscelneo Mensaje Nmero Porcentaje Cantidad

6.3

CONSIDERACIONES PARA EL ESTILO DE CODIFICACIN.

Para equilibrar el estilo de codificacin entre creatividad y entendimiento es necesario establecer puntos de referencia universales basados en las buenas prcticas difundidas en la codificacin, las cuales se listan a continuacin:

Todos los nombres de variables y funciones utilizarn la Notacin Hngara como se describi anteriormente.

Los corchetes siempre sern alineados verticalmente. La alineacin vertical de los corchetes debera estar debajo de la apertura de la palabra importante o con la apertura del bloque condicional (parntesis).

La alineacin del cdigo ser consistente a lo largo de todo el archivo. El cdigo debera ser comentado libremente con comentarios significativos. Para el cdigo oscuro o engaoso, cuya funcin no es fcilmente clara o que logra una tarea de la forma en que otra lo hara bajo las prcticas normalmente aceptadas debido a alguna condicin particular, una explicacin completa del algoritmo se acompaar por una explicacin de por qu el acceso ms comnmente aceptado no fue tomado. Esto habilitar a otros desarrolladores a intentar perfeccionar o clarificar la lgica a tiempo para algn punto posterior, si esa optimizacin o clarificacin produjeran un problema que el desarrollador original busc evitar especialmente.

Los cambios en el cdigo son tpicamente ms fciles de ejecutar por el desarrollador original. Los cambios al cdigo de otro desarrollador deberan adherirse al estilo de ese programador (alineacin de los corchetes del bloque, etc.) si todava es su responsabilidad.

El cdigo debera estar conformado por el entorno en el cual se editar o mostrar. Por ejemplo, para el cdigo que se mantendr usando los trminos ASCII, las lneas del cdigo deberan ser de 80 caracteres o menos siempre que sea prctico.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 19/32

7 PROGRAMACION EN JAVA
7.1 GENERALIDADES

El lenguaje Java est documentado en funcin a las convenciones de codificacin establecidas por Sun Microsystems y las buenas prcticas adquiridas en el desarrollo de nuestros sistemas.

Los IDEs (Integrated Development Environment) establecidos en nuestra institucin son NetBeans y JDeveloper.

Para ambos casos es indispensable el uso del Visual SourceSafe como controlador de versiones.

7.2

ORGANIZACIN DE LOS ARCHIVOS

Separar las secciones del archivo mediante espacios en blanco, una seccin est conformada por el bloque de comentario seguido del cdigo comentado, esto permite identificar fcilmente cada seccin. Evitar archivos mayores a 2000 lneas.

7.3

ARCHIVOS FUENTE

Cada archivo fuente contiene una nica clase publica o interfase. Cuando las clases privadas y las interfaces son asociadas a una clase pblica, stas debern colocarse en el mismo archivo fuente de la clase pblica. La clase pblica deber ser la primera clase o interfaz en la fuente.

Los archivos fuente en Java deben seguir la siguiente estructura:

ELEMENTO Nombre del Paquete Libreras a importar Bloque de comentario.

Declaracin de Clases e Interfaces

DESCRIPCIN Nombre del paquete donde ser incluido el archivo. Nombre de las libreras necesarias para implementar el cdigo fuente. Describe la informacin bsica del archivo, esta informacin debe ser suficiente y entendible para futuras actualizaciones y modificaciones del archivo. Esta seccin incluye la descripcin de las clases y mtodos segn el nivel. Inicio de la especificacin del cdigo.

Nota: Se colocar como comentario el Nombre del archivo en la cabecera.

Por ejemplo: /* Customer.java */ package view;


NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 20/32 import java.util.*; /** * <Bloque de comentario de la clase> * @version 1.0 02 febrero 2004 * @author jprieto * Copyright HIPER S.A. */ public class Customer {.......}

7.4

TABULACIONES

7.4.1 LONGITUD DE LINEAS


Evitar lneas superiores a los 80 caracteres de largo aproximadamente, para facilitar una mejor lectura.

7.4.2 JUNTADO DE LINEAS


Cuando una expresin no se ajuste a una sola lnea, aplicar las siguientes acciones:

Separarla despus de una coma. Separarla antes de un operador.

Ejemplo: function(longExpression1, longExpression2, longExpression3, longExpression4, longExpression5); Ejemplo para el caso de operadores aritmticos:

longName1 = longName2 * (longName3 + 4 * longname6; longName1 = longName2 * (longName3 - longName5) + 4

+ longName4 - longName5) // PREFERIDO + longName4 * longname6; // NO

7.5

COMENTARIOS

7.5.1 DELIMITADORES
Son los signos que agrupan los caracteres relacionados al comentario.

ELEMENTO Inicio de Comentario

DECLARACIN

/** /* *

DESCRIPCIN Indica que el comentario est relacionado a una clase, interfaz, constructor o mtodo. Signo global de inicio del comentario. Inicio de una nueva lnea de comentario contenido en un bloque.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 21/32

//
Finalizacin de Comentario

Delimitador de una sola lnea. Signo global de fin del comentario

*/

Nota: Es de gran importancia recordar que los delimitadores /** */ generalmente son aplicados para los comentarios genricos y son explicativos (son indispensables para documentar las clases segn el Javadoc), mientras que los delimitadores /* */ y // generalmente son aplicados para los comentarios propios a codificacin (No se muestran en al Javadoc).

7.5.2 BLOQUES DE COMENTARIO


Son usados para proporcionar descripciones de archivos, mtodos. Deben ser usados al principio de cada archivo (posterior a la importacin de los paquetes) y antes de cada mtodo.

Pueden tambin ser usados dentro de mtodos. Deberan ser precedidos por una lnea en blanco para separarlo del cdigo. Deben tener un asterisco al principio de cada lnea.

Los comentarios de los archivos deben seguir el siguiente esquema:

ELEMENTO Descripcin de Clase

DECLARACIN

Nmero de Versin

@version <nmero> <dd mes aaaa>

Autor Copyright

@author <nombre autor> Copyright HIPER S.A.

DESCRIPCIN Describir en esta seccin en forma global la especificacin de la clase o interfaz. Versin del cdigo fuente. Est compuesta por el nmero de la versin del cdigo y la fecha de modificacin. dd: Nmero de da. mes: Nombre del mes. aaaa: ao. Nombre del programador que gener o alter el cdigo. El nombr ser el usuario de red. Indica que el cdigo fuente es propiedad de HIPER S.A.

Los comentarios de los mtodos deben seguir el siguiente esquema:

ELEMENTO Descripcin del mtodo Parmetros Valor de retorno

DECLARACIN --@param <param1, param n> @return <valor1, valor n >

Referencias

@see <ref1, refn.>

DESCRIPCIN Describe globalmente la funcionalidad que implementa el mtodo. Cita los parmetros necesarios para la ejecucin del mtodo. Cita los valores de retorno del mtodo. no se puede usar en constructores o mtodos "void". Referencia a otros mtodos o

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 22/32 clases. Indica que la funcin o clase es antigua y que no se recomienda su uso porque posiblemente desaparecer en versiones posteriores. Excepcin lanzada por el mtodo

@deprecated Complementos @throws, @exception

Ejemplo:

A nivel de Clase: /** * Una clase para representar crculos situados sobre el plano. * Cada crculo queda determinado por su radio junto con las * coordenadas de su centro. * @version 1.00 02 febrero 2004 * @author jprieto * Copyright HIPER S.A. */ A nivel de mtodo:

/** * Crea un crculo a partir de su origen su radio. * @param x La coordenada x del centro del crculo. * @param y La coordenada y del centro del crculo. * @param r El radio del crculo. Debe ser mayor o igual a 0. */ public Circulo(double x, double y, double r) { this.x=x; this.y = y; this.r = r; }

7.5.3 COMENTARIOS DE UNA LINEA


Los comentarios cortos pueden aparecer en una lnea al nivel de cdigo que sigue. Se utilizar el signo //.

if (condition) { // comentario de una sola lnea... .... }

7.6

CONVENCIONES DE NOMBRADO

A continuacin se presentan las siguientes reglas que deben ser seguidas:


NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 23/32 TIPO DE IDENTIFICADOR Clases Interfaces REGLAS Deben ser sustantivos, primera letra mayscula. Deben ser descriptivos. Deben ser nombrados como las clases Deben ser verbos. Primera letra en minscula, y la Segunda letra intermedia Mayscula. Deben comenzar con el prefijo 2 del tipo de dato , seguido del nombre con la primera letra en mayscula de cada palabra. Deben ser cortas y expresar su intencin de uso. Deben ser declaradas todas en mayscula. Si es necesario usar _ para nombres compuestos. EJEMPLO class Customer interface Impuesto

Mtodos

getListaClientes

Variables locales, miembros y temporales

String sNombreCliente

Constantes

int MIN_PRICE = 4

7.6.1 TIPOS DE DATOS


Los tipos de datos genricos se describen en la seccin 4.1 del documento, a continuacin se listan algunos de los tipos de datos propios al lenguaje:

TIPO DE DATO Hashtable SimpleDateFormat HashMap

ABREVIATURA/PREFIJO ht sdf map

EJEMPLO htFormatoInterno sdfFormatoFecha mapFormato

Para el manejo de base de datos se tienen los siguientes tipos de datos mas usados: TIPO DE DATO Connection Statement ResultSet PreparedStatement ResultSetMetaData CallableStatement Con st rs pst rsmd calSt ABV EJEMPLO conBDHCenter2 stSentencia rsResultadoQuery pstSentencia rsmdDataTabla calStSentenciaSP

Para las constantes se tiene: TIPO DE IDENTIFICADOR REGLAS EJEMPLO

Referirse a la seccin 4 del documento para ver la lista de prefijos genricos.


NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 24/32 Deben ser declaradas todas en mayscula. Si es necesario usar _ para nombres compuestos.

Constantes

int MIN_PRICE = 4

7.6.2 CONVENCIONES DE NOMBRADO DE CONTROLES


Los controles deben declararse lo mas descriptivo posible y de tipo camello, es decir cuando es compuesta, la primera letra de cada palabra es mayscula y el resto minscula.

TIPO DE CONTROL Formulario Line Option Menu Table TextArea ScrollBar TextPane Table PasswordField TabbedPane ToolBar ScrollPane Tree SplitPane ToolBar Tabla

ABREVIATURA/PREFIJO frm lin opt mnu tbl tatArea scr txtPan tbl psw tbp bar scp tre scp tbr Tbl

EJEMPLO frmVentanilla linSeparadorA optSexoCliente mnuCrear tblCustomers txtAreaComentario scrHorizontal txtPanEditor tblResultados pswClave tbpPropiedades barBotones scpContenedor treComercios

7.6.3 CONVENCIONES DE NOMBRADO DE OBJETOS


Algunos tipos de objetos propios del lenguaje como las excepciones, siguen una misma notacin: CLASE Exception NumberFormatException IOException SQLException ClassNotFoundException NOMBRE DE OBJETO e nfe ioe sqle cnfe

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 25/32

7.7

DECLARACIONES

7.7.1 POR LINEA


Se recomienda una declaracin por lnea con su comentario. Ejemplo: int level; // nivel de indentacin int size; // tamao de la tabla

7.7.2 UBICACIN
Colocar las declaraciones solo en el principio de los bloques. (Un bloque es cualquier cdigo entre { y }.) Ejemplo

void MyMethod() { int int1; // inicio del bloque del metodo if (condition) { int int2; // inicio del bloque del if ... } } La nica excepcin de la regla son indexes de for, los cuales en Java pueden ser declarados en la sentencia for: for (int i = 0; i < maxLoops; i++) { ...

Por ejemplo no declarar el mismo nombre de la variable en un bloque interno. int count; ... func() { if (condition) { int count; // EVITAR! ... } ... }

7.7.3 INICIALIZACIN

Inicializar las variables locales donde ellas son declaradas. La nica razn para no inicializar una variable es si el valor inicial depende de algn clculo que ocurra primero.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 26/32

7.7.4 DECLARACIONES DE CLASES E INTERFACES

Al momento de realizar la declaracin de las clases e interfaces, tomar en cuenta lo siguiente: No establecer espacios entre el nombre de un mtodo y los parntesis. Abrir llaves { en el final de la misma lnea de la declaracin de la sentencia. Cerrar llaves } al principio de lnea a la altura de su correspondiente apertura excepto cuando esta es una sentencia nula; en dicho caso el signo } debe aparecer inmediatamente despus de { Los mtodos deben ser separados por una lnea en blanco

Ejemplo:

class Sample extends Object { int ivar1; int ivar2; Sample(int i, int j) { ivar1 = i; ivar2 = j; } int emptyMethod() {} ... }

7.8

SENTENCIAS

7.8.1 SENTENCIAS SIMPLES


Cada lnea debe contener por lo menos una sentencia.

Ejemplo:
a = 1;

7.8.2 SENTENCIAS RETURN


Una sentencia return con un valor no debe usar parntesis al menos que ellas hagan el valor de retorno mas obvio en alguna forma.

Ejemplo: return; return myDisk.size(); return (size ? size : defaultSize);

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 27/32

7.8.3 SENTENCIAS IF- ELSE


Seguir las siguientes reglas:

if (condition) { statements; } if (condition) { statements; } else { statements; } if (condition) { statements; } else if (condition) { statements; } else (condition) { statements; }

7.8.4 SENTENCIAS FOR


Sentencia for deber tener la siguiente forma: for (inicializacion; condicion; fin) { sentencias; } Ejemplo: for(int i =0; i<10; i++){ System.out.println(i); }

7.8.5 SENTENCIAS WHILE


Sentencia while deber tener la siguiente forma: while (condition) { sentencias; } Ejemplo: while(i<10){ i++;
NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 28/32 }

7.8.6 SENTENCIAS DO- WHILE


Sentencia do while deber tener la siguiente forma: do { statements; } while (condition); Ejemplo:

do { i++; } while (i<10);

Nota: Para las sentencias if-else, for, while, do-while utilizar siempre llaves {}. Evitar las siguientes formas:

if (condition) //olvidar las llaves statement; while(x>10) x++;

7.8.7 SENTENCIAS SWITCH


Sentencia switch deber tener la siguiente forma: switch (condition) { case ABC: statements; break; case DEF: statements; break; case XYZ: statements; break; default: statements; break;

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 29/32

7.8.8 SENTENCIAS TRY- CATCH - FINALY


Sentencia try match finaly deber tener la siguiente forma:

try { statements; } catch (ExceptionClass e) { statements; } catch (Exception e2) { statements; } finaly { statements; } Ejemplo: try{ controlSemana.semana(); System.out.printn("\nNo ha habido error"); } catch (ArrayIndexOutBoundException e){ System.out.println("\nIndice fuera de rango"); } finally{ System.out.println ("\nVuelvo del mtodo semana"); }

7.9

ESTILO DE PROGRAMACIN RECOMENDADO

/*Blash.java*/ package java.blah; import java.blah.blahdy.BlahBlah; /* Descripcin de la clase * @version 1.0 02 febrero 2004 * @author jprieto * Copyright HIPER S.A. */ public class Blah extends SomeClass { /* <Colocar aqu la descripcin detallada de la implementacin de la clase>. */ /** <Comentar la documentacin de la classVar1> */ public static int classVar1; /** * <Documentacin de los comentarios de classVar2 * en mas de una lnea> */ private static Object classVar2;

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN

VERSIIN 2..20 VERS N 2 20


FECHA:05/06/2009

Pgina 30/32 /** <Comentar la documentacin de instanceVar1> */ public Object instanceVar1; /** <Comentar la documentacin de instanceVar2> */ protected int instanceVar2; /** <Comentar la documentacin de instanceVar3> */ private Object[] instanceVar3; /** * ...<Documentacin del mtodo Blah>... */ public Blah() { // ..<Describir la implementacin del mtodo>... } /** * ...<Documentacin del mtodo doSomething >...... */ public void doSomething() { // ..<Describir la implementacin del mtodo>... } /** * ...method doSomethingElse documentacin... * @param someParam descripcion */ public void doSomethingElse(Object someParam) { // ..<Describir la implementacin del mtodo>... } }

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN
FECHA:05/06/2009

VERSIIN 2..11 VERS N 2 11


Pgina 31/32

8 OTROS ESTNDARES:

TIPO

NOMBRE

FRAMEWORK

STRUTS

DETALLE Struts es una herramienta de soporte para el desarrollo de aplicaciones Web bajo el patrn MVC bajo la plataforma J2EE (Java 2, Enterprise Edition).

ACCESO A BASE DE DATOS

DAO

Es un patrn de Acceso a Datos que resuelve el problema de contar con diversas fuentes de datos (base de datos, archivos, servicios externos, etc.). Encapsula la forma de acceder a la fuente de datos.

EDITOR DE REPORTES

IREPORT

EJEMPLO https://alpha:8443/svn/Ejemplos/trunk/struts - NuevoContometro.jsp: ejemplo linea 97-100. - ContometroForm.java. - ContometroAction.java https://alpha:8443/svn/Ejemplos/trunk/DAO - DAOFactory.java - SQLServerDAOFactory.java - SQLServerComptometerDAO.java: lnea 32. Mtodo: public boolean insert(Comptometer comptometer) https://alpha:8443/svn/Ejemplos/trunk/iReport - ReporteConsumoContxComercio.jrxml

GENERAR REPORTES

JASPER REPORT

APLICACIN WEB ALTAMENTE INTERACTIVAS

FLEX

https://alpha:8443/svn/Ejemplos/trunk/jasperReport - ReporteContometroAction.java: Mtodo mostrarReporte https://alpha:8443/svn/Ejemplos/trunk/ Manejo de logeo con envo de password encriptado - login.mxml ActionScripts que manejan la lgica de encriptacin: - DES.as - TripleDES.as

OFUSCADOR

PROGUARD

REALIZACIN DE SERVICIOS JAVA

WRAPPER

Es una herramienta Editor para construir la estructura visual de los reportes a implementar se realiza a travs de la edicin visual de un xml. Da un soporte visual sobre JasperReports. Es una herramienta opensource que se compone de un conjunto de libreras java que facilitan la generacin de reportes en aplicaciones tanto Web como de escritorio. Adobe Flex agrupa una serie de tecnologas para dar soporte al despliegue y desarrollo de Aplicaciones de Internet Ricas, basadas en su plataforma propietaria Flash. El objetivo de Flex es permitir a los desarrolladores de aplicaciones Web construir rpida y fcilmente aplicaciones RIAs. Es una herramienta que nos permite optimizar y ofuscar nuestro cdigo java una vez compilado. Ofusca renombrando clases, mtodos y campos con nombres poco legibles. Java Service Wrapper es una herramienta que permite instalar las aplicaciones java como servicios nativos de Windows o Linux, permitiendo controlarlos con las herramientas propias del SO.

https://alpha:8443/svn/Ejemplos/trunk/wrapper Wrapper.conf: Archivo ejemplo de Configuracin de Servicio.

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

PRI VADO
ESTNDAR DE PROGRAMACIN
FECHA:05/06/2009

VERSIIN 2..11 VERS N 2 11


Pgina 32/32

Tipo: Tipo de tecnologa Detalle: Breve descripcin la cual debe comprender su propsito, aplicacin. Ejemplo: Indicar el nombre (o seccin) de los archivos que lo implementan. Se tomar como ejemplo el proyecto Contmetro y cash management

NOTA: La informacin contenida en este documento no puede ser duplicada, publicada o copiada sin permiso escrito de HIPER S.A.

Vous aimerez peut-être aussi