Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4      [все]
 Заголовочные файлы и С#  [new]
otars
Member

Откуда:
Сообщений: 28
Интересует вопрос,а что собственно можно использовать в `C#` как альтернативу заголовочным файлам(C++).

Ведь на `C++` в отдельные файлы выносятся прототипы функций,рабочий код и тем самым создаётся читабельность огромного кода и его структурированность.

А вот как быть с `C#`?
Мной лично к сожалению не найдено явных примеров,которые бы указывали что заголовочные файлы и `C#` могут взаимодействовать.

Поиск по форуму пока не даёт результатов.
1 окт 17, 16:12    [20834613]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Изопропил
Member

Откуда:
Сообщений: 30304
otars
А вот как быть с `C#`?

так же как и в Java - никак
1 окт 17, 16:15    [20834616]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
otars,
делаем так:
- 3 раза символ /
- автоматом появится комментарий
- я лично убираю параметры что там есть и оставляю только коммент
- заполняем строку чем хотим. Хоть заголовками))
- потом при открытии файла Ctrl+M+O
и видим аналог твоих заголовочных.
ЗЫ.
Кто то делает серфинг через дерево классов, но я никак не могу привыкнуть. Только сразу в простыни кода ориентируюсь.
1 окт 17, 16:20    [20834625]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
otars,

Заголовочные файлы в C# не нужны, так как скомпилированные сборки содержат всю информацию о типах внутри.

Заголовочные файлы в C++ нужны не для того, чтобы создавать читабельность и структуированность. Если не смогли освоить С++, то не надо пытаться сравнивать его с другими языками.

Начните с бейсика для начала.
1 окт 17, 20:03    [20834845]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
- я лично убираю параметры что там есть и оставляю только коммент


Огромное упущение.


Petro123
- потом при открытии файла Ctrl+M+O


Это прекрасно работает и без комментариев.


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


Мы пишем полную документацию к коду, описываем также все параметры и возврат, делаем короткое и полное описание, вставляем примеры в комментарии, также описываем возможные исключения. Потом при сборке генерится документация и выкладываеся в вики автоматом. 100% покрытие кода (публичного) документацией — обязательное железное требование. Ещё ни разу не пожалели об этом. Колоссальный профит при командной разработке. Рекомендую.
1 окт 17, 20:07    [20834851]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
Это прекрасно работает и без комментариев.

Ты же за них )))
hVostt
Мы пишем полную документацию к коду,

Документация отдельная песня. Её делают при коробочных продуктах. Я писал об обозреваемости простыни кода.
-----
"Сложнее всего в мире достигнуть простоты. Это крайняя граница опыта, и последнее усилие гения"
Г.Санд.
1 окт 17, 21:40    [20834933]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
Документация отдельная песня. Её делают при коробочных продуктах. Я писал об обозреваемости простыни кода.


Какая разница какой там продукт, коробочный или нет?
1 окт 17, 21:45    [20834940]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
Какая разница какой там продукт, коробочный или нет?

