A Notação húngara, criada por Charles Simonyi, visa a facilitar o reconhecimento do tipo de variável num programa. O nome foi dado a partir de uma brincadeira comum entre os primeiros a conhecer a notação que a achavam estranha, fazendo o seguinte comentário: "É tão estranho que até parece húngaro".
Quando se confronta com a necessidade de dar um novo nome a uma variável num programa, o programador deve tomar alguns cuidados ao tomar essa decisão:
Nome mnemônico - é aquele que facilita a lembrança do significado pelo programador; Nome sugestivo - é aquele em que outros podem ler o código; Formato - é sempre visto como uma ideia estética, tendo sempre uma informação eficiente do programa teste; Velocidade de decisão - não se pode perder muito tempo para ponderar um simples nome, pois não haverá tempo para editar e digitar nomes de variáveis longos.
A adoção deste critério de nomeação é bastante prática e intuitiva, sendo a ideia básica nomear todos os tipos de quantidades, visando-se a simplificar o entendimento do programa. Algumas vantagens deste método:
Os nomes em mnemônicos são utilizados num senso muito específico. Se alguém se lembrar da quantidade ou como os nomes foram construídos através de outros tipos, o nome poderá ser lido facilmente. Os nomes sugestivos são muito bons. É capaz de se mapear qualquer nome dentro do seu tipo, tendo as informações necessárias para construir sua interface e utilizar de maneira correta sua quantidade. Os nomes devem ser consistentes, porque eles são construídos pelas mesmas regras. A decisão por um nome deve ser mecânica e rápida. As expressões nos programas devem ser sugestivas, facilitando a leitura e acompanhamento do programa. Com o objetivo de fazer listas intuitivas de se ler, os programas baseados na plataforma Windows utilizam a Notação húngara para gerar estas listas.
As regras para se utilizar a Notação húngara são: Os tipos definidos e/ou criados devem aparecer em letras maiúsculas; constantes e "Macros" que vêm definidas em arquivos inclusos aparecem também em letras maiúsculas; Funções e nomes estruturados começam com letras maiúsculas. Nenhuma marca abaixo são utilizadas para nomes, exceto para os casos que se encontrem nas duas regras anteriores; Nomes de objetos começam com uma ou mais letras maiúsculas, indicando o tipo do objeto.
A tabela abaixo indica os tipos de indicadores mais utilizados na Notação húngara:
Nome Descrição s String sz Aponta o primeiro caracter da terminação zero da string st Ponteiro da string, o primeiro byte é contado dos caracteres h handle (título) msg Message fn function (usada com pointer) c char (8 bits) by unsigned char (byte or uchar - 8 bits) n Intb Boolean (verdadeiro ou falso) f Flag (boolean, logical). Se qualificado é usado, pode descrever o estado verdadeiro do flag. Exceção às constantes.u integerw Wordch Char, com texto ASCII l long int (32 bits) dw unsigned long int (dword - 32 bits)
Categoria:Programação