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

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

вот как понятнее, так:
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

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



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

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

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

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

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

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

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

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

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

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

Откуда:
Сообщений: 11742
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

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

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


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

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

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


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

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

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

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

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

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

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

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

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


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


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

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

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

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

Откуда: Новосибирск
Сообщений: 13552
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

Откуда: Зеленоград
Сообщений: 22804
Алексей К
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

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

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

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

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

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

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


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

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 30340
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

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

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

Откуда: Зеленоград
Сообщений: 22804
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)
Сообщений: 30340
skyANA
Petro123
пропущено...

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

Алексей К, тебе ответил.
Обозреватель структуры WPF появился в 2015upd3. Почти тоже самое но не то есть в WinForms.
Даже в ворде Это есть )))))
2 окт 17, 11:02    [20835685]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
Все форумы / WinForms, .Net Framework Ответить