- в коробочном тебе приказано описывать параметры в 30 строк перед каждым методом
- в не коробочном это решается в самой фирме корпоративными правилами.
Нафига мне описывать параметр в
SetParameters(Stream stream)
DataSet GetDataSet(......
Вопрос риторический.
1 окт 17, 22:44    [20834984]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
Вопрос риторический.


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

Ээх..
2 окт 17, 02:50    [20835188]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
hVostt
Какая разница какой там продукт, коробочный или нет?

- в коробочном тебе приказано описывать параметры в 30 строк перед каждым методом
- в не коробочном это решается в самой фирме корпоративными правилами.
Нафига мне описывать параметр в
SetParameters(Stream stream)
DataSet GetDataSet(......
Вопрос риторический.

И вот открываешь код, написанный в 2010-м году тем, кто уже не работает в компании, и вспоминаешь его добрым словом
2 окт 17, 07:09    [20835221]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
otars
Ведь на `C++` в отдельные файлы выносятся прототипы функций,рабочий код и тем самым создаётся читабельность огромного кода и его структурированность.
И хвала авторам C# за то, что не стали тянуть этот маразм из C++.
2 окт 17, 07:25    [20835237]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
hVostt
100% покрытие кода (публичного) документацией — обязательное железное требование.
public class Person
{
    // Фамилия.  <<---------- Кому нужен такой комментарий? Он только засоряет код.
    public string LastName;
}

Хорошему коду комментарии не нужны. Плохому коду комментарии вряд ли помогут.
+ Показательный пример: "Это мост".
Картинка с другого сайта.
2 окт 17, 07:32    [20835241]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
Petro123
Нафига мне описывать параметр в
SetParameters(Stream stream)
DataSet GetDataSet(......
++
2 окт 17, 07:36    [20835246]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Вы с позиции начальства говорите), а я с позиции программиста).
Код в коде должен быть понятен программисту, а не вам)).
Есть вилка максималистов. На соседней ветке чел весь код увешал комметами. И есть те, кто вообще не ставит. Я посередине)
Разумная достаточность. (С)
Про обозреваемость кода:
- кто при открытии кода лезет не в файл, а в обозреватель классов?
- почему ide не группирует вместе public/private?
- почему по умолчанию новый метод она ставит internal?
2 окт 17, 07:39    [20835249]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Алексей К
otars
Ведь на `C++` в отдельные файлы выносятся прототипы функций,рабочий код и тем самым создаётся читабельность огромного кода и его структурированность.
И хвала авторам C# за то, что не стали тянуть этот маразм из C++.

Эти файлы вроде есть кстати, только генерируются и не видны. Выскакивают на F12 иногда.
2 окт 17, 07:41    [20835250]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
skyANA
код, написанный в 2010-

Чаще достают оттуда короткие переменные, чтобы код понять.
2 окт 17, 07:43    [20835251]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К
Хорошему коду комментарии не нужны.


Подобный инфантильный бред устал уже слышать.
Ну давай посмотрим на твой «хороший код»:

public class Person
{
    // Фамилия.  <<---------- Кому нужен такой комментарий? Он только засоряет код.
    public string LastName;
}


Ты прав, такой комментарий никому не нужен, потому что он не отвечает ни на один из следующих вопросов:

— на каком языке эта фамилия?
— на каких языках может быть эта фамилия?
— может ли вместо фамилии присутствовать только первая буква, если нет, то где можно определить инициалы?
— где участвует это поле?
— может ли оно быть пустым?
— можно ли менять это поле напрямую где угодно? на что это влияет?

И почему-то в качестве «доказательств» утверждений про хороший код, почему-то обычно приводят самый тупой пример, который тоже ничего не доказывает.

Ладно, если с фамилией действительно всё может быть понятно, настолько часто она встречается, то как быть с другими частями? Всё ли настолько прозрачно или просто программист возомнил, что он пишет «хороший код». Главное никому его не показывать
2 окт 17, 08:24    [20835279]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К,

Ну и поле вместо свойства.. Уже как бы намекает насколько этот код «хорош» ))
2 окт 17, 08:25    [20835281]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
Petro123
Алексей К
пропущено...
И хвала авторам C# за то, что не стали тянуть этот маразм из C++.

Эти файлы вроде есть кстати, только генерируются и не видны. Выскакивают на F12 иногда.
Генерируются по данным рефлекшена. Тут главное, что вручную их писать не надо.
2 окт 17, 08:39    [20835296]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
hVostt
Ладно, если с фамилией действительно всё может быть понятно, настолько часто она встречается, то как быть с другими частями? Всё ли настолько прозрачно или просто программист возомнил, что он пишет «хороший код». Главное никому его не показывать
Я не говорю, что комментарии вообще не нужны. Они нужны, если есть какие-то неочевидные особенности. Но писать комментарии во всех очевидных местах, это маразм.
2 окт 17, 08:42    [20835298]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Алексей К
hVostt
Ладно, если с фамилией действительно всё может быть понятно, настолько часто она встречается, то как быть с другими частями? Всё ли настолько прозрачно или просто программист возомнил, что он пишет «хороший код». Главное никому его не показывать
Я не говорю, что комментарии вообще не нужны. Они нужны, если есть какие-то неочевидные особенности. Но писать комментарии во всех очевидных местах, это маразм.

