|
|
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Попробую пояснить этот вопрос... Вот есть приложение, работающее. Его дают вам дорабатывать, добавлять функционал и т.п. Конечно, требуется вникнуть и в существующий код. Далее, лично я встречал 2 варианта: 1) Код нечитаем. Методы длиной в несколько тысяч (!) строк, дублирование, НЕЗНАНИЕ разработчиком простых стандартных функций (например, самостоятельная реализация String.Substring()) и т.п. Безспорно, такому коду не место в любом проекте и тут его качество крайне негативно сказывается на сопровождении (вплоть до желания все выкинуть и переделать). 2) Код читаем. Я смотрю его и понимаю, что тут происходит (в общих чертах), поведение методов ожидаемое, мои модификации не приводят к стихийным поломкам в разных частях системы. Но это плохой код. Там может быть обращение к БД из обработчика кнопки и рядом же "правильное" извлечение бизнес-объекта из слоя бизнес-логики. Часть логики лежит в коде, часть на стороне БД. Но, повторюсь, этот код также читаем и доступен для понимания, сопровождение и модификация не превращаются в ад. Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 15:00 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
1) если поддерживает приложение ты, то лучше делать нормально сразу. и перерабатывать то, что не нравится. если есть время и за это платят. 2) если поддерживаешь не ты, но за улучшение не платят, то ничего не делай. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 15:05 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
donkey80Нужно ли прям так биться за качество? Разумеется. Т.к. оно того стоит... Очень хорошо если и руководство поддерживает таки правила. Бывает достаточно сделать документ описывающий те правила и давать "под роспись" всем участникам. Следить все равно приходится конечно... Но по большей части все идёт как нужно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 15:08 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
krvsa, Можно увидеть эти соглашения? (у нас есть только правила как оформлять код, но вот про архитектуру (ну и все что было озвучено выше, всякие там не изобретай коня итд) я даже преставить не магу себе соглашение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 21:47 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Я всегда пишу очень кривой, на ламерский взгляд, код, но простой и эффективный. Чужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 22:26 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeЧужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски. тебя наверное ненавидят ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 22:32 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Поддерживал плохой, но отлично читаемый код, года 2. Дописывал по чуть. В итоге само как то все переписалось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 22:35 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Новый ГодShSergeЧужой код (!) никогда не правлю, а всегда переписываю с нуля. Ну, не весь, а хотя бы функционально законченные куски. тебя наверное ненавидят За что? Кстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть. Удаляю только свой. Чужой - ни-ни! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 22:42 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeКстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть. откройте для себя систему контроля версий уже, зачем проект превращать в помойку? >> Чужой код (!) никогда не правлю, а всегда переписываю с нуля за гранью добра и зла. У вашей компании так много денег, что она оплачивает одну и ту же работу по 2 раза? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 23:03 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
мне пробел даже лишний нельзя поставить, если он не нужен, если речь о том, чтобы сделать фикс а если 2 человека код правят, и один взял, и всё переписал, тогда что? а если code owner и тот кто исправил код это разные люди? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 23:18 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
donkey80Попробую пояснить этот вопрос... Вот есть приложение, работающее. Его дают вам дорабатывать, добавлять функционал и т.п. Конечно, требуется вникнуть и в существующий код. Далее, лично я встречал 2 варианта: 1) Код нечитаем. Методы длиной в несколько тысяч (!) строк, дублирование, НЕЗНАНИЕ разработчиком простых стандартных функций (например, самостоятельная реализация String.Substring()) и т.п. Безспорно, такому коду не место в любом проекте и тут его качество крайне негативно сказывается на сопровождении (вплоть до желания все выкинуть и переделать). 2) Код читаем. Я смотрю его и понимаю, что тут происходит (в общих чертах), поведение методов ожидаемое, мои модификации не приводят к стихийным поломкам в разных частях системы. Но это плохой код. Там может быть обращение к БД из обработчика кнопки и рядом же "правильное" извлечение бизнес-объекта из слоя бизнес-логики. Часть логики лежит в коде, часть на стороне БД. Но, повторюсь, этот код также читаем и доступен для понимания, сопровождение и модификация не превращаются в ад. Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество? 1.Если ты занимаешься поддержкой и в будующем будешь заниматься поддержкой этого кода,если есть на это время(оплачиваемое работодателем), то можно почистить, попереписывать какие-то блоки, если скучно на работе, и форум надоел. 2.Если нет на это финансовых ресурсов, и ты и так на работе горишь - не делай ничего. Если поломаешь что-то - будешь виноват Если сделаешь хорошо - никто даже не заметит и спасибо не скажет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.02.2011, 23:53 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
egorychShSergeКстати, старый код не удаляю, а комментирую. Ну, то есть, если кому не нравится - можно вернуть. откройте для себя систему контроля версий уже, зачем проект превращать в помойку? Сейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка. egorych>> Чужой код (!) никогда не правлю, а всегда переписываю с нуля за гранью добра и зла. У вашей компании так много денег, что она оплачивает одну и ту же работу по 2 раза? Она оплачивает и по 3 и по 300 раз, если надо. Работа такая. Написать с нуля - быстрее, чем разбираться в чужом коде, это многие знают. Но я прочухал это достаточно недавно, всего лет 10 назад, а до этого тоже пытался ковыряться в чужом коде (часто, написаном низкоквалифицированными программистами). :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 00:28 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeСейчас Teamsystem (причём, не самый дешёвый). Работал с тимсурсом, сурсесафе и т.д. . У меня есть и своя, оригинальная разработка.это хорошо, пришло время научиться ими пользоваться правильно. ;-)) ShSergeОна оплачивает и по 3 и по 300 раз, если надо. Написать с нуля - быстрее, чем разбираться в чужом коде, это многие знают.крайне спорное утверждение. Новый код - новые баги. А фиксить их будет, к примеру, другой программист, и он тоже перепишет всё с нуля, и снова наделает новых ошибок... отсюда и берутся эти 300 раз, да? )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 01:03 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeОна оплачивает и по 3 и по 300 раз Думаю, все проще :) Скорее всего работодатель просто не в курсе, на что вы тратите рабочее время ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 01:07 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
donkey80Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в идеале хочется видеть Для начала стоит крепко понимать, что "хороший", "плохой", "правильный", "красивый" итп код - это вовсе не "с эстетической точки зрения Васи Пупкина". Речь идёт об экономической эффективности: о стоимости разработки, эксплуатации, сопровождения, о количестве и стоимости ошибок итп. Разумеется, для разных проектов оптимальные подходы разнятся. Грубо говоря, hello, world не стоит делать трёхзвенкой с мощным движком метаинформации и кучей layer-ов. Надо выбирать оптимум для конкретной ситуации. По опыту моих столкновений с таким кодом лучший путь - постепенно переписывать то, с чем сталкиваешься. Выполняя любое задание, можно выделить некоторое время на "улучшение", в результате чего как минимум актуальные модули постепенно и "без специальных оргмер" станут хороши. donkey80Нужно ли прям так биться за качество? "Прям так" - в смысле "все на баррикады! бросаем свою работу и пока хорошо всё не перепишем, никто домой не уходит!!" таки не надо. Главная задача - локализовать плохое, не дать ему расползаться. А дальше - изживать помаленьку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 02:37 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeЯ всегда пишу очень кривой, на ламерский взгляд, код, но простой и эффективный. Можно для примера небольшой самодостаточный фрагмент? Дабы ламерам показать себя. ShSergeСейчас Teamsystem И ответственный за code review позволяет оставлять в исходниках закомментированный мусор? P.S. А вообще прикольный режим. Вы написали. Через полгода потребовалось дописать, я пришёл, закомментировал Вас, переписал. Через полгода нашли ошибку. Пришёл Вася, закомментировал меня, переписал. Через полгода стало медленно работать. Пришли Вы, закомментировали Васю, раскомментировали себя. Через полгода нашли всё ту же "исправленную" ошибку. Пришёл я... ShSergeНаписать с нуля - быстрее, чем разбираться в чужом коде, это многие знают. А с автотестами у вас так же, как с code review? P.S. Было бы интересно посмотреть, как Вы станете выполнять задание "вот в этой формочке кнопку подвинуть на сантиметр вправо". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 02:44 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
на моей практике, нужно делать только то, что нужно. например, если есть APAR, нужно только исправить ошибку, которая в описании APAR-a, и всё ничего больше трогать просто нельзя какие-то улучшения при этом делать просто запрещено. если уж что-то совсем полхое обнаружилось, нужно PMR открыть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 02:53 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Aklinесли поддерживаешь не ты, но за улучшение не платят, то ничего не делай.Если человек - профессионал и уважает себя и свой труд, он всегда будет писать максимально хороший код, не смотря ни на оплату, ни на что другое. Или по вашему, если мне не платят за хороший код, то я должен выкинуть из головы все книжки и умышленно писать плохой код, назло начальству? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 02:54 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
Algol36, речь не о написании, а о переписывании. начальство вам скажет - вася - здесь поправь. даю час. потом займешься другим проектом. вы вместо этого начнете переписками заниматься? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 03:29 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
donkey80Так вот, как вы относитесь с практической точки зрения к явлению, описанному в п.2? Понятно, что в иделе хочется видеть приложение с единообразной, продуманной архитектурой, паттерны, да и вообще все читали умные книжки про то, "как надо", но на практике я пока что такого не встречал... Не говоря уже о том, что работники выше тим-лида вообще не интересуются (редко интересуются) такими деталями - у них там другие проблемы есть. Нужно ли прям так биться за качество? В обычных проектах нужно следовать правилам рефакторинга: переписывать плохой код только в том случае, если в нем есть ошибка, либо нужно добавить функционал. А за остальное пусть отвечает тот, кто это написал. В случаях, когда есть завершенный проект, который нужно поддерживать за фиксированную денежку в месяц, имеет смысл сделать рефакторинг основной бизнес-логики, чтобы сократить свои затраты на поддержку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 08:14 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
РенатМожно увидеть эти соглашения? Я уже несколько раз их выкладывал... Но наверное они больше касаются кода программ, что как раз по тематике... Ренату нас есть только правила как оформлять код, но вот про архитектуру (ну и все что было озвучено выше, всякие там не изобретай коня итд) я даже преставить не магу себе соглашение Про "архитектуру" подробнее... У нас всякое новое "творение" проходит через обсуждение сомной, поэтомму с "архитектурой" (в моём её понимании) у нас проблем нет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 08:57 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
egorych, softwarer, Артем1 дело говорят. Идеального кода не бывает. Править код без достаточных на то причин - непрактично. Есть 3 действующих лица: пользователь, работодатель, программист. Если пользователь не просит (ошибки, новые функции), а работодатель не заставляет править код, то остаётся личное желание программиста. Но, поскольку "нам не дано предугадать...", то наши самые лучшие намерения могут приводить к печальным последствиям. Опять же. Кто нам сказал, что наше вИдение "как надо" лучше того, что уже сделано? Это ведь не всегда очевидно :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 10:09 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
otzi... skipped ... Опять же. Кто нам сказал, что наше вИдение "как надо" лучше того, что уже сделано? Это ведь не всегда очевидно :-) это точно :) На текущем месте работы нет утвержденного соглашения о стандартах кодирования. Случается иногда засечь момент, что один так ставит скобки - другой через день, если полез в этот код, возвращает их обратно. В хистори файла замечаешь - смешно. С this тоже иногда бывает, один пишет, другой стирает :) Тоже самое и с улучшением кода, просто не так сильно заметно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 10:33 |
|
||
|
А нужно ли качество кода?
|
|||
|---|---|---|---|
|
#18+
ShSergeНаписать с нуля - быстрее, чем разбираться в чужом коде, это многие знают. Любой кто разрабатывал хоть что-нибудь сложнее чем Hello World знает, что это не так. Про баги неплохо у джоля сказано http://www.joelonsoftware.com/articles/fog0000000069.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.02.2011, 12:13 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=37094121&tid=1343117]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
195ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
88ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 582ms |

| 0 / 0 |
