powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / А нужно ли качество кода?
113 сообщений из 113, показаны все 5 страниц
А нужно ли качество кода?
    #37093244
donkey80
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробую пояснить этот вопрос... Вот есть приложение, работающее. Его дают вам дорабатывать, добавлять функционал и т.п. Конечно, требуется вникнуть и в существующий код. Далее, лично я встречал 2 варианта:
1) Код нечитаем. Методы длиной в несколько тысяч (!) строк, дублирование, НЕЗНАНИЕ разработчиком простых стандартных функций (например, самостоятельная реализация String.Substring()) и т.п. Безспорно, такому коду не место в любом проекте и тут его качество крайне негативно сказывается на сопровождении (вплоть до желания все выкинуть и переделать).
2) Код читаем. Я смотрю его и понимаю, что тут происходит (в общих чертах), поведение методов ожидаемое, мои модификации не приводят к стихийным поломкам в разных частях системы. Но это плохой код. Там может быть обращение к БД из обработчика кнопки и рядом же "правильное" извлечение бизнес-объекта из слоя бизнес-логики. Часть логики лежит в коде, часть на стороне БД. Но, повторюсь, этот код также читаем и доступен для понимания, сопровождение и модификация не превращаются в ад.
Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37093260
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) если поддерживает приложение ты, то лучше делать нормально сразу. и перерабатывать то, что не нравится. если есть время и за это платят.
2) если поддерживаешь не ты, но за улучшение не платят, то ничего не делай.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37093268
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80Нужно ли прям так биться за качество?
Разумеется. Т.к. оно того стоит... Очень хорошо если и руководство поддерживает таки правила. Бывает достаточно сделать документ описывающий те правила и давать "под роспись" всем участникам.
Следить все равно приходится конечно... Но по большей части все идёт как нужно.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094069
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krvsa,

Можно увидеть эти соглашения? (у нас есть только правила как оформлять код, но вот про архитектуру (ну и все что было озвучено выше, всякие там не изобретай коня итд) я даже преставить не магу себе соглашение
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094112
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я всегда пишу очень кривой, на ламерский взгляд, код, но простой и эффективный. Чужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094121
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЧужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски.

тебя наверное ненавидят
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094126
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поддерживал плохой, но отлично читаемый код, года 2. Дописывал по чуть. В итоге само как то все переписалось
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094134
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый ГодShSergeЧужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски.

тебя наверное ненавидят
За что? Кстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть.
Удаляю только свой. Чужой - ни-ни!
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094167
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeКстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть. откройте для себя систему контроля версий уже, зачем проект превращать в помойку?

>> Чужой код (!) никогда не правлю, а всегда переписываю с нуля
за гранью добра и зла. У вашей компании так много денег, что она оплачивает одну и ту же работу по 2 раза?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094188
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне пробел даже лишний нельзя поставить, если он не нужен, если речь о том, чтобы сделать фикс

а если 2 человека код правят, и один взял, и всё переписал, тогда что?
а если code owner и тот кто исправил код это разные люди?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094244
клава-буфера
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80Попробую пояснить этот вопрос... Вот есть приложение, работающее. Его дают вам дорабатывать, добавлять функционал и т.п. Конечно, требуется вникнуть и в существующий код. Далее, лично я встречал 2 варианта:
1) Код нечитаем. Методы длиной в несколько тысяч (!) строк, дублирование, НЕЗНАНИЕ разработчиком простых стандартных функций (например, самостоятельная реализация String.Substring()) и т.п. Безспорно, такому коду не место в любом проекте и тут его качество крайне негативно сказывается на сопровождении (вплоть до желания все выкинуть и переделать).
2) Код читаем. Я смотрю его и понимаю, что тут происходит (в общих чертах), поведение методов ожидаемое, мои модификации не приводят к стихийным поломкам в разных частях системы. Но это плохой код. Там может быть обращение к БД из обработчика кнопки и рядом же "правильное" извлечение бизнес-объекта из слоя бизнес-логики. Часть логики лежит в коде, часть на стороне БД. Но, повторюсь, этот код также читаем и доступен для понимания, сопровождение и модификация не превращаются в ад.
Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество?

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

2.Если нет на это финансовых ресурсов, и ты и так на работе горишь - не делай ничего.
Если поломаешь что-то - будешь виноват
Если сделаешь хорошо - никто даже не заметит и спасибо не скажет.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094300
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
egorychShSergeКстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть. откройте для себя систему контроля версий уже, зачем проект превращать в помойку?

Сейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка.
egorych>> Чужой код (!) никогда не правлю, а всегда переписываю с нуля
за гранью добра и зла. У вашей компании так много денег, что она оплачивает одну и ту же работу по 2 раза?
Она оплачивает и по 3 и по 300 раз, если надо. Работа такая. Написать с нуля - быстрее, чем разбираться в чужом коде, это многие знают. Но я прочухал это достаточно недавно, всего лет 10 назад, а до этого тоже пытался ковыряться в чужом коде (часто, написаном низкоквалифицированными программистами). :)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094342
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeСейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка.это хорошо, пришло время научиться ими пользоваться правильно. ;-))
ShSergeОна оплачивает и по 3 и по 300 раз, если надо. Написать с нуля - быстрее, чем разбираться в чужом коде, это многие знают.крайне спорное утверждение. Новый код - новые баги. А фиксить их будет, к примеру, другой программист, и он тоже перепишет всё с нуля, и снова наделает новых ошибок... отсюда и берутся эти 300 раз, да? ))
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094346
клава-буфера
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeОна оплачивает и по 3 и по 300 раз
Думаю, все проще :)
Скорее всего работодатель просто не в курсе, на что вы тратите рабочее время
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094392
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в идеале хочется видеть
Для начала стоит крепко понимать, что "хороший", "плохой", "правильный", "красивый" итп код - это вовсе не "с эстетической точки зрения Васи Пупкина". Речь идёт об экономической эффективности: о стоимости разработки, эксплуатации, сопровождения, о количестве и стоимости ошибок итп. Разумеется, для разных проектов оптимальные подходы разнятся. Грубо говоря, hello, world не стоит делать трёхзвенкой с мощным движком метаинформации и кучей layer-ов. Надо выбирать оптимум для конкретной ситуации.

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

donkey80Нужно ли прям так биться за качество?
"Прям так" - в смысле "все на баррикады! бросаем свою работу и пока хорошо всё не перепишем, никто домой не уходит!!" таки не надо. Главная задача - локализовать плохое, не дать ему расползаться. А дальше - изживать помаленьку.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094394
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЯ всегда пишу очень кривой, на ламерский взгляд, код, но простой и эффективный.
Можно для примера небольшой самодостаточный фрагмент? Дабы ламерам показать себя.

ShSergeСейчас Teamsystem
И ответственный за code review позволяет оставлять в исходниках закомментированный мусор?

P.S. А вообще прикольный режим. Вы написали. Через полгода потребовалось дописать, я пришёл, закомментировал Вас, переписал. Через полгода нашли ошибку. Пришёл Вася, закомментировал меня, переписал. Через полгода стало медленно работать. Пришли Вы, закомментировали Васю, раскомментировали себя. Через полгода нашли всё ту же "исправленную" ошибку. Пришёл я...

ShSergeНаписать с нуля - быстрее, чем разбираться в чужом коде, это многие знают.
А с автотестами у вас так же, как с code review?

P.S. Было бы интересно посмотреть, как Вы станете выполнять задание "вот в этой формочке кнопку подвинуть на сантиметр вправо".
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094400
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на моей практике, нужно делать только то, что нужно.

например, если есть APAR, нужно только исправить ошибку, которая в описании APAR-a, и всё
ничего больше трогать просто нельзя

какие-то улучшения при этом делать просто запрещено.

если уж что-то совсем полхое обнаружилось, нужно PMR открыть
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094401
Algol36
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Aklinесли поддерживаешь не ты, но за улучшение не платят, то ничего не делай.Если человек - профессионал и уважает себя и свой труд, он всегда будет писать максимально хороший код, не смотря ни на оплату, ни на что другое. Или по вашему, если мне не платят за хороший код, то я должен выкинуть из головы все книжки и умышленно писать плохой код, назло начальству?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094411
клава-буфера
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Algol36,

речь не о написании, а о переписывании.
начальство вам скажет - вася - здесь поправь. даю час.
потом займешься другим проектом.
вы вместо этого начнете переписками заниматься?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094503
svcoder
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество?
В обычных проектах нужно следовать правилам рефакторинга: переписывать плохой код только в том случае, если в нем есть ошибка, либо нужно добавить функционал. А за остальное пусть отвечает тот, кто это написал.
В случаях, когда есть завершенный проект, который нужно поддерживать за фиксированную денежку в месяц, имеет смысл сделать рефакторинг основной бизнес-логики, чтобы сократить свои затраты на поддержку.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094543
Фотография krvsa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
РенатМожно увидеть эти соглашения?
Я уже несколько раз их выкладывал... Но наверное они больше касаются кода программ, что как раз по тематике...

Ренату нас есть только правила как оформлять код, но вот про архитектуру (ну и все что было озвучено выше, всякие там не изобретай коня итд) я даже преставить не магу себе соглашение
Про "архитектуру" подробнее...
У нас всякое новое "творение" проходит через обсуждение сомной, поэтомму с "архитектурой" (в моём её понимании) у нас проблем нет...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094631
otzi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
egorych, softwarer, Артем1 дело говорят.

Идеального кода не бывает. Править код без достаточных на то причин - непрактично. Есть 3 действующих лица: пользователь, работодатель, программист. Если пользователь не просит (ошибки, новые функции), а работодатель не заставляет править код, то остаётся личное желание программиста. Но, поскольку "нам не дано предугадать...", то наши самые лучшие намерения могут приводить к печальным последствиям.

