Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WinForms, .Net Framework Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 6 7 8 9 10 [11] 12 13 14 15 .. 17   вперед  Ctrl
 Re: Исключения vs коды возвратов  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13633
hVostt
Нет такого требования.
Ну у тебя нет, и что с того? А я такое встречал, и был очень недоволен этим требованием. Но это было давно...
12 июл 18, 11:46    [21565536]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
Алексей К
hVostt
Нет такого требования.
Ну у тебя нет, и что с того? А я такое встречал, и был очень недоволен этим требованием. Но это было давно...


Ну есть и такое, когда занимающий ведущие позиции разработчик имеет весьма поверхностные знания.
Тем более, экранный размер, это примерная оценка, просто для того, чтобы можно было обратить на это внимание, но никак не жесткое требование.
12 июл 18, 11:49    [21565554]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13633
hVostt
Когда ты законсервирован один в своём коде, то взгляды конечно будут сильно отличаться. Что мы как раз и наблюдаем.
Ты так говоришь, как будто мы с тобой вместе работали много лет. :-)

Ладно, мне пора идти. Всем удачного дня!
12 июл 18, 11:50    [21565560]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13633
hVostt
Тем более, экранный размер, это примерная оценка, просто для того, чтобы можно было обратить на это внимание, но никак не жесткое требование.
Вот именно об этом я и говорю, наконец-то ты меня услышал. Ладно, пока!
12 июл 18, 11:51    [21565564]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
Алексей К
Ладно, мне пора идти. Всем удачного дня!


И тебе
12 июл 18, 12:04    [21565601]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
Roman Mejtes
просто примера ради, достался мне 1 проект, в проекте есть файлы по 5к строк кода!
отладка и правка багов в этих файлах превращается в сущий АД. Потому, что перемещаться по файлу, искать нужный код, который уже есть, понимать, что конкретно выполняет этот класс невозможно. Потому, что этот класс делает всё, что угодно. И когда сталкиваешься с таким кодом, приходит чёткое понимание того, почему классы должны быть SOLID и реализовывать только тот функционал, который можно описать 1 предложением.
Все эти 5 тысяч строк кода еще и на регионы разбиты, типа тут у нас методы, тут конструкторы, тут свойства и поля.
Спасает только Bookmarks, навигация по коду и т.д. И то не шибко сильно.
Код выполняет поставленные перед ним задачи. Но сопровождать такой код, полная жопа. При этом, так как у кода высокая связанность, разбить это в данный момент крайне сложно и контрпродуктивно. Я убью кучу часов просто на то, чтоб код стал читаемым и вменяемым. А часов у меня таких нет, от меня требуют решения проблем заказчика, а не решения проблем разработчиков. По этому, этот говно код останется там на веки вечные, пока не закончится жизненный цикл этого приложения.
Всё это не важно, когда пишешь код для себя, но когда пишешь код и знаешь, что его могут поддерживать другие люди, старайтесь ориентироваться на эталонный код. А не считать, что любой код, это говнокод

Значит этот код решает большую, но единственную проблему.
А не то давно бы ты смог его растащить на "классы", нет там никаких классов просто.
12 июл 18, 12:41    [21565741]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
Алексей К
Member

Откуда: Новосибирск
Сообщений: 13633
Roman Mejtes
5к строк кода!
отладка и правка багов в этих файлах превращается в сущий АД. Потому, что перемещаться по файлу, искать нужный код, который уже есть, понимать, что конкретно выполняет этот класс невозможно. Потому, что этот класс делает всё, что угодно. И когда сталкиваешься с таким кодом, приходит чёткое понимание того, почему классы должны быть SOLID и реализовывать только тот функционал, который можно описать 1 предложением.
Ну будет у тебя 1000 мелких классов с непонятными зависимостями между ними. Думаешь, станет легче?
12 июл 18, 12:53    [21565787]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
skyANA
Member

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

А пример привести можешь того, в каком виде и куда должны быть заложены требования к качеству кода?
Ты не понимаешь. Ещё раз. Требовать исполнение можно только в том случае, если требования чётко сформулированы НА БУМАГЕ. Всё остальное можно рассматривать только в качестве рекомендаций.

Например, можно требовать соблюдения правил именования Camel Case, которые чётко описаны, сослаться на эти правила в ТЗ.

Нужны ещё примеры?
Конуретно у вас в каком виде они прописываются?

Лично мы собрались, обсудили какие инструменты анализа кода будем использовать, как и какие правила там надо настроить.
Поставили, настроили. Сейчас просо проект не соберёшь, если нарушаешь правила наименования.
Для чего это в какое-то ТЗ писать?