И в чём же маразм, если комментарии действительно полезные? :)
2 окт 17, 08:46    [20835303]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
hVostt
Ну и поле вместо свойства.. Уже как бы намекает насколько этот код «хорош» ))
Это говорит о том, что автор знает, где нужно применять свойства, а где нет, вместо тупого написания свойств везде.

зы: Мне немного жаль "твоих" программистов. :-)
2 окт 17, 08:47    [20835305]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
skyANA
Алексей К
пропущено...
Я не говорю, что комментарии вообще не нужны. Они нужны, если есть какие-то неочевидные особенности. Но писать комментарии во всех очевидных местах, это маразм.

И в чём же маразм, если комментарии действительно полезные? :)
Ну мне добавить нечего. Вроде чётко и ясно обозначил свою позицию. Выделю навсякий.
2 окт 17, 08:49    [20835308]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К
Это говорит о том, что автор знает, где нужно применять свойства, а где нет, вместо тупого написания свойств везде.

зы: Мне немного жаль "твоих" программистов. :-)


Может пояснишь? Я свою позицию легко могу пояснить: свойства поддерживаются как контракт всеми современными библиотеками, поля нет, не всеми, потому что поля это не контракт. Свойства можно сделать виртуальными, сделать private/internal set, с полями не получится.

Использовать поля только приватными членами или только в структурах, это не религия, а обоснованное решение, с которым солидарно абсолютное большинство разработчиков.
2 окт 17, 08:51    [20835312]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К
Я не говорю, что комментарии вообще не нужны. Они нужны, если есть какие-то неочевидные особенности. Но писать комментарии во всех очевидных местах, это маразм.


Ну и в чём проблема, написать чёртов комментарий, даже если как тебе кажется всё довольно очевидно? Я вот честно тебе говорю, встречал чуваков, которые реально задавались вопросом: что это ещё за «последнее имя» такое? Многие люди уверены, что все остальные должны думать именно так как они.
2 окт 17, 08:53    [20835317]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;

или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;

?
2 окт 17, 08:53    [20835318]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К
Ну мне добавить нечего. Вроде чётко и ясно обозначил свою позицию. Выделю навсякий.



Ты забыл добавить, очевидных для кого? Для тебя? :) А если весь свой код ты считаешь очевидным и хорошим, то зачем комментарии?

Это стандартная и со временем прогрессирующая болезнь программистов-одиночек. Эээх..
2 окт 17, 08:55    [20835320]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Господа максималисты, начальники. Вы не ответили на вопрос.
Вы серфинг по файлу делаете через что?
Если через окно в ide обозреватель, тогд понятно.
Я смотрю не через него, а сам файл глазками.
И комментарии ещё пока не контракты.
2 окт 17, 09:04    [20835339]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
Ты забыл добавить, очевидных для кого? Для тебя? :)

Заставить писать много ума не надо. Найти разумную границу, надо ума поболее.
2 окт 17, 09:09    [20835347]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
Господа максималисты, начальники. Вы не ответили на вопрос.
Вы серфинг по файлу делаете через что?
Если через окно в ide обозреватель, тогд понятно.
Я смотрю не через него, а сам файл глазками.
И комментарии ещё пока не контракты.

Сёрфинг по файлу? Да по разному: Ctrl + F12 (ReSharper), Ctrl + M + O, в Sublime, в FAR, в Notepad++, в Visual Studio Code...
2 окт 17, 09:43    [20835420]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
hVostt
Ты забыл добавить, очевидных для кого? Для тебя? :)

Заставить писать много ума не надо. Найти разумную границу, надо ума поболее.

Ну ну, и в итоге комментарии не пишутся совсем :)
2 окт 17, 09:44    [20835429]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123,