Опять же. Кто нам сказал, что наше вИдение "как надо" лучше того, что уже сделано? Это ведь не всегда очевидно :-)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094693
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
otzi... skipped ...
Опять же. Кто нам сказал, что наше вИдение "как надо" лучше того, что уже сделано? Это ведь не всегда очевидно :-)

это точно :)
На текущем месте работы нет утвержденного соглашения о стандартах кодирования.
Случается иногда засечь момент, что один так ставит скобки - другой через день, если полез в этот код, возвращает их обратно. В хистори файла замечаешь - смешно. С this тоже иногда бывает, один пишет, другой стирает :)
Тоже самое и с улучшением кода, просто не так сильно заметно.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37094983
Автор:
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ShSergeНаписать с нуля - быстрее, чем разбираться в чужом коде, это многие знают.
Любой кто разрабатывал хоть что-нибудь сложнее чем Hello World знает, что это не так. Про баги неплохо у джоля сказано http://www.joelonsoftware.com/articles/fog0000000069.html
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095118
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
имхо при отсутствии единых стандартов в команде важно не столько качество непосредственно кода, сколько качество описания алгоритма работы этого куска кода.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095147
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годмне пробел даже лишний нельзя поставить, если он не нужен, если речь о том, чтобы сделать фикс

а если 2 человека код правят, и один взял, и всё переписал, тогда что?
а если code owner и тот кто исправил код это разные люди?

нормальные системы контроля версий позволяют делать правки одновременные нескольким юзерам...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095151
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeСейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка.
велосипеды, велосипеды...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095153
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeОна оплачивает и по 3 и по 300 раз, если надо. Работа такая. Написать с нуля - быстрее, чем разбираться в чужом коде, это многие знают. Но я прочухал это достаточно недавно, всего лет 10 назад, а до этого тоже пытался ковыряться в чужом коде (часто, написаном низкоквалифицированными программистами). :)
если блок большой, то проще разобраться чем переписать... плюс ошибок будет меньше...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095158
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Algol36Aklinесли поддерживаешь не ты, но за улучшение не платят, то ничего не делай.Если человек - профессионал и уважает себя и свой труд, он всегда будет писать максимально хороший код, не смотря ни на оплату, ни на что другое. Или по вашему, если мне не платят за хороший код, то я должен выкинуть из головы все книжки и умышленно писать плохой код, назло начальству?

если тебе дали два дня на то, на что требуется две недели плюс отладка, то ты хочешь-не-хочешь высрешь говнокусок и вставишь его, а всякие "оно же не оттестировано" начальство может и не интересовать вовсе.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37095492
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AklinShSergeСейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка.
велосипеды, велосипеды...
Я часто делаю велосипеды. Хобби такое. Мне за это деньги не платят. Зато косвенная польза от этого имеется.
ПС. А переписать чужую программу, вернее, логически завершённый фрагмент - да, часто таки проще, если это, конечно, не передвинуть контрол вправо на два сантиметра.
"Красивого" кода не пишу. Даже блоки отделяю не по горизонтали, а по вертикали, хотя, как-то кому-то писал для диссертации главу про структурное программирование.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096009
Фотография Сергей Силкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80 Методы длиной в несколько тысяч (!) строк...У меня лично целый список требований к исходному коду – как к его функционалу, так и оформлению. В частности, одно из требований – чтобы объём функции (метода) не превышал одного экрана исходного кода (разумеется, один оператор на одной строке). Пусть народ с малолетства приучается не только как следует кодировать, но и проектировать приложение. Аргументы типа «вот эту функцию нельзя разместить на одном экране» не принимаются в ультимативной форме. Разбить и грамотно структурировать всегда можно (если, конечно, ты не чайник). Предпочтительно конечно же разбивать части по функциональному назначению; но на крайняк можно и чисто механически – просто кусками. Но в любом случае каждая функция (метод) должна быть не то что простая, а очень простая – так, чтобы её можно было окинуть одним взглядом (т.е. быть не больше одного экрана), логика работы должна быть абсолютно понятна не только автору, а и новому человеку, и соответственно чтобы её можно было модернизировать, в том числе и другим людям.

...А если вовремя не обломать некоторых, то рано или поздно вполне можно увидеть такое: весь проект состоит из одной огромной функции main (ну или WinMain или типа того – в общем, точки входа в программу), а дальше... сплошной набор операторов без единой определённой разработчиком функции, да ещё «нормальных» управляющих конструкций почти нет, зато есть куча операторов goto. Хотя программа работает, а разработчик божится, что по-другому никак было сделать нельзя...

Если кто-то не видал такие программы - считаем, что ему крупно повезло. А если такие программы ему ещё не давали модернизировать - ему очень крупно повезло вдвойне...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096091
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Силкин,

+1.
Ещё бы хорошо запретить вложенность блоков больше четырёх. Четыре уровня - вполне хватает.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096105
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Aklinесли тебе дали два дня на то, на что требуется две недели плюс отладка, то ты хочешь-не-хочешь высрешь говнокусок
Ты так говоришь, словно дали зарплату.

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

Если кому-то нужно две с лишним недели на то, что пишется за два дня, то он называет говнокуском вовсе не то, что на самом деле им является.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096110
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЕщё бы хорошо запретить вложенность блоков больше четырёх. Четыре уровня - вполне хватает.
Плохой критерий. Блоки разные бывают. Скажем, цикл в цикле, внутри которого есть циклы и циклы в цикле - смертоубийство, а общие на функцию try/except/finally уже съедают два уровня из разрешённых.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096282
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AklinНовый Годмне пробел даже лишний нельзя поставить, если он не нужен, если речь о том, чтобы сделать фикс

а если 2 человека код правят, и один взял, и всё переписал, тогда что?
а если code owner и тот кто исправил код это разные люди?

нормальные системы контроля версий позволяют делать правки одновременные нескольким юзерам...

а что, если они оба начнут код переписывать?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096311
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
softwarerЕсли кому-то попытались поставить срок два дня на то, на что требуется две недели плюс отладка, то вменяемый программист говорит "на это нужно ... "...4 недели плюс отладка".
ибо всё равно в два раза сроки зарежут, потому как знают что все просят в два раза больше :)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096379
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerShSergeЕщё бы хорошо запретить вложенность блоков больше четырёх. Четыре уровня - вполне хватает.
Плохой критерий. Блоки разные бывают. Скажем, цикл в цикле, внутри которого есть циклы и циклы в цикле - смертоубийство, а общие на функцию try/except/finally уже съедают два уровня из разрешённых.
Вложенные try/except/finally я бы тоже запретил, потому что через неделю даже сам автор не разберётся, что он имел ввиду, когда это писàл.
А насчёт вложенности блоков - вполне серьёзно. Имею ввиду "{...}" или "begin...end".
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096571
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeВложенные try/except/finally я бы тоже запретил, потому что через неделю даже сам автор не разберётся, что он имел ввиду, когда это писàл.
Да бросьте.

Код: plaintext
1.
2.
3.
4.
5.
6.
try { try {
  ... любой нормальный код }
catch ( ) {
  ... }}
finally {
  ...
}

поймёт любой человек, кто в принципе понимает смысл этих конструкций. То, что [вроде бы] ещё ни один компилятор не дотумкал обойтись без второго try - грустная реальность, задалбывающая, но в общем некритическая.

ShSergeА насчёт вложенности блоков - вполне серьёзно.
Я догадываюсь. Ровно как и "подпрограммы на один экран" - тупой механический критерий, вынуждающий время от времени произносить "сынок, надо не так, как лучше, а так, как по уставу положено".
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096577
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerShSergeВложенные try/except/finally я бы тоже запретил, потому что через неделю даже сам автор не разберётся, что он имел ввиду, когда это писàл.
Да бросьте.

Код: plaintext
1.
2.
3.
4.
5.
6.
try { try {
  ... любой нормальный код }
catch ( ) {
  ... }}
finally {
  ...
}

поймёт любой человек, кто в принципе понимает смысл этих конструкций. То, что [вроде бы] ещё ни один компилятор не дотумкал обойтись без второго try - грустная реальность, задалбывающая, но в общем некритическая.

ShSergeА насчёт вложенности блоков - вполне серьёзно.
Я догадываюсь. Ровно как и "подпрограммы на один экран" - тупой механический критерий, вынуждающий время от времени произносить "сынок, надо не так, как лучше, а так, как по уставу положено".

да не спорь с ним, он всё равно твой код заново перепишет
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096598
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годда не спорь с ним, он всё равно твой код заново перепишет
Да мне не жалко, если результат будет лучше. Мне не нравится идея сидеть задницей на "своём коде", чтобы его никто не трогал.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096610
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerНовый Годда не спорь с ним, он всё равно твой код заново перепишет
Да мне не жалко, если результат будет лучше. Мне не нравится идея сидеть задницей на "своём коде", чтобы его никто не трогал.

это вопрос технологии. слишком много минусов в переписывании кода

-- а что, если нужно сделать forward fit, т.е фикс для нескольких релизов. а в одной из версий кто-то постарался, и переписал весь код

