Соглашение префикса типа переменной - PullRequest
0 голосов
/ 20 июля 2011

Однажды я слышал, что хорошее соглашение для именования переменных (в строго типизированном языке) заключается в том, чтобы поставить перед ними первую букву типа переменной.

Например (в C ++):

int iInterestRate;
string sMessage;

Я не уверен, каковы преимущества этого.Есть ли?И если да, то что они?Это хорошее и общепринятое соглашение для именования переменных?

1 Ответ

1 голос
/ 16 декабря 2011

Звучит так, как будто вы слышали о системной венгерской нотации, которая раньше была принятой конвенцией.

Было ли это хорошо?Зависит от того, кого вы спрашиваете.Для меня префикс был хорош, причин для этого не так много.

В наши дни Systems Hungarian часто встречают с большим презрением - потому что это было ошибкой.Намерение оригинального (Apps) венгерского языка было неправильно понято, и то, что следовало, было большим беспорядком.

Конечно, у венгерских систем есть некоторые преимущества, Википедия пытается список:

http://en.wikipedia.org/wiki/Hungarian_notation#Advantages

Нет недостатка в горячих комментариях по этому вопросу - я не буду все это отрыгивать здесь - я просто утверждаю, что вам не следует использовать жесткую систему префиксов переменных с их data type.

Однако, если вы хотите узнать, есть ли преимущества префикса переменных с их логическим типом,Ответ безоговорочный «Да».

Посмотрите на Apps Венгерский:

http://msdn.microsoft.com/en-us/library/Aa260976

http://www.byteshift.de/msg/hungarian-notation-doug-klunder

Я не защищаю весьЯ просто говорю, что их рассуждения верны.

Преимущества и недостатки префиксов весьма субъективны.Некоторые говорят, что это затрудняет чтение кода, в то время как другие не имеют с этим проблем.Некоторым сложно поменять имена, другим легче.

Я?Я предпочитаю, чтобы мой язык кодирования легко отличался от человеческого английского.Префикс дает мне контроль над моим кодом, которого у меня не было бы.Я не знаю и не волнуюсь, если мой код труден для чтения - мне важно, чтобы он был легок для понимания .

Так что да, простое соглашение о префиксаххорошо.Только не называй это венгерским.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...