Самый быстрый в мире сёрфинг Ctrl+T, Ctrl+T+T, Ctrl+T+T+T от решарпера.

Ctrl+M+O, Navigate To, Go To... И так далее.

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

И да, кстати. Даже взять этот упоротый пример от Алексея про «LastName» и как ему почему-то кажется бесполезный комментарий «Фамилия», человек в поиске по "Фамилия" найдёт все классы, где упоминается эта фамилия, а унылый говно «хороший» код Алексея пролетает как фанера над Парижем.
2 окт 17, 09:45    [20835431]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
hVostt
Ты забыл добавить, очевидных для кого? Для тебя? :)

Заставить писать много ума не надо. Найти разумную границу, надо ума поболее.


Какая разумная граница? В чём проблема написать чёртов комментарий, если ты знаешь что пишешь. Если сам не знаешь, то комментарии конечно будут лишь в тягость..
2 окт 17, 09:47    [20835433]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
hVostt
Алексей К
Это говорит о том, что автор знает, где нужно применять свойства, а где нет, вместо тупого написания свойств везде.

зы: Мне немного жаль "твоих" программистов. :-)


Может пояснишь? Я свою позицию легко могу пояснить: свойства поддерживаются как контракт всеми современными библиотеками, поля нет, не всеми, потому что поля это не контракт. Свойства можно сделать виртуальными, сделать private/internal set, с полями не получится.
Есть масса случаев, когда поле при необходимости безболезненно преобразуется в свойство. Краткость описания полей привлекает всех нормальных людей. Этот вопрос уже обсуждался, не пойму, к чему ты его поднял.

hVostt
Использовать поля только приватными членами или только в структурах, это не религия, а обоснованное решение, с которым солидарно абсолютное большинство разработчиков.
Миллионы леммингов не могут ошибаться. С другой стороны, какие к ним могут быть претензии, их так воспитали.
2 окт 17, 09:48    [20835437]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
hVostt
Ну и в чём проблема, написать чёртов комментарий, даже если как тебе кажется всё довольно очевидно?
Ну я же выше писал, что он банально мешает. Не говоря уже о бесполезно потраченном времени на его написание.
2 окт 17, 09:49    [20835440]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
skyANA
Petro123
пропущено...

Заставить писать много ума не надо. Найти разумную границу, надо ума поболее.

Ну ну, и в итоге комментарии не пишутся совсем :)

)))) не. Я за такое ругаю.
Мне бы подошла студия, где они автоматом скрываются и не мешают.
2 окт 17, 09:51    [20835446]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
сёрфинг
спс. Попробую
2 окт 17, 09:52    [20835449]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Алексей К
Есть масса случаев, когда поле при необходимости безболезненно преобразуется в свойство. Краткость описания полей привлекает всех нормальных людей. Этот вопрос уже обсуждался, не пойму, к чему ты его поднял.


Алексей К
Миллионы леммингов не могут ошибаться. С другой стороны, какие к ним могут быть претензии, их так воспитали.


Убойный аргумент: «всех нормальных людей» особенно хорошо контрастирует с «леммингами» )))
2 окт 17, 09:55    [20835457]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
skyANA
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;


или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;


?

Вот вот.
У меня методы размер с экран и треть отдать под описание что я делал?
))
2 окт 17, 10:00    [20835473]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
В обшем, пусть будет автоскрытие, формат json, и кнопка Убрать из проекта. )))
Это будет в VS2018
2 окт 17, 10:04    [20835486]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Roman Mejtes
Member

Откуда: г. Пермь
Сообщений: 2256
частенько комментирую чужой код и делаю + теги документации, так как проекты все большие, комментариев 0 и разобраться в этом говнокоде без комментариев нормально невозможно. Тем более, что когда система уже работает нужно четко понимать, что и где меняешь :( а ко многим проектам которые мне достались, даже хоть какой то документации нет :(
Первое чему нужно учиться в программировании, писать код лаконично и понятно, код должен быть хорошо прокомментирован, не каждый "шаг", а основная информация максимально коротко. И имена нужно нормальные давать используя чёткую терминологию.
Вот чего бы хотелось от того кода, с которым приходится работать, после того, как берешь чужой проект и если не хочешь, чтоб тебя поминали лихим словом ) после увольнения :)