-- а что, если был фикс, кто-то весь код переписал, а потом его решили не включать в следующий релиз продукта. код для двух версий будет сильно различаться
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096641
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне просто реально приходиться работать с APAR и PTF
переписывание кода это нонсенс
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096669
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Год...если нужно сделать forward fit, т.е фикс для нескольких релизов...
Я бы это тоже переписал бы. :)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096679
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeНовый Год...если нужно сделать forward fit, т.е фикс для нескольких релизов...
Я бы это тоже переписал бы. :)ясно, ты - пейсатель ;-))
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096755
Фотография mriadus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я отношусь к вопросу так: если я код прочесть могу, значит хороший код. Если Вася не может, значит ему код будет плохой. Главное всё-таки работоспособность и ВОЗМОЖНОСТЬ поддержки. Если код офигенно кривой по всем стандартам, но я каким-то образом могу его прочесть без серьёзных трудностей, значит код ХОРОШИЙ. А если поддерживать не надо, по стандартам - ацкая фигня, но работает идеально - код ИДЕАЛЕН.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096809
mikola1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне кажется главное это архитектура приложения.
если она хорошо спроектирована, то какая разница как будет написан код, его будет несложно переписать.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096833
6275
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей СилкинУ меня лично целый список требований к исходному коду – как к его функционалу, так и оформлению. В частности, одно из требований – чтобы объём функции (метода) не превышал одного экрана исходного кода (разумеется, один оператор на одной строке). Пусть народ с малолетства приучается не только как следует кодировать, но и проектировать приложение. Аргументы типа «вот эту функцию нельзя разместить на одном экране» не принимаются в ультимативной форме. Разбить и грамотно структурировать всегда можно (если, конечно, ты не чайник). Предпочтительно конечно же разбивать части по функциональному назначению; но на крайняк можно и чисто механически – просто кусками. Но в любом случае каждая функция (метод) должна быть не то что простая, а очень простая – так, чтобы её можно было окинуть одним взглядом (т.е. быть не больше одного экрана),

Один экран - это сколько строк?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096854
mikola1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Силкинdonkey80 Методы длиной в несколько тысяч (!) строк...У меня лично целый список требований к исходному коду – как к его функционалу, так и оформлению. В частности, одно из требований – чтобы объём функции (метода) не превышал одного экрана исходного кода (разумеется, один оператор на одной строке). Пусть народ с малолетства приучается не только как следует кодировать, но и проектировать приложение. Аргументы типа «вот эту функцию нельзя разместить на одном экране» не принимаются в ультимативной форме. Разбить и грамотно структурировать всегда можно (если, конечно, ты не чайник). Предпочтительно конечно же разбивать части по функциональному назначению; но на крайняк можно и чисто механически – просто кусками. Но в любом случае каждая функция (метод) должна быть не то что простая, а очень простая – так, чтобы её можно было окинуть одним взглядом (т.е. быть не больше одного экрана), логика работы должна быть абсолютно понятна не только автору, а и новому человеку, и соответственно чтобы её можно было модернизировать, в том числе и другим людям.

...А если вовремя не обломать некоторых, то рано или поздно вполне можно увидеть такое: весь проект состоит из одной огромной функции main (ну или WinMain или типа того – в общем, точки входа в программу), а дальше... сплошной набор операторов без единой определённой разработчиком функции, да ещё «нормальных» управляющих конструкций почти нет, зато есть куча операторов goto. Хотя программа работает, а разработчик божится, что по-другому никак было сделать нельзя...

Если кто-то не видал такие программы - считаем, что ему крупно повезло. А если такие программы ему ещё не давали модернизировать - ему очень крупно повезло вдвойне...

Везде должна быть мера.
Иногда ради быстродействия приходилось писать очень большие функции.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37096972
Фотография Ренат
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikola1982Везде должна быть мера.
Иногда ради быстродействия приходилось писать очень большие функции.Полностью сгласен. Имхо нельзя так ограничивать программиста разбиванием всего кода на блоки. Часто одна функция побольше выглядит читабельнее чем набор мелких запутаных функций.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097317
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
качество нужно, но без фанатизма. Так же как в нормализованных таблицах нужна иногда денормализация данных)))))
Убить неделю на написание указивок как правильно называть локальную переменную или запрещение использовать самописки- методы, потом еще неделю на составление приказа и взятие под подпись , если на написание проги нужна неделя с самописной функцией типа String.Substring() не кажется даже академически оправданным.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097372
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Силкинdonkey80 Методы длиной в несколько тысяч (!) строк...У меня лично целый список требований к исходному коду – как к его функционалу, так и оформлению. В частности, одно из требований – чтобы объём функции (метода) не превышал одного экрана исходного кода (разумеется, один оператор на одной строке). Пусть народ с малолетства приучается не только как следует кодировать, но и проектировать приложение. Аргументы типа «вот эту функцию нельзя разместить на одном экране» не принимаются в ультимативной форме. Разбить и грамотно структурировать всегда можно (если, конечно, ты не чайник). Предпочтительно конечно же разбивать части по функциональному назначению; но на крайняк можно и чисто механически – просто кусками. Но в любом случае каждая функция (метод) должна быть не то что простая, а очень простая – так, чтобы её можно было окинуть одним взглядом (т.е. быть не больше одного экрана), логика работы должна быть абсолютно понятна не только автору, а и новому человеку, и соответственно чтобы её можно было модернизировать, в том числе и другим людям.

...А если вовремя не обломать некоторых, то рано или поздно вполне можно увидеть такое: весь проект состоит из одной огромной функции main (ну или WinMain или типа того – в общем, точки входа в программу), а дальше... сплошной набор операторов без единой определённой разработчиком функции, да ещё «нормальных» управляющих конструкций почти нет, зато есть куча операторов goto. Хотя программа работает, а разработчик божится, что по-другому никак было сделать нельзя...

Если кто-то не видал такие программы - считаем, что ему крупно повезло. А если такие программы ему ещё не давали модернизировать - ему очень крупно повезло вдвойне...

я вот не против такого в случае, когда речь идет о string.Substring(). Но часто неважно , что весь проект состоит из одной огромной функции main, важно, что это работает так ,как того хотел потребитель проекта, которму абсолютно неважно, что исполнитель убил все свое время на представление функции размером не больше экрана. Говорю как разработчик, как внедренец и хэлпдеск - прошел все стадии жизни проекта (и не одного) , включая модернизацию, вплоть до его смерти. Для сопровождения проги важно описание хедеров ф-ий и знание условий , на которых это писалось ранее и теперь, алгоритмы иногда попадались такие, что понимать их начинаешь не сразу по просмотру кода, а только после прочтения соответств литературы, о которой в тот момент и не подозреваешь.Теперь как сопровожденец и модернизатор кода поясню,что знание условий , на которых это писалось ранее и теперь. Если ранее этот продукт был коробочным вариантом - извиняйте ,хлопци - это запросто может быть одной ф-ией main, если OEM - другое дело. И модернизировать в первом случае надо начинать не словами - какой м...ль это писал, а вопросом - вы точно хотите модернизировать это боксовое решение?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097399
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЯ всегда пишу очень кривой, на ламерский взгляд, код, но простой и эффективный. Чужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски.
Это начальный уровень кодера с амбициями. Говнокодом творение назовут, когда код начнет править другой такой же кодер.
Заявляю отвественно, что даже хелловорд -очень эффективный код :-)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097406
Фотография Сергей Силкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
6275Один экран - это сколько строк?Чтобы взглядом можно было охватить. В прямом смысле слова - один экран. Если несколько (а уж тем более много) экранов - это же в коде почти гарантированно никто не разберётся, кроме автора! Ну разве что вундеркинд какой-нибудь. Но, во-первых, где найти столько вундеркиндов? Или гениев. В подавляющем большинстве народ - это "рабочие лошадки" - в самом хорошем смысле слова (уж тем более не в обиду), но уж никак не гении и не вундеркинды. Во-вторых, если гений и найдётся - он ведь не будет заниматься такой фигнёй как разбираться в чужом коде (да ещё криво написанном); скорее он найдёт себе более творческое занятие.

Почему-то никого не удивляет требование проектировать - ну например, автомобиль - технологично - так, чтобы удобно было не только конструктору, сборщику и пользователю, но и механику , который этот автомобиль разбирает и собирает. Хотя тоже можно было бы сделать... - ну как некоторые программы: я собрал, я в этом разбираюсь; а то что другие не могут разобраться - так это проблема этих "ламеров", а мне именно так удобнее было делать.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097413
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годмне пробел даже лишний нельзя поставить, если он не нужен, если речь о том, чтобы сделать фикс

а если 2 человека код правят, и один взял, и всё переписал, тогда что?
а если code owner и тот кто исправил код это разные люди?
это полный пипец, про двух человек -особенно,
проходили уже.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097665
mikola1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qazaqкачество нужно, но без фанатизма. Так же как в нормализованных таблицах нужна иногда денормализация данных)))))
Убить неделю на написание указивок как правильно называть локальную переменную или запрещение использовать самописки- методы, потом еще неделю на составление приказа и взятие под подпись , если на написание проги нужна неделя с самописной функцией типа String.Substring() не кажется даже академически оправданным.
если потом это будет использоваться для других проектов то почему бы и не заморочится на это.
Мне кажется все нужно в меру. если проект разовый простой, команда собралась что бы его написать и разбежаться то тут хватит и словесной договоренности, а если ваша компания занимается разработкой софта, то тут сам Бог велел создавать такие указиловки, но опять же мера нужна, необходимо оставлять свободный маневр для программиста ведь они по большом счету люди творческие и шибко обижаются когда их в жесткие рамки загоняешь.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097707
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей СилкинПочему-то никого не удивляет требование проектировать - ну например, автомобиль - технологично - так, чтобы удобно было не только конструктору, сборщику и пользователю, но и механику , который этот автомобиль разбирает и собирает.
Хи-хи. Почитай ради интереса заметки практикующих автомехаников. Если вкратце - о технологичности ремонта и думать забыли, как следствие, иногда для смены ерундовой фигнюшки приходится, например, снимать двигатель. Если говорить о коде - у меня были, есть и будут есть функции по 500-1000 строк, но тот, кто в них не сможет разобраться из-за размера, скорее всего, просто не сможет понять лежащую в их основе бизнес-логику.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097855
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mikola1982qazaqкачество нужно, но без фанатизма. Так же как в нормализованных таблицах нужна иногда денормализация данных)))))
Убить неделю на написание указивок как правильно называть локальную переменную или запрещение использовать самописки- методы, потом еще неделю на составление приказа и взятие под подпись , если на написание проги нужна неделя с самописной функцией типа String.Substring() не кажется даже академически оправданным.
если потом это будет использоваться для других проектов то почему бы и не заморочится на это.
Мне кажется все нужно в меру. если проект разовый простой, команда собралась что бы его написать и разбежаться то тут хватит и словесной договоренности, а если ваша компания занимается разработкой софта, то тут сам Бог велел создавать такие указиловки, но опять же мера нужна, необходимо оставлять свободный маневр для программиста ведь они по большом счету люди творческие и шибко обижаются когда их в жесткие рамки загоняешь.
среднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097911
8162
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сергей Силкин6275Один экран - это сколько строк?Чтобы взглядом можно было охватить. В прямом смысле слова - один экран.

