Lviv Software Developers Community

Lviv Software Developers Community (LSDC) - це спільнота, яка об'єднує програмістів міста Львова.
Обмін досвідом, корисні поради, спільна ініціатива та достовірна інформація з перших уст - все це дозволяє досягнути продуктивної взаємодії.

Домовленості про назви в коді .NET

Питання про домовленості про назви в коді вирішується по-різному. Загальновизнаних стандартів немає, кожна організація зазвичай має власні домовленості, є рекомендації від Microsoft, є рекомендації від окремих програмістів. Для перевірки стилю коду застосовують, наприклад, StyleCop.

StyleCop. перевіряє стиль коду (для C#) за правилами (більше 100), які можна поділити на 7 груп:

  • Документування — перевірка оформлення документування для класів, методів (42 правила)
  • РОзмітка коду — аналіз розташування відступів і дужок (16 правил)
  • Супроводжуваність — наприклад, що в одному файлі задекларовано один клас (7 правил)
  • Назви — наприклад перевірка, чи назва класу посинається з великої букви (11 правил)
  • Розміщення — перевіряє, чи частини коду розміщені в певному порядку (8 правил)
  • Зрічність для читання — перевірка форматування коду для зручного читання (22 правила)
  • Простір між елементами — відступи і т.д. (28 правил)

Тобто, StyleCop перевіряє стиль кодування — форматування коду, і не робить глибокого аналізу, такого як перевірка на безпеку, наявність коректної обробки "вузьких місць.

Один з варіантів стандартів пропонується для всіх розробок на .NET, включно з веб-аплікаціями на ASP.NET і Windows-аплікаціями на .NET, наприклад:

Type: Namespaces
Standard / Convention: Standard Based Upon Microsoft .NET Library Standards

Pascal Case, no underscores. Use CompanyName.TechnologyName as root. If you don't have a company, use your domain name or your own initials. Note that any acronyms of three or more letters should be pascal case (Xml instead of XML) instead of all caps.

Why: This convention is consistent with the .NET Framework and is easy to read.

Example:
AppliedIS.TimeCard.BusinessRules
IrritatedVowel.Controllers
PeteBrown.DotNetTraining.InheritanceDemo PeteBrown.DotNetTraining.Xml

Див. далі на .NET Programming Standards and Naming Conventions.

Коментарі

нарешті хлопці з МС взялися за голову