Notacion hungara

3,541 views 4 slides Mar 18, 2012
Slide 1
Slide 1 of 4
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4

About This Presentation

se describe como es la notacion hungar


Slide Content

Notación Húngara
Es un sistema usado normalmente para crear los nombres de variables,
tipos y estructuras cuando se programa en Windows.
El sistema consiste en prefijos en minúsculas seguidos por el nombre de las
variables, estos prefijos indican el tipo de datos.
A continuación se muestra un listado de los prefijos que se utilizan:

Prefijo Significado
b Booleano (int)
by BYTE o UCHAR (unsigned char)
c Carácter (un byte)
dw Entero largo de 32 bits sin signo (double word)
f Flags empaquetados en un entero de 16 bits
h Manipulador de 16 bits (handle)
l Entero largo de 32 bits
lbl Objeto Label
lp Puntero a entero largo de 32 bits
lpfn Puntero largo a una función que devuelve un entero

lpsz Puntero largo a una cadena terminada con cero
n Entero de 16 bits
p Puntero a entero de 16 bits
e Enumeración
pt Coordenadas (x, y) empaquetadas en un entero de 32 bits
rgb Valor de color RGB empaquetado en un entero de 32 bits
sz Cadena terminada en cero
txt Cajas de texto
w Entero corto de 16 bits sin signo (word)

Ejemplo de cómo utilizar la notación Húngara:
 nContador: la variable es un entero que se usará como contador.
 szNombre: una cadena terminada con cero la cual almacena un nombre.
 bRespuesta: una variable booleana que almacena una respuesta.
 txtHora: una instancia de un objeto textbox que almacena la hora.

Notaciones de 1 carácter

Prefijo Significado
a 'array'. Para vectores/matrices/listas de n dimensiones ordenados escalarmente.
b 'booleano'. Para variables que tomen sólo dos tipos de valores.
c 'char'. Para el tipo primitivo de carácter alfanumérico individual.
d 'double'. Para tipos numéricos de alta precisión, como double o float.
e 'event'. Para eventos.
f
'función'. Sólo la utilizaremos delante de funciones cuando se traten de funciones que se
añadan como observadores de un evento (ya que usar esta notación para cualquier
método o función sería bastante engorroso).
g 'delegated'. Para tipos delegados.
h 'hashtable'. Colecciones ordenables mediante clave hash (hUsuarios[“juan23”]).
i
'int'. Para números enteros en general, tanto enteros normales como aquellos tipos enteros
de más capacidad (como long).
l
'lock'. Para objetos de control que nos faciliten el uso de exclusiones mutuas, candados y
semáforos.
n 'enum'. Para tipos enumerados.

o
'objeto'. Para objetos en general (no se debe usar la notación húngara para distinguir entre
tipos de objetos, salvo escasas excepciones).
p 'puntero'. Para lenguajes con aritmética de punteros.
s
'string'. Para variables de tipo cadena de texto, ya sean nativos o arrays de chars. Este tipo
de datos es muy habitual en lenguajes sin lógica de punteros. Si se usara el objeto de tipo
“String” en estos casos, acudiremos a este identificador en lugar de al „o‟ de objeto.
t
'struct'. Similar al 'o' de objetos, éste se usaría para variables de tipo struct en general (es
decir, objetos de tipo primitivo).
v
'variable'. Para variables que adquieran diferentes tipos de valores. Normalmente sólo
acudiremos a esta opción en lenguajes no tipados (como JavaScript/EcmaScript). La
usaremos cuando no estemos seguros del tipo de valor que albergará una variable.
También puede valer para objetos que tengan un tipo genérico T.
y 'byte'.
Tags