Экраны - они разные бывают.
один экран - это сколько на сколько пикселей рабочей области(то есть размер экрана минус размер тулбаров минус размер заголовков окна) на какой шрифт?

Сергей СилкинЕсли несколько (а уж тем более много) экранов - это же в коде почти гарантированно никто не разберётся, кроме автора!
Если всё так хреново, почему индустрия до сих пор не загнулась? Я кстати не видел ни одной сложной программы(в качестве примера возьмём LLVM или его скаковую лошадку clang - в них что, так сложно разобраться из-за строк кода/ф-цию?) где разбиение на функции = 1 экран(даже 60 строк) было бы оправдано и не превращало бы код в спагетти когда не понятно какая функция откуда вызывается.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37097977
mikola1982
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qazaqсреднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?

В зависимости что за проект.
Много от чего зависит, но для будущих проектов стоит.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098103
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годмне просто реально приходиться работать с APAR и PTF
переписывание кода это нонсенс
Переписывание кода - нонсенс для проектов без нормального (то есть автоматизированного) тестирования.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098141
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qazaqсреднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?
Это с учётом тех проектов, которые навернулись через неделю после начала работ, и сваливая в одну кучу ERP-системы и сайты персональных страничек?

Не знаю кто как, а я так наблюдаю многолетнюю жизнь даже тех проектов, которым бы сдохнуть ещё до рождения.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098475
Фотография Сергей Силкин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
8162Если всё так хреново, почему индустрия до сих пор не загнулась?Не то чтобы "хреново", но не беспроблемно (как, впрочем, и везде). Очень сильной стороной компьютерного программирования является то, что здесь идея о том, что "реализованную идею нельзя ликвидировать" возведена в абсолют. Становятся доступные всё более и более сложные вещи.

Если лет 20 назад "библиотека" была - это: ввод-вывод (файловый, клавиатурный, экранный), работа с файлами, математические функции, работа с памятью и строками и т.д.; потом появились графические библиотеки - вещи на самом деле очень крутые для своего времени.

Ну сейчас этим уже давно никого не удивишь. Сейчас применением нескольких компонентов можно "запросто", буквально играючи создать - текстовый или графический редактор, интернет-браузер, электронную таблицу, любой графический интерфейс пользователя; чуть сложнее, но тоже без проблем на основе уже написанных и отлаженных компонентов создать ERP-систему, компилятор, авиасимулятор, операционку...

Так и живём. В этом плане программы не стали сложнее, чем были 20 лет назад (по количеству строк исходного кода), но по функционалу конечно же стали гораздо сложнее. Но вообще-то это не значит, что программы надо писать в пренебрежительном стиле, злоупотребляя тем, что огромное количество компонент уже написано другими, а нам только нужно кое-как их вызвать - и ладно.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098634
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerqazaqсреднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?
Это с учётом тех проектов, которые навернулись через неделю после начала работ, и сваливая в одну кучу ERP-системы и сайты персональных страничек?

Не знаю кто как, а я так наблюдаю многолетнюю жизнь даже тех проектов, которым бы сдохнуть ещё до рождения.

это с учетом развития средств программирования и изменений бизнес-процессов заказчика, даже когда ему надо тупо считать 0 и 1. Иногда полезно посмотреть первую рабочую версию и последнюю используемую. Их даже родственниками не назовешь , не то что семейством. Все долгоживущие проэкты начинаются со слов:"Мне вот тут небольшую пристроечку надо сколотить побыстрее..."
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098661
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Силкин6275Один экран - это сколько строк?Чтобы взглядом можно было охватить. В прямом смысле слова - один экран. Если несколько (а уж тем более много) экранов - это же в коде почти гарантированно никто не разберётся, кроме автора! Ну разве что вундеркинд какой-нибудь. Но, во-первых, где найти столько вундеркиндов? Или гениев. В подавляющем большинстве народ - это "рабочие лошадки" - в самом хорошем смысле слова (уж тем более не в обиду), но уж никак не гении и не вундеркинды.
Произошла типичная подмена понятий - за гения тут считают не опытного бойца, так сказать - ветерана боевых действий, а долбодятла с амбициями, страдающего аутизмом, неспособным сосредоточиться и удержать тему при прокрутке экрана, поэтому неудивительно, что есть специфические требования , учитывающие эту проблему
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098825
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qazaq это с учетом развития средств программирования и изменений бизнес-процессов заказчика, даже когда ему надо тупо считать 0 и 1. Иногда полезно посмотреть первую рабочую версию и последнюю используемую. Их даже родственниками не назовешь ,
Три-ха-ха. Уж на что я нелоялен к "старому плохому коду", но мне только дважды в жизни удалось "полностью переписать". Один результат вышел отличным, один.. не лучше, чем предыдущий. А обычно - берёшься за код и начинаешь вычёсывать проблемы, висящие хорошо если с 2002-го года...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098835
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
donkey80Нужно ли прям так биться за качество?Да, нужно. Иначе встаёт проблема ввода новых людей в проект.

Наблюдаю сейчас сценку в одном старом успешном проекте, который внутри выглядит как попало даже не потому, что его кривыми руками писали, а потому что полно древнего кода на голом C, но с "рукописными" таблицами виртфункций, наследованием (в т.ч. множественным), аналогами dynamic cast и т.п., На тот момент на многих платформах компиляторы C++ были, мягко говоря, некачественными, вот люди и сотворили. Оно читается. Клиенты довольны. Но появляется новичок, и вместо написания новой функциональности начинает со страшной силой натыкаться на мистические баги, когда какая-то компонента на первый взгляд используется правильно, просто "здесь так не принято", и в итоге новый формально валидный вариант вызова функции приводит к никогда не тестировавшейся комбинации параметров глубоко-глубоко внутри.

Другой вопрос, что биться нужно в новых версиях, а не в старых. Переписывание некрасивого рабочего кода разумно приурочивать к новым мажорным номерам версий, а патчи в уже поставленным заказчикам вещах должны быть абсолютно минимальными.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098920
онолитег
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qazaqсреднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?
смотря какого проекта, *nix'ы живут уже десятки лет. единственная "качественная переработка" -- Plan 9 так и не пошла в "продакшн"/широкие-массы
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37098989
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerНовый Годмне просто реально приходиться работать с APAR и PTF
переписывание кода это нонсенс
Переписывание кода - нонсенс для проектов без нормального (то есть автоматизированного) тестирования.

да есть у нас такое тестирование

только с переписыванием кода оно никак не связано.

наверно действительно, если когда и нужно код переписывать, это к выходу новой версии, да и то не каждой
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099029
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
онолитегqazaqсреднестатная жизнь проекта до его полной переработки 3 года - стоит ли овчинка выделки?
смотря какого проекта, *nix'ы живут уже десятки лет. единственная "качественная переработка" -- Plan 9 так и не пошла в "продакшн"/широкие-массы
ну если каждый вышенаписавший имеет в своем активе проекты такого класса-беру свои слова обратно.(притом что знаю,в германии и дос-проекты живут, но это - от их жлобства)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099036
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qazaqну если каждый вышенаписавший имеет в своем активе проекты такого класса-беру свои слова обратно.(притом что знаю,в германии и дос-проекты живут, но это - от их жлобства)

а зачем им иметь такие проекты? философия юникс (да и ее история) достаточно хорошо показывает, что при продуманном протоколе взаимодействия можно писать маленькие простые программы, а потом эффективно их комбинировать. та же ls весьма простая программа, а используется до сих пор, так же как и куча других стандартный никсовых утилит, которая каждая сама по себе может и тянет максимум на лабораторную работу студента, но в правильной среде они "могут делать чудеса" =)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099052
qazaq
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinqazaqну если каждый вышенаписавший имеет в своем активе проекты такого класса-беру свои слова обратно.(притом что знаю,в германии и дос-проекты живут, но это - от их жлобства)

а зачем им иметь такие проекты? философия юникс (да и ее история) достаточно хорошо показывает, что при продуманном протоколе взаимодействия можно писать маленькие простые программы, а потом эффективно их комбинировать. та же ls весьма простая программа, а используется до сих пор, так же как и куча других стандартный никсовых утилит, которая каждая сама по себе может и тянет максимум на лабораторную работу студента, но в правильной среде они "могут делать чудеса" =)

