Венгерская нотация в VB.NET? - PullRequest
5 голосов
/ 17 мая 2011

Наш учитель программирования научил нас использовать венгерскую нотацию (например, intMyInteger, strMyString, ...) при программировании.

Но я слышал, что где-то это на самом деле не используется в профессиональнойМир.Это правда?

Редактировать: Я только что узнал, что это на самом деле "Leszynski"

Ответы [ 6 ]

6 голосов
/ 17 мая 2011

Вы правы;Венгерская нотация осуждается.

5 голосов
/ 17 мая 2011

True. Современные IDE, неправильное понимание приложения, проблемы с использованием и т. Д .... по сути убили его. Это не значит, что вы не найдете его там, но я бы не стал использовать его и привыкло к коже верблюда и паскаля.

У Microsoft есть рекомендации по стандарту именования с. Они используют его в .Net Framework, и многие следуют этому.

MS также имеет сайт All-In-One Code Framework , на котором есть документация и примеры, которые помогут развить эту мысль и другие лучшие практики (с точки зрения MS).

4 голосов
/ 17 мая 2011

Эта статья Джоэля предоставит вам некоторую полезную информацию о венгерской нотации.
http://www.joelonsoftware.com/articles/Wrong.html

1 голос
/ 17 мая 2011

AFAIK, он использовался специально под Windows.Венгерская нотация взята из инженера-программиста Чарльза Симони , который в то время был сотрудником Microsoft.К настоящему времени оно в основном вышло из употребления, как вы можете увидеть .По моему мнению, я согласен со Страуструпом, так как он говорит, что полезность венгерской нотации предназначена только для слабо типизированных языков, но это сбивает с толку в языках ООП и в целом является пределом абстракции.

1 голос
/ 17 мая 2011

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

0 голосов
/ 18 сентября 2017

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

Я не нашел ни одной "официальной" рекомендации по именованию, которая бы мне идеально подходила.

Я думаю, что читаемость является наиболее важной темой.

Мои личные правила:

Частные переменные должны начинаться с _.Переменные должны использовать сокращенный венгерский стиль, например s для string, i для integer, b для boolean и т. Д.

Переменные, передаваемые в функцию, всегда начинаются сu для меня, и у них очень отличное имя, например uCountItemsInAList, так что венгерский префикс не нужно использовать, потому что тип уже относительно ясен из именования.И переменные, передаваемые в функции, уже, вероятно, легко будут неправильно интерпретированы, поэтому, на мой взгляд, допускается длинное, очень описательное имя.

Когда я использую класс только внутри функции, если функция короткая, я начинаюимя класса с n.

Я кодирую около 16 часов в день, и я делаю это вручную, поэтому я думаю, что мой ответ не может быть таким «неправильным».Хотя эта тема очень субъективна, я думаю, что читабельность может считаться ключевым фактором, и мой способ кодирования содержит части всех топовых кодеров, которые я смог изучить до сих пор.

...