Также договорились, что без pull request-а нельзя изменения пушить. Настроили. И все изменения проходят code review.
Для чего это в какое-то ТЗ писать?

Также договорились как проводит технический анализ, техническое и архитектурное ревью. Зафиксировали правила в Wiki.
И следуем им.
Для чего это в какое-то ТЗ писать?

Бюрократия какая-то. Мы тупо собираемся и договариваемся по каким правилам работаем, виксируем договорённости.
И смотрим на то, соблюдаются они, или нет. И если нет, то разбираемся почему.
12 июл 18, 12:59    [21565809]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
ViPRos
Значит этот код решает большую, но единственную проблему.


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

ViPRos
А не то давно бы ты смог его растащить на "классы", нет там никаких классов просто.


Нет такой задачи, растащить код на классы, просто чтоб растащить. Не надо.
12 июл 18, 12:59    [21565810]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 27207
Roman Mejtes
просто примера ради, достался мне 1 проект, в проекте есть файлы по 5к строк кода!
отладка и правка багов в этих файлах превращается в сущий АД. Потому, что перемещаться по файлу, искать нужный код, который уже есть, понимать, что конкретно выполняет этот класс невозможно. Потому, что этот класс делает всё, что угодно. И когда сталкиваешься с таким кодом, приходит чёткое понимание того, почему классы должны быть SOLID и реализовывать только тот функционал, который можно описать 1 предложением.
Все эти 5 тысяч строк кода еще и на регионы разбиты, типа тут у нас методы, тут конструкторы, тут свойства и поля.
Спасает только Bookmarks, навигация по коду и т.д. И то не шибко сильно.
Код выполняет поставленные перед ним задачи. Но сопровождать такой код, полная жопа. При этом, так как у кода высокая связанность, разбить это в данный момент крайне сложно и контрпродуктивно. Я убью кучу часов просто на то, чтоб код стал читаемым и вменяемым. А часов у меня таких нет, от меня требуют решения проблем заказчика, а не решения проблем разработчиков. По этому, этот говно код останется там на веки вечные, пока не закончится жизненный цикл этого приложения.
Всё это не важно, когда пишешь код для себя, но когда пишешь код и знаешь, что его могут поддерживать другие люди, старайтесь ориентироваться на эталонный код. А не считать, что любой код, это говнокод

"реализация новых требований проходит всё с большим количеством мата, но программа продолжает соответсвовать техническому заданию" © skyANA

12 июл 18, 13:01    [21565816]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
Алексей К
Ну будет у тебя 1000 мелких классов с непонятными зависимостями между ними. Думаешь, станет легче?


Легче станет не от количества классов, а когда каждый класс будет решать свои задачи, и не нарушать принципы SOLID, DRY, KISS, без действительно обоснованных на это причин.
12 июл 18, 13:01    [21565818]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 27207
Алексей К
Парамон
Требования к качеству кода, как правило это внутренние требования, которые исходят от тех лида/архитекта и тп.
Какая разница от кого они приходят. Я говорю о том, что они должны быть чётко сформулированы.

Принципы SOLID для тебя достаточно чётко сформулированы?
12 июл 18, 13:02    [21565825]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
skyANA
Бюрократия какая-то. Мы тупо собираемся и договариваемся по каким правилам работаем, виксируем договорённости.
И смотрим на то, соблюдаются они, или нет. И если нет, то разбираемся почему.


И главное. Знаем зачем и для чего это делаем, а не потому что кому-то там "промыли мозги".

Без этого понимания, конечно, единственный способ для человека начать кодить хоть в какой-то части по уму, это тыкнуть его лицом в бумагу с требованиями, типа по ТЗ классы должны называться так, и код должен влазить на экран монитора босса
12 июл 18, 13:03    [21565828]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 27207
Алексей К
Roman Mejtes
5к строк кода!
отладка и правка багов в этих файлах превращается в сущий АД. Потому, что перемещаться по файлу, искать нужный код, который уже есть, понимать, что конкретно выполняет этот класс невозможно. Потому, что этот класс делает всё, что угодно. И когда сталкиваешься с таким кодом, приходит чёткое понимание того, почему классы должны быть SOLID и реализовывать только тот функционал, который можно описать 1 предложением.
Ну будет у тебя 1000 мелких классов с непонятными зависимостями между ними. Думаешь, станет легче?

5000 строк разложить по 1000 классам? То есть по 5 строк в классе.
Ты знаешь толк в проектировании
12 июл 18, 13:09    [21565847]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
Алексей К
Roman Mejtes
5к строк кода!
отладка и правка багов в этих файлах превращается в сущий АД. Потому, что перемещаться по файлу, искать нужный код, который уже есть, понимать, что конкретно выполняет этот класс невозможно. Потому, что этот класс делает всё, что угодно. И когда сталкиваешься с таким кодом, приходит чёткое понимание того, почему классы должны быть SOLID и реализовывать только тот функционал, который можно описать 1 предложением.
Ну будет у тебя 1000 мелких классов с непонятными зависимостями между ними. Думаешь, станет легче?