смею заметить , что речь идет не о философии юникса, а о том, что спорить с человеком, кто сам чего-то полобал и стал специалистом, в чем можно примерно убедиться оценив уровень или класс проекта, в которых этот чел непосредственно участвовал, я не буду, а прислушаюсь к его мнению.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099115
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годда есть у нас такое тестирование
только с переписыванием кода оно никак не связано.
Cвязано прямо и непосредственно. При ручном тестировании главенствует принцип "работает - не трогай", исправляя дефект главное - не внести другой, переписывание кода требует крупного повторного тестирования, потому дорого, потому нонсенс. При хорошо поставленном автоматизированном тестировании переписанный код неплохо бесплатно тестируется, соответственно плюсы переписывания (не "переписывания ради переписывания", а "переписывания плохого кода") явно перевешивают.

Новый Годнаверно действительно, если когда и нужно код переписывать, это к выходу новой версии, да и то не каждой
Не стоит смешивать тёплое с мягким. Переписывать плохой код следует тогда, когда есть причина и возможность. В какую сборку следует включать исправление - другой вопрос, зависящий от кучи прикладных факторов.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099198
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

Вспоминаю, что лет 7 назад, когда я занимался delphi->MS SQL, была задача посчитать переходящие с месяца на месяц больничные по новому алгоритму (это только кусок программы, по зарплате, понятное дело). Предыдущую версию писал "джедай" на делфях. Который, если и обращался к БД, то только в виде "SELECT * FROM ...". Поэтому алгоритм был размазан на несколько (штук пять или даже больше) модулей, т.е. файлов. Задачу надо было решить срочно за три дня. Разобраться в этом коде за три дня мне казалось нереальным. Зато, оказалось, что если на "модификацию" забить и написать на SQL хранимую процедуру, то достаточно внести элементарное изменение в форму (это один модуль), то есть, не вызывать всю эту галиматью, а взять данные из х-ой процедуры, которая успешно была за день написана.
Это была не модификация, а чисто переписывание, причём, с использованием принципиально другой технологии. Я это и имел ввиду, когда про переписывание говорил.
Поэтому, теперь, когда я слышу про всякие MVC, DAL, ORM и прочие Hibernate, я хватаюсь, как доктор Геббельс, за пистолет.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099210
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerПри хорошо поставленном автоматизированном тестировании переписанный код неплохо бесплатно тестируется, соответственно плюсы переписывания (не "переписывания ради переписывания", а "переписывания плохого кода") явно перевешивают.Это зависит от "завершённости" разработки. Если выпускается коробка, то плюсы часто перевешивают. А если выпускается средство разработки, то всегда есть риск, что аппдевелопер ненароком написал нечто, зависящее от недокументированных (и потому не тестируемых) особенностей поведения.

У нас лет под 20 назад был замечательный случай. Написали библиотеку для программирования/тестирования неких чудесатых измерительных преобразователей. Поскольку тестирование --- процесс очень длинный, а машины тогда были в дефиците, тем более 286-е, конечная программулина была выполнена в виде 200-килобайтного TSR (terminate and stay resident), который висел в памяти, позволяя во время своей работы гонять всякие текстовые редакторы и прочие не слишком жоркие приложения, оставляя им под 400 килобайт ОЗУ.

В один прекрасный день мне удалось распилить библиотеку на отдельно математику и отдельно маленький интерпретатор псевдокода. Стало возможным скомпилировать маленький псевдокод из громоздких входных данных, и в результате TSR-ная программулина была распилена на нерезидентную расчётную часть и маленький TSR-ный интерпретатор псевдокода, под приложения стало оставаться 550 килобайт. Казалось бы, всем лучше. Тем не менее, от юзеров пошли регулярные сообщения об обрывах тестов по непонятным причинам.

Выяснилось, что гоняющие тесты но не занятые людьми компы как магнитом притягивали любителей игрушек всех возрастов. И почти все игрушки замечательно работали. Все, кроме "Диггера", который как забирал себе кучу чужих прерываний в цепкие лапки, так уже и не восстанавливал, что через какое-то (значительное) время уносило всю систему в могилу. Но раньше TSR оставлял настолько мало памяти, что "Диггер" вообще не грузился с "not enough memory". А теперь memory стало enough, и он стал запускаться успешно :(
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099302
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЭто была не модификация, а чисто переписывание, причём, с использованием принципиально другой технологии. Я это и имел ввиду, когда про переписывание говорил.
И на какую технологию Вы перепишите эту хранимку семилетней давности, когда потребуется к ней вернуться? На пять дельфовых модулей?

ShSergeПоэтому, теперь, когда я слышу про всякие MVC, DAL, ORM и прочие Hibernate, я хватаюсь, как доктор Геббельс, за пистолет.
http://ru.wikipedia.org/wiki/%D0%99%D0%BE%D1%81%D1%82,_%D0%93%D0%B0%D0%BD%D1%81
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099314
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот, Йост Ганс, того же мнения. :)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099315
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ruА если выпускается средство разработки, то всегда есть риск, что аппдевелопер ненароком написал нечто, зависящее от недокументированных (и потому не тестируемых) особенностей поведения.
В одной хорошей книжке мне запомнилась среди прочего фраза: "Часто говорят, мол, мы должны быть справедливы к старине Джиму, ведь он уже двадцать лет у нас работает. На самом же деле первое, о чём надо думать - мы должны быть справедливы к двадцати талантливым подчинённым старины Джима и дать им адекватного руководителя".

Я понимаю этот аргумент и отношусь к нему примерно так же: надо быть справедливым не только к этому аппдевелоперу, но и к тем, кому станет лучше, если забить на хакера, выкопавшего себе ямку. Скажем, в Оракле времён девятой версии была следующая особенность: если выполнялся оператор select into, то в случае no_data_found переменные сохраняли старые значения, а в случае, например, исключения при вычислении пятого выражения select-а первые четыре успевали попасть в соответствующие переменные. Можно написать как-то ориентирующийся на это код? Можно. Нужно? Нафиг-нафиг. А вот теперь - я бы очень не хотел, чтобы компания Оракл из-за какого-девелопера, заострившегося на эту недокументированную фичу, оставила бы версию 9.2 навечно.

iv_an_ruА теперь memory стало enough, и он стал запускаться успешно :(
У меня в те времена была просто дикая ошибка, я её два года искал. Суть: обработчик 1C состоит из нескольких в принципе независимых блоков. Каждый блок поотдельности - работает. Два, три, четыре в любом порядке - работают как часы. Все вместе - программа чуть поработает и намертво вешает комп. Отключишь один-два случайно выбранных блока - работает как часы.

Повзрослее-поопытнее, наверное, быстро бы справился, а так... уже и не вспомню, как в конце концов сообразил, что изредка, при вызове в неудачный момент времени, не хватает оставшегося места в дос-овском стеке (том, который stacks=10,256), и вероятность этого тем выше, чем больше кода собирается размещать там свои локальные переменные.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099378
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerя бы очень не хотел, чтобы компания Оракл из-за какого-девелопера, заострившегося на эту недокументированную фичу, оставила бы версию 9.2 навечно.Идея не в том, чтобы 9.2 навечно, а в том, чтобы это при прочих равных не менялось при обновлении с 9.2 на 9.2.1, а осталось стабильным до 10.0.

Иногда мне кажется, что богатство Билла Гейтца в заметной степени обеспечили compatibility flags для старых, кривых, но при этом популярных программ. Он не зря тратил свои деньги на защиту чужих инвестиций.

KDE, кстати, может служить контрпримером. Все мои скрипты, автоматизировавшие всякую рутину, вроде открытия 16 терминальных окошек и старта в них 16 процессов инструментального кластера, пошли лесом при очередном обновлении. Вот кому было шило в попе поменять аргументы командной строки у Konsole сразу после того, как они наконец-то были нормально задокументированы?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099405
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ruИдея не в том, чтобы 9.2 навечно, а в том, чтобы это при прочих равных не менялось при обновлении с 9.2 на 9.2.1, а осталось стабильным до 10.0.
Если 10.0 при этом выйдет в разумные исторически сроки, я в общем не имею ничего против этой идеи, хотя и не скажу, что "за". Тут, кстати, нетрудно привести обратные примеры интересов между "коробкой" и "разработчиком". Лично мне удобнее, чтобы доработки любого используемого мной инструмента шли частыми небольшими порциями, то есть появилась фича - обдумал - применил - появилась - обдумал - применил. Это по сравнению с "ждёшь - ждёшь - давно надо - ждёшь - обещают, что будет - ждёшь - ждёшь - получаешь вагон всего нового, в котором ещё полгода разбираться". А, например, какому-нибудь бухгалтеру даже та самая кнопка на сантиметр вправо очень нужна, но только после сдачи годового баланса, ни в коем случае не раньше.

В общем, имхо, тут таки надо смотреть на конкретную ситуацию. Повторю свою позицию: переписывать плохой код - надо, в какую сборку включать изменение - думать.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099704
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerПереписывание кода - нонсенс для проектов без нормального (то есть автоматизированного) тестирования.
как быть с теми кусками кода, которые хочется переписать именно потому, что их невозможно тестировать?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099739
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaкак быть с теми кусками кода, которые хочется переписать именно потому, что их невозможно тестировать?
Что именно подразумевается под "невозможно"? Я вижу разные варианты ответа в зависимости от конкретного смысла "невозможно".

Например, при разработке инструмента для девелоперов я протолкнул и применил следующий подход: собираясь реализовать какую-то фичу, я начинал с создания одного или нескольких тестовых скриптов, использующих эту фичу. Каждый скрипт был функцией, обязанной вернуть "Yes" при корректном результате работы. Дальше, соответственно, писал фичу, пока все скрипты не начинали работать. Потом настоял на том, чтобы описания проблем от тестировщиков шли в формате таких же скриптов, соответственно подключал их к общему списку. В итоге накопилась достаточно существенная база скриптов для того, чтобы "неправильно переписанный код" где-то, да начинал стрелять.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099871
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

а как быть с тем, что есть code owner, который, зачастую, совсем другой человек, не тот, кто исправляюет ошибку?

т.е ответственный за код один человек, а делает фикс другой.

просто, например, была регрессия, и что-то перестало работать, например, в новой OS, или после того, как установили новую версию middleware, и заказчик разорался

code owner будет делать ревью, смотреть, что там поменялось после фикса..


и у него какие-то там свои представления о том, как должен быть этот код написан
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099884
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Года как быть с тем, что есть code owner,
Смотря что понимать под этим словом. Если "чувак, который сидит задницей на этих файлах", то убивать как концепцию вне всякой зависимости от обсуждаемого вопроса. Если "человек, который лучше других понимает, что здесь, почему и зачем", то мне очень не нравится слово owner, а по сути - если "желающий переписать" чувствует себя недостаточно уверенным, можно и нужно посоветоваться.

Новый Годт.е ответственный за код один человек, а делает фикс другой.
Бред, простите. За код ответственен каждый, особенно тот, кто его меняет.

Новый Годи у него какие-то там свои представления о том, как должен быть этот код написан
И плавно переходим к рассказам про войны, мол, один поправил багу, декомпозировал большую функцию в десять мелких и убрал пробелы перед скобками, потом другой поправил багу, слепил десять мелких функций в одну большую и расставил пробелы перед скобками.

Знаете, сколь я видел, большинство программистов надо скорее пинать сделать хорошо, нежели бояться, что они по собственной инициативе сделают слишком много :) А те, кто энтузиасты и по собственной инициативе - обычно имеют достаточно мозгов, чтобы ценить друг друга, договориться и не мешать друг другу даже там, где их представления по мелочи расходятся. Такой типаж программиста как "упёртый баран с инициативой", к счастью, практически не встречается, а если встретился - надо избавляться, и вовсе не потому, что их два в одном коллективе, а потому, что упёртый баран, да ещё и с инициативой.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099895
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer,

