Наименование объектов без венгерского? - PullRequest
2 голосов
/ 05 апреля 2010

В основном из-за чтения этого сайта я пытаюсь отойти от венгерской нотации. Или я думаю, что неподходящий (система) венгерский.

Я могу найти лучший способ назвать большинство типов данных, но я не знаю, что делать с объектами. Что было бы хорошим соглашением об именах для объектов? Я сейчас использую objRS для наборов записей. Буду ли я просто использовать rs?

Ответы [ 3 ]

2 голосов
/ 05 апреля 2010

Я бы использовал customerRecordSet или просто customers.

Вам действительно нужно напоминать себе, что это объект? Все по большей части является объектом.

Вам действительно нужно напоминать себе, что это набор записей? Как только вы увидите, что рассматриваете это как набор записей, станет ясно, что это набор записей.

1 голос
/ 05 апреля 2010

Вы отметили свой вопрос vb, но вы не указали , который vb, и ответ здесь действительно зависит от версии vb, с которой вы работаете

Системы Венгерская нотация все еще имеет большой смысл, когда вы работаете со старыми языками vb6 или vba. Это потому, что это более свободная система типов, и вы не получите большой помощи по типам данных из IDE. Информация о типе, предоставляемая венгерским префиксом, очень ценна.

Для более нового (на основе .Net) кода вообще не используйте префикс. .Net Framework любит строго типизированный код, и Visual Studio предоставит вам гораздо больше помощи, когда вам это нужно. Вам просто не нужно напоминать себе, что переменная является объектом или целым числом, набором записей или чем-то еще; это сразу видно в вашей среде разработки без префиксов.

0 голосов
/ 05 апреля 2010

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

На этой ноте я чувствую твою боль. Я изучил VB6 в колледже, и меня учили венгерской нотации, где переменная для имени будет называться strFirst. Когда я перешел на .NET и C #, я не спешил расстаться со своей старой привычкой, хотя принятый стандарт для C # не включал такую ​​запись. Я почти соответствовал (или, по крайней мере, так сказал сам), сокращая нотацию до одного символа, поэтому имя будет сохранено в переменной с именем sFirst. Я сказал себе, что мне нужен этот символ, чтобы я знал, какой у меня тип переменной. Но вы знаете, что? Это усилило еще одну дурную привычку, поскольку мое имя переменной было недостаточно описательным. Что такое sFirst? Во первых чего? Теперь я, очевидно, мог бы сделать имя переменной более описательным и сохранить венгерскую нотацию, но для меня одна плохая привычка (нотация) шла рука об руку с другой (сокращенные имена переменных).

В конце концов, и это было, вероятно, меньше года назад, я укусил пулю и начал писать код «правильным» способом. Обозначения исчезли, мои имена более наглядны, и (что лучше всего) у меня нет проблем с просмотром кода и знанием имени / контекста, с каким типом переменной я работаю, и нет также двусмысленности в понимании того, что переменная относится к. Я говорю, отпустите, вы не пропустите.

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