заголовочные файлы не нужны, всю информацию, про которую пишет автор, можно получить по F12 (переход на реализацию), включая текст документации и другие метаданные
2 окт 17, 10:05    [20835491]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
skyANA
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;

или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;

?
Вероятно, есть смысл показать весь класс. Тогда будет о чём поговорить.
2 окт 17, 10:09    [20835508]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Алексей К
skyANA
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;


или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;


?
Вероятно, есть смысл показать весь класс. Тогда будет о чём поговорить.

Зачем тебе весь класс?
2 окт 17, 10:14    [20835522]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
skyANA
Алексей К
пропущено...
Вероятно, есть смысл показать весь класс. Тогда будет о чём поговорить.

Зачем тебе весь класс?
2 окт 17, 10:15    [20835528]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Алексей К
skyANA
пропущено...

Зачем тебе весь класс?

Дай угадаю: ты хочешь просмотреть весь код класса, чтобы понять, за что тот отвечает, так?
2 окт 17, 10:18    [20835537]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
skyANA
Дай угадаю: ты хочешь просмотреть весь код класса, чтобы понять, за что тот отвечает, так?


Алексей не только писать комменты не любит, но и читать
2 окт 17, 10:19    [20835545]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
Самый быстрый в мире сёрфинг Ctrl+T, Ctrl+T+T, Ctrl+T+T+T от решарпера.

Ctrl+M+O, Navigate To, Go To... И так далее.

Тьфу на тебя, нету у меня решарпера)))))
2 окт 17, 10:23    [20835557]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13461
skyANA
Алексей К
пропущено...

Дай угадаю: ты хочешь просмотреть весь код класса, чтобы понять, за что тот отвечает, так?
Ну дай хотя бы публичный контракт класса. Может мне повезёт, и я пойму всё из контракта, не заглядывая вовнутрь.
2 окт 17, 10:23    [20835558]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
hVostt
Самый быстрый в мире сёрфинг Ctrl+T, Ctrl+T+T, Ctrl+T+T+T от решарпера.

Ctrl+M+O, Navigate To, Go To... И так далее.

Тьфу на тебя, нету у меня решарпера)))))
Покликай правой кнопкой мыши и посмотри комбинации клавиш.
2 окт 17, 10:29    [20835582]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
skyANA
Petro123
пропущено...

Тьфу на тебя, нету у меня решарпера)))))
Покликай правой кнопкой мыши и посмотри комбинации клавиш.

Алексей К, тебе ответил.
Обозреватель структуры WPF появился в 2015upd3. Почти тоже самое но не то есть в WinForms.
Даже в ворде Это есть )))))
2 окт 17, 11:02    [20835685]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
skyANA
пропущено...
Покликай правой кнопкой мыши и посмотри комбинации клавиш.

Алексей К, тебе ответил.
Обозреватель структуры WPF появился в 2015upd3. Почти тоже самое но не то есть в WinForms.
Даже в ворде Это есть )))))

?
2 окт 17, 11:30    [20835783]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
skyANA
?

Word меню, 5 режимов просмотра документа.
Аналогия понятна?
У нас только один.
2 окт 17, 11:47    [20835847]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Addx
Member

Откуда:
Сообщений: 545
skyANA
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;

или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;

?


Встает вопрос.
Если вы не можете написать краткий, но исчерпывающий комментарий о том, что делает код, а не как написан, в состоянии ли вы написать сам такой код? Понимаете ли вы, зачем он нужен, логику создания данного класса, его методов и свойств?
А так в комментарий еще можно написать свои размышления на эту тему, где и зачем его использовали, ну и пару анекдотов, чтоб не скучно было ))
2 окт 17, 12:02    [20835918]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Ролг Хупин
Member