Code owner это тот, кто сидит на файлах

Убивать концепцию это вот точно война
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099925
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый ГодCode owner это тот, кто сидит на файлах
Убивать концепцию это вот точно война
Я не вижу смысла обсуждать наилучший материал для лопаток турбин применительно к самолёту с паровым двигателем. Для начала стоит поменять двигатель на тот, что способен летать.

Когда-то давно я, молодой, наглый и ничего не умеющий, пришёл в одну контору, во многих отношениях замшелую, но со своими достоинствами. И среди прочего начал там воевать с концепцией "сидит на файлах". Воевал довольно безуспешно вплоть до одного прекрасного дня, когда одна из первых сколько-то вменяемых сборок основного на тот момента не была передана для ознакомления заказчику, и тот не нашёл в ней несколько кардинальных багов, уровня "да у вас тут вообще ничего не работает". Проблема в том, что ведущий разработчик, модули которого в основном и оказались проблемными, был на тот момент в отпуске в паре тысяч километров от места событий и уже неделю безуспешно пытался найти способ приехать. Руководство полдня побродило в прострации по офису, и наконец решило, что раз я кричу про доработки чужого кода, значит мне и отвечать, хуже всё равно уже не будет. Я сел, посидел полдня и выдал исправленный релиз, к которому клиент начал выдвигать уже рабочие замечания. Success story.

А теперь маленькая ремарка, зачем я это рассказал. Всё это происходило в первых числах сентября 1998-го года. Когда вопрос "будет ли клиент, на проекте которого заняты 80% сотрудников фирмы, платить за очередные этапы того, что пойдёт в эксплуатацию в лучшем случае в феврале" был ве-есьма актуальным.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37099938
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Года как быть с тем, что есть code owner, который, зачастую, совсем другой человек, не тот, кто исправляюет ошибку?

т.е ответственный за код один человек, а делает фикс другой.У нас разные патчи попадают в CVS-дерево разными путями. Напр.,
в свои экспериментальные ветки каждый пишет сам,
в чужие --- как договорится с хозяином ветки (может быть, отправляет тому патчи),
в ветку близкого релиза --- как правило, надо отправить патч выпускающему,
что-то заметное в "чужом" модуле --- отправить патч владельцу модуля, а он, вполне возможно, посмотрит на неформальных тестах и по цепочке передаст выпускающему, или переработает творчески.
заплатка на пользовательскую проблему в версии X.Y.Z может вообще уйти на тестирование пользователю, и или остатья его личной заплаткой, либо войти в X.Y.(Z+1), либо в (X+1).0.0 , пройдя, при необходимости, выпускающих.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100062
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЯ не вижу смысла обсуждать наилучший материал для лопаток турбин применительно к самолёту с паровым двигателем. Для начала стоит поменять двигатель на тот, что способен летать.

Когда-то давно я, молодой, наглый и ничего не умеющий, пришёл в одну контору, во многих отношениях замшелую, но со своими достоинствами. И среди прочего начал там воевать с концепцией "сидит на файлах". Воевал довольно безуспешно вплоть до одного прекрасного дня, когда одна из первых сколько-то вменяемых сборок основного на тот момента не была передана для ознакомления заказчику, и тот не нашёл в ней несколько кардинальных багов, уровня "да у вас тут вообще ничего не работает". Проблема в том, что ведущий разработчик, модули которого в основном и оказались проблемными, был на тот момент в отпуске в паре тысяч километров от места событий и уже неделю безуспешно пытался найти способ приехать. Руководство полдня побродило в прострации по офису, и наконец решило, что раз я кричу про доработки чужого кода, значит мне и отвечать, хуже всё равно уже не будет. Я сел, посидел полдня и выдал исправленный релиз, к которому клиент начал выдвигать уже рабочие замечания. Success story.

А теперь маленькая ремарка, зачем я это рассказал. Всё это происходило в первых числах сентября 1998-го года. Когда вопрос "будет ли клиент, на проекте которого заняты 80% сотрудников фирмы, платить за очередные этапы того, что пойдёт в эксплуатацию в лучшем случае в феврале" был ве-есьма актуальным.

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

но сейчас я в другой ситуации -- в software company top 5 worldwide

и проект огромный (уровня СУБД), и оправдал он себя уже 100500 раз. и сложный такой, что за полдня ничего не сделаешь (да и за год тоже)

и всё, что там можно делать, это маленькие кусочки проекта (так называемые line items),
в такой ситуации не повыпендриваешься

да и нет ничего плохого, что есть code owner. в конце концов hotfix можно сделать и без code review, толко официальный фикс нельзя, и те изменения, кот. пойдут в релиз
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100134
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый Годно сейчас я в другой ситуации -- в software company top 5 worldwide
Дык в том-то и дело, что чем больше команда и проект, тем больше нельзя "сидеть на файлах".

Новый Годи сложный такой, что за полдня ничего не сделаешь (да и за год тоже)
Вот эти слова я слышал для самых разных проектов :)

Новый Годв такой ситуации не повыпендриваешься
Повыпендриваться можно всегда, но, надеюсь, это не самоцель. Драматичности будет поменьше, но тем не менее, чем больше людей и задач - тем чаще нужно сделать что-то в файле, owner которого в командировке или ближайший месяц загружен другим супер пупер важным заданием.

Новый Годда и нет ничего плохого, что есть code owner. в конце концов hotfix можно сделать и без code review, толко официальный фикс нельзя, и те изменения, кот. пойдут в релиз
Если owner понимать как code review, то в этом действительно нет ничего плохого.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100222
17-77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Силкинтак, чтобы её можно было окинуть одним взглядом (т.е. быть не больше одного экрана)
1024х768 или 1920х1200 ?
прочитал дальше )) Сергей СилкинЧтобы взглядом можно было охватить.
купите себе монитор побольше, и хватит наезжать на программистов )))))))))

------------------------------------------------------------

softwarerа общие на функцию try/except/finally уже съедают два уровня из разрешённых.
конкретно про это - я не знаю как в других местах, в .NET все ошибки можно обрабатывать централизовано, отрабатывая событие вроде "OnException" у Application. А в целом - придется балансировать между уровнем вложенности и
Сергей СилкинПредпочтительно конечно же разбивать части по функциональному назначению; но на крайняк можно и чисто механически – просто кусками.

------------------------------------------------------------

гдето я еще читал - если размер функции main умещается на нескольких экранах, то там везде будет говнокод... прям в точку )))))

а тех кого учили в вузе проектированию программного обеспечения, хотя бы даже по гостам 80-ых, помнят думаю еще, что надо описывать алгоритм (словами, блок-схемами описывали в 70-ых ))) ). Вот так и надо писать комментарии - что за метод и что он делает, что на входе, что на выходе, а как он делает - уже будет проще понять, если есть отправная точка
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100254
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
17-77конкретно про это - я не знаю как в других местах, в .NET все ошибки можно обрабатывать централизовано, отрабатывая событие вроде "OnException" у Application.
При всей моей любви к Application.OnException, обработка ошибок - это иногда что-то большее, нежели MessageBox("Всё плохо! :(").
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100260
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
17-77в .NET все ошибки можно обрабатывать централизовано, отрабатывая событие вроде "OnException" у Application. например ошибку коннекта к субд при неправильном логине/пароле...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100336
Фотография mriadus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ruИногда мне кажется, что богатство Билла Гейтца в заметной степени обеспечили compatibility flags для старых, кривых, но при этом популярных программ.
Был какой-то блог редмонда чена (или как там его), работавшего над виндоус. Он писал, что винда умела запускать специальный менеджер памяти, когда понимала, что запустили какую-то старую игру sim city (или как там её), которая работала на предыдущей версии винды за счёт использования недокументированных штук, а на новом менеджере памяти просто так не работала.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100352
Фотография mriadus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу "сидеть на файлах" и по поводу той success story и главным девелопером, застрявшим на северном полюсе. В моей практике, когда люди меняли мои файлы, файлы становились уже не моими до тех пор, пока я не ознакомлюсь с их содержимым заново. Т.е. если начальство понимает, что если кто-то нашёл ошибку в моей части и исправил её, я больше за эту часть ответственности не несу, пока не вернусь с северного полюса и не посмотрю в файлы.