И они все будут статик.
12 июл 18, 13:21    [21565890]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
skyANA
Алексей К
пропущено...
Какая разница от кого они приходят. Я говорю о том, что они должны быть чётко сформулированы.

Принципы SOLID для тебя достаточно чётко сформулированы?

Да пофиг.
Есть формальные подходы.
Например, если метод вызывается только из одного метода, то такого метода не должно быть.
12 июл 18, 13:26    [21565913]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
ViPRos
И они все будут статик.


Сколько человек из активных разработчиков делали VIPROS? И сколько задействовано сейчас?
12 июл 18, 13:26    [21565914]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
ViPRos
Например, если метод вызывается только из одного метода, то такого метода не должно быть.


Почему?
12 июл 18, 13:27    [21565916]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
hVostt
ViPRos
И они все будут статик.


Сколько человек из активных разработчиков делали VIPROS? И сколько задействовано сейчас?

ВИПРОС не могут делать "сколько человек" - для этого должно иметь ТЗ на ВИПРОС.
Сейчас на работе несколько ВИПРОСов - трехзвенные, пятизвенные,.. (наша НОВАЯ платформа!!! Еще новее - прикрутили что то туда!!!)
Я веду свой проект ВИПРОС, они свои (растаскивают как могут).
12 июл 18, 13:32    [21565930]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
hVostt
ViPRos
Например, если метод вызывается только из одного метода, то такого метода не должно быть.


Почему?


Потому что.
12 июл 18, 13:32    [21565931]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
ViPRos
ВИПРОС не могут делать "сколько человек" - для этого должно иметь ТЗ на ВИПРОС.


Странный ответ, речь-то про платформу, а не интеграцию.

ViPRos
Потому что.


Видимо когда-то Алексей К получил точно такой же ответ на вопрос про размер функции в один экран, и осерчал
12 июл 18, 13:42    [21565952]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
skyANA
Member

Откуда: Зеленоград
Сообщений: 27207
ViPRos
skyANA
пропущено...

Принципы SOLID для тебя достаточно чётко сформулированы?

Да пофиг.
Есть формальные подходы.
Например, если метод вызывается только из одного метода, то такого метода не должно быть.

А когда появляется необходимость вызывать метод, которого нет, ещё откуда-то, то просто копипастим код?
Такой подход тоже используете?
12 июл 18, 13:42    [21565956]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

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

Да пофиг.
Есть формальные подходы.
Например, если метод вызывается только из одного метода, то такого метода не должно быть.

А когда появляется необходимость вызывать метод, которого нет, ещё откуда-то, то просто копипастим код?
Такой подход тоже используете?

Как только появляется нужда копипаста и копипаст не внутри одного и того же метода (там всякие екшны ,функции выручают - когда скорость не так важна), появляется новый метод.
Но, C# уже дошел до вложенных функций (есть делегаты, екшны, функции - но они медленные) и скорее всего я бы пользвался вложенными функциями в основном (но, я сижу на C# 4.0, не дают пользоваться благами).
12 июл 18, 13:52    [21565975]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
ViPRos
Member

Откуда:
Сообщений: 9710
hVostt
ViPRos
ВИПРОС не могут делать "сколько человек" - для этого должно иметь ТЗ на ВИПРОС.


Странный ответ, речь-то про платформу, а не интеграцию.

ViPRos
Потому что.


Видимо когда-то Алексей К получил точно такой же ответ на вопрос про размер функции в один экран, и осерчал

Не имеет самостоятельной ценности такие куски.
Они сильно зависимы от контекста вызывающего метода.
12 июл 18, 13:58    [21565996]     Ответить | Цитировать Сообщить модератору
 Re: Исключения vs коды возвратов  [new]
hVostt
Member

Откуда:
Сообщений: 16567
ViPRos
Не имеет самостоятельной ценности такие куски.
Они сильно зависимы от контекста вызывающего метода.


Ну так это совершенно другая постановка. Это из области over engineering.

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

Но если ценности нет, то конечно нафиг. Просто постановка: если у метода один вызов, метод не нужен -- это плохой критерий, может быть только как маркер, обратить внимание.
12 июл 18, 14:13    [21566033]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 .. 6 7 8 9 10 [11] 12 13 14 15 .. 17   вперед  Ctrl
Все форумы / WinForms, .Net Framework Ответить