Откуда: Оттуда
Сообщений: 1434
Petro123
Вы с позиции начальства говорите), а я с позиции программиста).
Код в коде должен быть понятен программисту, а не вам)).
Есть вилка максималистов. На соседней ветке чел весь код увешал комметами. И есть те, кто вообще не ставит. Я посередине)
Разумная достаточность. (С)
Про обозреваемость кода:
- кто при открытии кода лезет не в файл, а в обозреватель классов?
- почему ide не группирует вместе public/private?
- почему по умолчанию новый метод она ставит internal?


группа "Звери"
2 окт 17, 13:10    [20836141]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Arm79
Member

Откуда: МО, Раменское
Сообщений: 3328
hVostt
Потом при сборке генерится документация и выкладываеся в вики автоматом

Чем генерируете? Я пробовал SandCastle, но его выходной формат мне не понравился. Разбираться с настройкой своего формата не захотелось.
Petro123
У меня методы размер с экран и треть отдать под описание что я делал?

А что, сворачивание не работает?
2 окт 17, 13:54    [20836316]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Arm79,
Работает, но хочется большего.
Целиком на документ Свернуть грёбаные комменты и показать только при клике мышкой.
Я 95 проц.времени код пишу, а не комменты читаю.
При свёрт и развёрт они вместе с кодом мешаются.
А в своём коде мне 1 строки достаточно.
Память не дырявая.
2 окт 17, 14:19    [20836404]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
schi
Member

Откуда: Москва
Сообщений: 2211
"люди, отказывающиеся писать комментарии, A) думают, что их код понятнее, чем мог бы быть, B) считают, что другие программисты гораздо сильнее интересуются их кодом, чем есть на самом деле, C) думают, что другие программисты умнее, чем есть на самом деле, D) ленятся или E) боятся, что кто-то другой узнает, как работает их код."

(МакКоннелл)
2 окт 17, 14:42    [20836459]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Arm79,
Кроме того подпроцедуры только появились?
Т.е. она у меня используется только один раз, а выглядит как полноценный коммент).
"Скажет перфекционист" )))
2 окт 17, 14:46    [20836473]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
schi,
D) ленивый ))
2 окт 17, 14:47    [20836475]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Arm79
Member

Откуда: МО, Раменское
Сообщений: 3328
Petro123
Arm79,
Работает, но хочется большего.
Целиком на документ Свернуть грёбаные комменты и показать только при клике мышкой.
Я 95 проц.времени код пишу, а не комменты читаю.
При свёрт и развёрт они вместе с кодом мешаются.
А в своём коде мне 1 строки достаточно.
Память не дырявая.

Я с вами не соглашусь. Подход vHostt правильный. В summary писать необходимое описание, включая описание параметров, примеры вызовов и иные моменты. Да, видимость кода может это и понизит (хотя по мне это незначительный фактор, ведь всегда можно свернуть, и свертывание сохраняется), зато всегда можно снегерировать актуальную документацию. Этот момент разработчики упускают. А поддержка доки в актуальном состоянии в ручном режиме - это очень трудная задача.
2 окт 17, 15:17    [20836569]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Arm79
Чем генерируете? Я пробовал SandCastle, но его выходной формат мне не понравился. Разбираться с настройкой своего формата не захотелось.


Собственный самописный генератор. Чёт тухловато на просторах на эту тему. SandCastle загнулся, остальное поделки так себе, даже DocFX фигня.
2 окт 17, 15:50    [20836669]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Arm79
хотя по мне это незначительный фактор, ведь всегда можно свернуть, и свертывание сохраняется

И всё? Это решение вопроса?
Попробуйте C+M,P и потом C+M, L.
Главное чтобы вам потом документацию и акт подписывать.
Не нужно решать проблемы тонера в принтере и документации за счёт программиста.
2 окт 17, 15:54    [20836681]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
Arm79,
Свертываемость кода должна быть независимой от комментов не только прицелом мышки.
Тогда всем будет хорошо.
2 окт 17, 15:57    [20836695]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Addx
skyANA
Алексей К,