Т.е. нет ситуации "в этом релизе твоя реализация с моими изменениями". Есть "в этом релизе мой вариант реализации той части, которую реализовывал когда-то ты", даже если человек поменял один символ в моём файле.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100355
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mriadusiv_an_ruИногда мне кажется, что богатство Билла Гейтца в заметной степени обеспечили compatibility flags для старых, кривых, но при этом популярных программ.
...винда умела запускать специальный менеджер памяти, когда понимала, что запустили какую-то старую игру sim city...Ну да, compatibility flags это как раз битмаска, в которой каждый бит инструктирует, что вместо текущей версии надо использовать ассоциированный с этим битом кусок старья.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100362
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
17-77в .NET все ошибки можно обрабатывать централизовано, отрабатывая событие вроде "OnException" у Application...
Некоторые вещи никому в голову не приходит писать на .NET, поэтому дотнетовые архитектурные решения, мягко говоря, не универсальны. К примеру, в процессе выполнения SQL-запроса может возникнуть столько особых ситуаций, что исключений не навыбрасываешься (и не наловишься), поэтому внутри движка SQL их кидается штуки две или три --- "память кончилась, причём совсем" и "запрос завершился успешно".
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100422
17-77
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerПри всей моей любви к Application.OnException, обработка ошибок - это иногда что-то большее, нежели MessageBox("Всё плохо! :(").
eNoseнапример ошибку коннекта к субд при неправильном логине/пароле...
при необходимости конечно можно и разделить, смотря кто-то какие программные приложения и системы реализует, а с логином - это не всегда исключительная ситуация, если например написана своя функция и проверка, тогда false - логин/пароль не верный, а true - логин/пароль верный

iv_an_ruК примеру, в процессе выполнения SQL-запроса может возникнуть столько особых ситуаций
ну в .net есть такое , другое дело, если для части этих ошибок понадобятся некие переменные, который остались в выполняемом контексте, а не в OnException
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100441
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЧто именно подразумевается под "невозможно"?
ну например некий класс/подпрограмма, как это очень часто бывает, и жнец, и швец, и на дуде игрец. устанавливает соединения с mail-сервером, обращается к бд, чего-то там в файловой системе генерит.
для того чтобы это хозяйство можно было тестировать, его нужно разбить для начала на отдельные блоки. в противном случае, нужно сначала писать нечто, что хоть какими-то правдами и неправдами сможет "тестировать" существующего монстра (а это в зависимости от ситуации может быть либо почти невозможно, либо возможно, но с неоправданно большими затратами времени и усилий).
собственно я о чем : по-моему скромному мнению ваше утверждение о нонсенсе переписывания без тестов кажется мне черезчур категоричным (или я его неверно интерпретирую?). т.е. в идеальном мире я бы полностью под ним подписался - да, надо сначала написать тесты для старого кода, и только после этого по кускам переписывать. но в реальном мире, по-крайней мере на моем опыте, была масса случаев, где очередность переписать, а потом тестировать себя оправдывала, потому что иначе потребовалась бы масса усилий только для модификации старого кода в таком виде, чтобы появилась возможность его хоть как-то тестировать (что уже по своей сути явилось бы "переписыванием" - получаем рекурсию: чтобы переписать, нужно сначала написать тесты, чтобы написать тесты, нужно сначала переписать).

опять же таки на тему "невозможности" вы приводите пример, где однако говорите о реализации некой новой фичи (если я правильно понял), в то время как я имею в виду ситуацию, когда фича уже есть, желание и нужда ее переписать тоже имеется, но вот тестов для нее не существует в природе и возможность таковых весьма призрачна в виду полной неструктурированности кода.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100478
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaну например некий класс/подпрограмма, как это очень часто бывает, и жнец, и швец, и на дуде игрец. устанавливает соединения с mail-сервером, обращается к бд, чего-то там в файловой системе генерит.Регрессионные тесты могут быть и только лишь сквозными, если другого выхода нет, если регрессионные модульные тесты написать нет возможности.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100517
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaдля того чтобы это хозяйство можно было тестировать, его нужно разбить для начала на отдельные блоки.
Решительно не согласен. Если по смыслу задачи хозяйство должно работать в совокупности, то и тестирование интересно в первую очередь в совокупности, в то время как тестирование отдельных блоков - местами удобный вспомогательный инструмент.

Поясню на примере: допустим, мы тестируем бизнес-функцию "клиент получает по почте отчёт о своих расходах за последний месяц". Для того, чтобы сказать "эта бизнес-функция работает" нам совершенно неинтересно искать ответ на вопрос "работает ли запрос в СУБД", "работает ли почтовый интерфейс" и так далее. Они нам не нужны. Нам нужно и интересно следующее: сделать за месяц десять расходов, нажать кнопку, найти в почтовом ящике письмо и увидеть, что цифра в нём равна сумме десяти сгенерированных нами расходов. Если почта работает с ошибками, но код умеет эти ошибки обходить или преодолевать - хотя бы тупой перепосылкой - функция работает, и именно это нам важно. Напротив, нам наплевать на самый идеально реализованный почтовый модуль, если функция его криво вызывает и данные не приходят, приходят не туда или не так.

chpashaв противном случае, нужно сначала писать нечто, что хоть какими-то правдами и неправдами сможет "тестировать" существующего монстра (а это в зависимости от ситуации может быть либо почти невозможно, либо возможно, но с неоправданно большими затратами времени и усилий).
Вынужден признать, полномасштабное автоматизированное тестирование я развернул на проекте, где оно довольно просто делалось штатными средствами самого проекта. Скажем, под спойлером - полный текст теста передачи lob-ов с клиента на сервер.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
:x clob
:error string = ''

<TestForm> form

{
procedure DoTest;
var i: integer;
begin
  for :i := 1 to 125000 do :x := :x + 'абвгдеёжзи';
  TestOracleLob;
  if :error <> '' then AddError (:error);
end;
}

[
procedure TestOracleLob is
  x clob := :x;
  s varchar2(10);
  amount integer;                    
  offset integer;
begin      
  dbms_lob.open (x, dbms_lob.lob_readonly);
  for i in 1..125000 loop
    s := '';     
    amount := 10;
    offset := 10*i-9;
    dbms_lob.read (x, amount, offset, s);
    if coalesce (s, 'xxx') <> 'абвгдеёжзи' then 
      :error := 'Failed at offset ' || offset;
      return; 
    end if;
  end loop;
end;  
]


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

chpashaсобственно я о чем : по-моему скромному мнению ваше утверждение о нонсенсе переписывания без тестов кажется мне черезчур категоричным (или я его неверно интерпретирую?)
"Нонсенс" там - не моё слово, я отвечаю на утверждение про "переписывание - нонсенс" и имею в виду "без тестов - может быть и нонсенс, а с тестами - можно и нужно".

chpashaна моем опыте, была масса случаев, где очередность переписать, а потом тестировать себя оправдывала,
Не собираюсь спорить. Бывает даже так, что оптимально просто переписать и потом ещё раз руками простестировать. Но это уже немного другое переписывание, не то "попутное с основной задачей", о котором мы говорим с лёгкой руки ShSerge-а.

chpashaно вот тестов для нее не существует в природе и возможность таковых весьма призрачна в виду полной неструктурированности кода.
Формат кода не может и не должен иметь отношения к наличию и структуре тестов. Подмена "тестов" "юнит-тестами" - имхо опасное заблуждение.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100642
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerchpashaдля того чтобы это хозяйство можно было тестировать, его нужно разбить для начала на отдельные блоки.
Решительно не согласен. Если по смыслу задачи хозяйство должно работать в совокупности, то и тестирование интересно в первую очередь в совокупности
как говорилось в одном любимом мною мультфильме "вот именно: ЕСЛИ ". по факту же имеем дело со стандартной ошибкой проектирования, когда один и тот же класс делает кучу вещей на совершенно разных уровнях абстракции и тестировать его в таком виде я не вижу никакой технической возможности - так или иначе придется что-то переписывать и нехило импровизировать - гораздо быстрей переписать и тестировать уже новое.

softwarerв то время как тестирование отдельных блоков - местами удобный вспомогательный инструмент.

Поясню на примере: допустим, мы тестируем бизнес-функцию "клиент получает по почте отчёт о своих расходах за последний месяц". Для того, чтобы сказать "эта бизнес-функция работает" нам совершенно неинтересно искать ответ на вопрос "работает ли запрос в СУБД", "работает ли почтовый интерфейс" и так далее. Они нам не нужны.
я как бы в этом вопросе обоими руками за. другое дело, что я не очень убежден в насущной неоходимости тестирования всего ансамбля, если гарантируется правильная работа отдельных блоков. есть ли выигрыш? т.е. придумать примеров мне фантазия позволяет, но на практике мне например в цепочке "юзверь жмет на кнопку -> видит результат" всегда хватает тестировать только вторую часть, а не в совокупности.

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

softwarer"Нонсенс" там - не моё слово, я отвечаю на утверждение про "переписывание - нонсенс" и имею в виду "без тестов - может быть и нонсенс, а с тестами - можно и нужно".
ок

