Re: Соглашения по оформлению кода команды RSDN
От: Frostbitten Россия  
Дата: 09.11.04 23:38
Оценка: 8 (2) +1 :))) :))) :)
Здравствуйте, RSDN Team, Вы писали.

Раз уж документ объявляется правилом, то не появляется ли желания перенумеровать описанные там утверждения? А то для использования в реальных разработках приходиться создавать копию документа, нумеровать все и выкладывать у себя вместо того, чтобы дать ссылку на [http://www.rsdn.ru/article/?511
Автор(ы): RSDN Team
Дата: 27.02.2003
].

Да и на форуме удобнее будет — написал новичек опрос с кодом, а ему бац: Вы нарушили пункт 14.6.1.12 Соглашений по оформлению кода — бан на месяц по IP.
Re: Соглашения по оформлению кода команды RSDN
От: PawnHunter  
Дата: 27.11.04 20:03
Оценка: 21 (2)
Здравствуйте, RSDN Team, Вы писали:

А>Статья:


Спасибо за "соглашения" — отличная основа для правил по оформлению кода.
Я полностью, согласен с Frostbitten в том, что нужно пронумеровать все утверждения
Автор: Frostbitten
Дата: 10.11.04
. Когда я этим занимался, заметил несколько неточностей структурирования. Все, что написано в параграфе "Именование идентификаторов — Пространства имен — Импорт пространств имен" относится, скорее, к оформлению кода ("Стиль кода"), чем к именованию идентификаторов. То же касается параграфа "Именование идентификаторов — Типы" и некоторых других (например, "Одна декларация должна содержать не более одного поля и должна располагаться на одной строке." — в "Именование переменных — Поля").
Напротив, часть того, что написано в "Стиль кода — Локальные переменные" относится как раз к именованию ("Используйте стиль Кэмел для регистра букв в именах переменных.", "Счетчики в циклах традиционно называют i, j, k, l, m, n." и др.).

Также, хотелось бы иметь параграф про оформление атрибутов.

[Visible]
publiс string Name;

или 

[ Visible ]
publiс string Name;

//////////////////////

[Visible]
[Nullable]
publiс string Name;

или 

[
Visible, 
Nullable
]
publiс string Name;

или

[Visible, Nullable]
publiс string Name;

И про регионы. Не знаю, правда, используются ли регионы в проектах РСДН.
Прбовал разбивать код на регионы по семантическим признакам, но это оказалось не сильно полезным — в каждом классе свои собственные регионы, большое разнообразие регионов. Сейчас пробуем такой вариант:

1. Элементы типа могут быть разбиты на регионы. Разбинеие производится по формальным признакам. Отдельный регион для полей, отдельный — для свойств, отдельный — для методов и т.д.. Вложенные типы находятся в отдельном регионе, реализации интерфейсов — в собственных регионах.
2. Старайтесь не использовать вложенные регионы.
3. Список основных регионов:
Inner types. Регион для вложенных типов.
Fields. Регион для полей.
Properties. Регион для свойств.
Indexers. Регион для индексаторов.
Constructors. Регион для конструкторов.
Methods. Регион для методов.
Events. Регион для событий.
Interface members. Регион для реализации интерфейса.

Пример:

public class MyClass
{
#region Inner types
#endregion Inner types

#region Fields
#endregion Fields

#region Methods
#endregion Methods

#region ISerializable members
#endregion ISerializable members

    ...
}


4. Для того, чтобы разделить елементы типа по какому-либо дополнительному признаку, например, по области видимости, основной регион может быть разбит на несколько регионов. В этом случае к началу названия региона добавляется значение признака, по которому разделяются элементы.

Пример:

public class MyClass
{
#region Static Properties
#endregion Static Properties

#region Instance Properties
#endregion Instance Properties

#region Public methods
#endregion Public methods

#region Protected methods
#endregion Protected methods

    ...
}


Будет ли вторая версия правил? Могу поучаствовать.
Re: Соглашения по оформлению кода команды RSDN
От: orangy Россия
Дата: 27.01.05 11:26
Оценка:
Здравствуйте, Аноним, Вы писали:


MS Code Style internal guidelines
"Develop with pleasure!"
Re: Соглашения по оформлению кода команды RSDN
От: _FRED_ Черногория
Дата: 25.10.06 18:47
Оценка:
Здравствуйте, RSDN Team, Вы писали:

RT>Соглашения по оформлению кода команды RSDN
Автор(ы): RSDN Team
Дата: 27.02.2003

RT>Этот документ описывает единый стиль кода, разработанный командой RSDN. В первую очередь он предназначен для использования в проектах, ведущихся в рамках RSDN. Надеемся, что этот стиль будет полезен всем тем, кто так же ищет удобный единый стиль форматирования исходного кода.

Вот тут положил файл настроек для MSVS 2005, удовлетворяющий (если я нигде не наврал) соглашениям.

Вопрос: верно ли я понимаю, что сдедующие куски кода оформлены в соответствии с соглашениями? Если нет, то почему?
foreach(object o in items) // внутри for-а один if-else
  if(condition) // со "сложным" if-ом "простой" else
  {
    int a = 0;
    a++;
    a++;
    a++;
    a++;
    a++;
  }
  else
    bla-bla-bla;
Help will always be given at Hogwarts to those who ask for it.
Re: Соглашения по оформлению кода команды RSDN
От: Аноним  
Дата: 02.06.08 08:43
Оценка:
Здравствуйте, RSDN Team, Вы писали:

Здравствуйте, объясните пожалуйста что такое lightweight поля, что под этим имеется ввиду в данной статье?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.