вот как понятнее, так:
public class AutoIndentWriter : IStringTemplateWriter
{
    protected int charPosition;


или так:
/// <summary>
/// Essentially a char filter that knows how to auto-indent output
/// by maintaining a stack of indent levels. I set a flag upon newline
/// and then next nonwhitespace char resets flag and spits out indention.
/// The indent stack is a stack of strings so we can repeat original indent
/// not just the same number of columns (don't have to worry about tabs vs spaces then).
/// 
/// Anchors are char positions (tabs won't work) that indicate where all
/// future wraps should justify to. The wrap position is actually the
/// larger of either the last anchor or the indentation level.
/// 
/// This is a filter on a Writer.
/// 
/// It may be screwed up for '\r' '\n' on PC's.
/// </summary>
public class AutoIndentWriter : IStringTemplateWriter
{
    /// <summary>
    /// Track char position in the line (later we can think about tabs).
    /// Indexed from 0. We want to keep <![CDATA[charPosition <= lineWidth]]>.
    /// This is the position we are *about* to write not the position last written to.
    /// </summary>
    protected int charPosition;


?


Встает вопрос.
Если вы не можете написать краткий, но исчерпывающий комментарий о том, что делает код, а не как написан, в состоянии ли вы написать сам такой код? Понимаете ли вы, зачем он нужен, логику создания данного класса, его методов и свойств?
А так в комментарий еще можно написать свои размышления на эту тему, где и зачем его использовали, ну и пару анекдотов, чтоб не скучно было ))

Могли бы и погуглить AutoIndentWriter.
Неужели зайдя на страницу по ссылке у Вас складывается впечатление, что информация избыточна?
2 окт 17, 20:33    [20837329]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
schi
"люди, отказывающиеся писать комментарии, A) думают, что их код понятнее, чем мог бы быть, B) считают, что другие программисты гораздо сильнее интересуются их кодом, чем есть на самом деле, C) думают, что другие программисты умнее, чем есть на самом деле, D) ленятся или E) боятся, что кто-то другой узнает, как работает их код."

(МакКоннелл)

+1
2 окт 17, 20:34    [20837335]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
skyANA
schi
"люди, отказывающиеся писать комментарии, A) думают, что их код понятнее, чем мог бы быть, B) считают, что другие программисты гораздо сильнее интересуются их кодом, чем есть на самом деле, C) думают, что другие программисты умнее, чем есть на самом деле, D) ленятся или E) боятся, что кто-то другой узнает, как работает их код."

(МакКоннелл)

+1


F) сами нихрена не понимают что должен делать их код и как его правильно использовать, поэтому ничего написать внятного не в состоянии

а потом смеются над картинками про комментарии типа «это мост», ведь это им так близко
3 окт 17, 13:25    [20838801]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Addx
Member

Откуда:
Сообщений: 545
skyANA
Addx
пропущено...


Встает вопрос.
Если вы не можете написать краткий, но исчерпывающий комментарий о том, что делает код, а не как написан, в состоянии ли вы написать сам такой код? Понимаете ли вы, зачем он нужен, логику создания данного класса, его методов и свойств?
А так в комментарий еще можно написать свои размышления на эту тему, где и зачем его использовали, ну и пару анекдотов, чтоб не скучно было ))

Могли бы и погуглить AutoIndentWriter.
Неужели зайдя на страницу по ссылке у Вас складывается впечатление, что информация избыточна?


Нет, конечно.
Я бы и от пары анекдотов не отказался)
Если серьезно, то чем больше документации, тем лучше, но требовать писать ее для каждого метода ...
Либо ты будешь заниматься только этим вместо разработки, либо сроки вырастут в несколько раз.
Чудес не бывает.
Впрочем, есть понятие публичной документации. Но у меня то же MSDN никак не проассоциируется с "комментариями к коду".
3 окт 17, 16:41    [20839551]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Addx
Если серьезно, то чем больше документации, тем лучше, но требовать писать ее для каждого метода ...