softwarerchpashaна моем опыте, была масса случаев, где очередность переписать, а потом тестировать себя оправдывала,
Не собираюсь спорить. Бывает даже так, что оптимально просто переписать и потом ещё раз руками простестировать.
вполне

softwarerФормат кода не может и не должен иметь отношения к наличию и структуре тестов. Подмена "тестов" "юнит-тестами" - имхо опасное заблуждение.он-то не должен, но он может негативно влиять на возможность их создания. если структура классов создается без оглядки на возможность тестирования у вас будет мало шансов чисто технически осуществлять интеграционные тесты (мы ведь о них?)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100689
Фотография mriadus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю тут конфликт типов людей. chpasha принадлежит одному типу людей, softwarer к другому. Один тип лучше видит структуру, второй хуже и всё.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100770
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaчто я не очень убежден в насущной неоходимости тестирования всего ансамбля, если гарантируется правильная работа отдельных блоков. есть ли выигрыш?Есть широко известное в узких кругах видео "испытания спасательного парашюта СП-42 в Коломне".
Каждый отдельный узел был проверен до того и успешно отработал на испытаниях.
Расчековка нормально,
чехол снялся нормально,
стропы все вытянулись,
купол не порвался,
манекен из ремней подвесной системы не вывалился...

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

А вроде такая простая вещь...
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100781
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Regression test (тут же о них) ещё и время занимает

у нас только тесты идут 4 дня -- с пятницы по понедельник
да ещё и время, чтобы обработать результаты
вот столько их много

1 ошибка = сдвиг срока на неделю.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100807
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaчто я не очень убежден в насущной неоходимости тестирования всего ансамбля, если гарантируется правильная работа отдельных блоков. есть ли выигрыш?

тест отдельных блоков это FVT (functional verification test)
после него выполняется Regression test, чтобы проверить, будут ли остальные части системы работать после фикса
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100811
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый ГодRegression test (тут же о них) ещё и время занимает

у нас только тесты идут 4 дня -- с пятницы по понедельник
да ещё и время, чтобы обработать результаты
вот столько их много

1 ошибка = сдвиг срока на неделю.
А почему не гонять тесты непрерывно и на ферме побольше? Если у вас были деньги на четыре дня тестов, то найдутся и на оборудование фермы.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100815
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ruНовый ГодRegression test (тут же о них) ещё и время занимает

у нас только тесты идут 4 дня -- с пятницы по понедельник
да ещё и время, чтобы обработать результаты
вот столько их много

1 ошибка = сдвиг срока на неделю.
А почему не гонять тесты непрерывно и на ферме побольше? Если у вас были деньги на четыре дня тестов, то найдутся и на оборудование фермы.

это не ко мне вопрос :)
да и раз в неделю всех устраивает
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100830
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mriadusЯ думаю тут конфликт типов людей. chpasha принадлежит одному типу людей, softwarer к другому. Один тип лучше видит структуру, второй хуже и всё.
где вы видите конфликт? происходит обмен мнениями, не более.

iv_an_ruЕсть широко известное в узких кругах видео "испытания спасательного парашюта СП-42 в Коломне".
Каждый отдельный узел был проверен до того и успешно отработал на испытаниях.
все это прекрасно, но далековато от предметной области ;) . вы же не станете опыт из воспитания щенков бультерьера на собственных детях применять?
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100876
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpashaдругое дело, что я не очень убежден в насущной неоходимости тестирования всего ансамбля, если гарантируется правильная работа отдельных блоков.
Это естественное последствие увлечения восходящими подходами. (пожимая плечами) Но из наличия вагона наилучших кирпичей ещё не следует, что дом не развалится. Более того, большая часть усилий тратится как раз на то, чтобы в общем готовые кирпичи взаимодействовали именно так, как нужно.

chpashaно на практике мне например в цепочке "юзверь жмет на кнопку -> видит результат" всегда хватает тестировать только вторую часть, а не в совокупности.
Ой, не скажите. На практике иногда оказывается, что пользователь не может даже ввести данные, дающие возможность нажать на кнопку.

chpashaесли структура классов создается без оглядки на возможность тестирования у вас будет мало шансов чисто технически осуществлять интеграционные тесты (мы ведь о них?)
Чисто технически тесты можно и нужно осуществлять даже если в программе вообще нет структуры классов и даже нет ни единого класса :)

chpashaздесь я мысль немного потерял. лично я имел в виду большие и неоправданные затраты времени и сил в контексте написания тестов для старого кода перед его переделкой.
Возможно, я ещё раз Вас удивлю, но с моей точки зрения, тесты должны быть такими, чтобы переделка их чаще всего не затрагивала. А следовательно, писать их "до переделки" или "после переделки" - трудозатраты одинаковые. Следовательно, лучше до: написал тесты, проверил и отладил их на работающем коде, потом переделываешь код, пользуясь отлаженными тестами.

Подчеркну: та мысль юнит-тестирования, что надо тестировать каждую мелочь и постоянно переделывать тесты в соответствии с изменениями деталей реализации, имхо... неудачна, это просто мартышкин труд.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100888
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новый ГодRegression test (тут же о них) ещё и время занимает
Пусть занимает, не жалко. Я внедрил следующий подход: тестировщики сделали виртуалку, я поставлял инструмент и свои тесты к нему, разработчики поставляли приложение под этот инструмент, тестировщики поставляли регрессионные тесты для приложений. Соответственно, я правлю свою версию, в фоне крутится виртуалка с тестами. Когда всё сделано и тесты проходят, я выкатываю релиз. Одновременно разработчики на предыдущем релизе дорабатывают приложения, тестируются на той же виртуалке. Тестировщики ещё неделю гоняют их совместно, и автоматически, и руками.

Новый Году нас только тесты идут 4 дня -- с пятницы по понедельник
Если это не устраивает, вряд ли сложно отмасштабировать. Прогон тестов - задача, которая отлично параллелится. Вкупе с тем, что обычно конкретной группе незачем гнать все regression тесты, достаточно таки только "в затронутых областях", не вижу причин как-то себя сдерживать из-за этого. У меня полное тестирование занимало несколько часов, вполне устраивало. Не обязательно же сидеть сложа руки и ждать результатов.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100932
Фотография iv_an_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerобычно конкретной группе незачем гнать все regression тесты, достаточно таки только "в затронутых областях"Ещё бы знать заранее и достоверно, какие именно области затронуты. Или хотя бы --- какие уж точно _не_ затронуты.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100947
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iv_an_ruЕщё бы знать заранее и достоверно, какие именно области затронуты.
Для большинства задач это всё же определяется достаточно достоверно, согласитесь. Разработчик решает эту задачу каждый раз, думая, что тестировать перед выкладыванием версии в сборку, и как правило таки не проводит на локале полного регрессионного тестирования.
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37100973
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerЧисто технически тесты можно и нужно осуществлять даже если в программе вообще нет структуры классов и даже нет ни единого класса :)
на этом месте у меня появилось острое чувство, что мы о разных тестах говорим. как вы собираетесь тестировать скрипт, отправляющий email-ы получателям, определяемым по сложным правилам (т.е. тестировать нужно не факт отправки, а правильность выбора получателя) ? путем сканирования логов? не проще ли иметь доступ и тестировать ту часть кода, которая принимает решение о получателе, и оставить в покое физическую отсылку (ее код либо работает, либо нет, а работоспособность почтового сервера это уже другая епархия).


softwarerchpashaздесь я мысль немного потерял. лично я имел в виду большие и неоправданные затраты времени и сил в контексте написания тестов для старого кода перед его переделкой.
Возможно, я ещё раз Вас удивлю, но с моей точки зрения, тесты должны быть такими, чтобы переделка их чаще всего не затрагивала. А следовательно, писать их "до переделки" или "после переделки" - трудозатраты одинаковые.
мы точно о разных тестах говорим. вы похоже о тех, которые "на кнопочки сами жмут", нет? потому как те тесты, которые имею в виду я по трудозатратам напрямую зависят от качества кода, и для одних участков могут быть написаны легко, а для других - только титаническими усилиями.

softwarerПодчеркну: та мысль юнит-тестирования, что надо тестировать каждую мелочь и постоянно переделывать тесты в соответствии с изменениями деталей реализации, имхо... неудачна
идею про тестирование каждой мелочи и 100% покрытие я тоже не оценил. впрочем я не говорил о юнит-тестировании изначально. тут вот термин "функциональное"-тестирование подкинули. видимо я о нем :)
...
Рейтинг: 0 / 0
А нужно ли качество кода?
    #37134856
Фотография Mumbo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По-моему нужно у начальника уточнить - он какую задачу ставит: улучшать качество или дорабатывать.
Судя по исходному сообщению, "код дали дорабатывать и добавлять функционал". Значит, это и есть главная задача, именно на нее и есть деньги.
И, похоже, код в данном случае не давали на ревью, на оценку и улучшение качества. Значит, это не главная задача. На нее может быть нет денег или может она по каким то другим причинам не нужна.
Исходить же только "из любви к качеству" нет возможности, когда кто-то оплачивает работу. И, кстати, подобный подход сам по себе может оказаться некачественным перекосом в работе команды, нарушением важных применяющихся в компании паттернов взаимодействия и логики производственного процесса.
Если начальство ставит задачу воплощения нового функционала, и направляет на ее решение средства, а вместо этого получит что-то еще, (тоже, что и было, но качественное глубоко внутри), то оно имхо довольно справедливо почувствует себя потратившим средства мимо цели.
...
Рейтинг: 0 / 0
113 сообщений из 113, показаны все 5 страниц
Форумы / Программирование [игнор отключен] [закрыт для гостей] / А нужно ли качество кода?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]