Для каждого публичного метода, представляющего контракт. Также есть <inheritdoc />, который снижает болевой порог у людей, которым лень описывать одно и тоже.
3 окт 17, 17:41    [20839808]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Addx
Если серьезно, то чем больше документации, тем лучше, но требовать писать ее для каждого метода ...

А я требовал?
Вроде как я задал вопрос: "И в чём же маразм, если комментарии действительно полезные?". И привёл кусок кода для иллюстрации.
3 окт 17, 17:43    [20839817]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Addx
Либо ты будешь заниматься только этим вместо разработки, либо сроки вырастут в несколько раз.
Чудес не бывает.


Без всякой демагогии скажу, что это абсолютная неправда. Создаешь новый публичный тип, сразу пишешь к нему доку, это помогает не только для сопровождения, но и для разработки, когда формируешь свои мысли текстом, организуешь сам процесс в голове. Можешь отвлечься и вернуться к коду, не копаясь в памяти, или тут же передать реализацию другому человеку, это очень хорошо связано с TDD, который тоже ругают «гении от мысли» :)
3 окт 17, 17:43    [20839818]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Addx,

Уже второй год покрываем код докой, и никакой просадки по срокам из-за комментариев не замечено. Зато замечено, что количество тупой коммуникации по типу «а для чего вот этот класс?? а для чего этот метод?? а где найти работу вот с этим??» снизилось практически до нуля. Бывает, что достаточно сказать название типа или метода, и этого достаточно, всё остальное там написано в комментах. Также выяснилось, что очень удобно искать код по русским комментариям, так иногда можно забыть название типа, свойства или метода, особенно если не ты его писал.
3 окт 17, 17:46    [20839829]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt,
Еще есть технический писатель и кондишен.
Это снижает болевой порог и повышает ПРОИЗВОДИТЕЛЬНОСТЬ труда.
Счас актуальна эффективность).
3 окт 17, 17:48    [20839839]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
Создаешь новый публичный тип, сразу пишешь к нему доку,

А также Руководство пользователя, и юнит тесты.
3 окт 17, 17:51    [20839853]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
hVostt,
Еще есть технический писатель и кондишен.
Это снижает болевой порог и повышает ПРОИЗВОДИТЕЛЬНОСТЬ труда.
Счас актуальна эффективность).


Ну есть тех. писатель, но у него много другой работы :)
3 окт 17, 17:57    [20839889]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
hVostt
Member

Откуда:
Сообщений: 11360
Petro123
hVostt
Создаешь новый публичный тип, сразу пишешь к нему доку,

А также Руководство пользователя, и юнит тесты.


Руководство пользователя, это не к разработчикам :)
Тем более, мы стараемся писать такие системы, где пользователю будет предложено выполнить его задачи при входе, без талмуда, зайди туда, щёлкни сюда, ещё раз щёлкни, «провались» и т.д. Такого нет :)
3 окт 17, 17:59    [20839892]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 22606
Petro123
hVostt
Создаешь новый публичный тип, сразу пишешь к нему доку,

А также Руководство пользователя, и юнит тесты.

А ещё reliability, UX и немодерируемое тестирование :)
3 окт 17, 18:19    [20839978]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2142
Отсутствие комментария - это своего рода комментарий о том, что ничего необычного/неожиданного/недоделанного/и т.п. нет. Т.е., есть комментарий - читай его, и это поможет правильно понять код, нет комментария - читай код, ибо в этом случае неправильно понять невозможно.
3 окт 17, 18:24    [20839992]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
hVostt
провались

)))) LOL
3 окт 17, 18:37    [20840017]     Ответить | Цитировать Сообщить модератору
 Re: Заголовочные файлы и С#  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 29693
LR
Отсутствие комментария - это своего рода комментарий о том, что ничего необычного/неожиданного/недоделанного/и т.п. нет. Т.е., есть комментарий - читай его, и это поможет правильно понять код, нет комментария - читай код, ибо в этом случае неправильно понять невозможно.

)) я всегда предуреждаю: "райзе мин нет".
3 окт 17, 18:40    [20840024]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: 1 2 3 4      [все]
Все форумы / WinForms, .Net Framework Ответить