|
Как вы пишете код в продакшене? |
|
|
|
Jun 27 2015, 11:24
|

Местный
  
Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502

|
Цитата(Tronix286 @ Jun 26 2015, 22:54)  Настает время, когда проще из различных кусков копи-пастой собрать готовый проект с минимумом правок - там закоментил, тут немного китайского кода. При этом осознаешь, что это полнейший говнокод, треш и угар, так писать ни в коем случае нельзя, и все надо переписать с нуля в идеале, но лень и вроде работает - не трож, а то перестанет. Cроки и вроде работает. Что это? Я один такой? Это нормально! Кроме вас есть еще несколько миллионов говнокодящих индюков и китайцев  Учебник: http://ic.pics.livejournal.com/droids_life...427/427_600.jpg
Сообщение отредактировал CrimsonPig - Jun 27 2015, 11:26
|
|
|
|
|
Jun 29 2015, 07:11
|

Местный
  
Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502

|
Цитата(AlexandrY @ Jun 29 2015, 07:19)  А что за уровень у индусов и китайцев? Все о нем говорят, но мне никогда не приходилось видеть. Вам приходилось когда-нибудь сталкиваться с супердешевыми китайскими товарами откровенно поганого качества? Типа, что продается в магазинах "все за N рублей" ? Ну вот и код, создаваемый толпой дешевых говнокодеров, нанимаемых по рублю за пучок, примерно такой же  Среди тех же индюков-китайцев существуют нормальные программисты, но они стоят сравнимо с нормальными западными. Говноменеджементу же хочется нанимать толпу ресурсов и подешевле. Те, кто сталкивался с методологией "наследование классов по-индусски", над паттернами программирования не смеется
|
|
|
|
|
Jun 29 2015, 07:43
|

Местный
  
Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502

|
Цитата(halfdoom @ Jun 29 2015, 08:21)  Это говорит о нежелании или неумении систематизировать свои (и чужие) разработки оформляя их в библиотеки. "Копи-паст" должен быть сведен к минимуму. Слишком категоричное утверждение, ИМХО. В жизни всегда есть место копи-пасту  Заниматься созданием библиотек надо, если это оправдано.. Какой смысл заниматься разработкой библиотеки, если она нужна один раз и в одном проекте ? Стаскивать всякое барахло и организовывать его в библиотеку ? Есть вещи в жизни и по-интереснее. Говнокоду тоже есть место в жизни, если надо накидать по-быстрому какой-нибудь опытный образец, например. Вообще-то существуют методики оценки качества кода, включая оценки процента копипаста внутри проектов  Некоторая поблема заключается в том, что многие методики неприменимы или очень сложно применимы к разным видам софта (типа эмбеддед) или их применение неоправданно дорого, да и вообще процесс разработки софта, похоже, не формализуем.
|
|
|
|
|
Jun 29 2015, 14:22
|

Местный
  
Группа: Участник
Сообщений: 329
Регистрация: 23-04-14
Пользователь №: 81 502

|
Цитата(AlexandrY @ Jun 29 2015, 15:15)  Это не в тему. Мужики просто не знают свое железо. Ммм.. что-то я начал терять нить... ну ладно, вот пример про сравнение даблов volatile здесь шоб никто не догадался  volatile double d1 = 1.0/3.0; volatile double d2 = 7.0/3.0; d2 /= 7.0; assert(d1 == d2);
|
|
|
|
|
Jun 29 2015, 14:51
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(CrimsonPig @ Jun 29 2015, 15:11)  Кстати, про говнокодеров и не очень: http://geektimes.ru/post/252690/Опять же, советую обратить внимание на случай с Арианом.. Вопросы "а как мне преобразовать float в int а потом обратно" до сих пор мучают неокрепшие умы кгхм..кодеров судя по данному форуму и дгугим, типа сахары. . Окрепшие умы таких же кодеров, небось, смело и прямо проверяют даблы на равенство путем "=="  Только при чем тут код? Или кодом называете сниппеты на пару строк? Ошибки в распределенных и RT системах управления это классика. На этот счет появляются даже теоремы типа теоремы CAP Цитата(CrimsonPig @ Jun 29 2015, 17:22)  Ммм.. что-то я начал терять нить... ну ладно, вот пример про сравнение даблов volatile здесь шоб никто не догадался  volatile double d1 = 1.0/3.0; volatile double d2 = 7.0/3.0; d2 /= 7.0; assert(d1 == d2); Это совершенно некорректный пример Правильный пример вот: Код volatile double d1 = 20000.0; volatile double d2 = 1.0; volatile double k1 = 60000.0; volatile double k2 = 3.0; d1 = d1/k1; d2 = d2/k2;
if (d1==d2) { printf("d1(%f)==d2(%f)",d1,d2); } else { printf("d1(%f)<>d2(%f)",d1,d2); } И знаете, d1 и d2 будут равны друг другу. Изучайте железо.
|
|
|
|
|
Jun 30 2015, 04:56
|

Профессионал
    
Группа: Свой
Сообщений: 1 003
Регистрация: 20-01-05
Пользователь №: 2 072

|
Цитата(CrimsonPig @ Jun 29 2015, 10:43)  Какой смысл заниматься разработкой библиотеки, если она нужна один раз и в одном проекте ? Если человек готовит очередной проект путем копирования кусков из предыдущего, то уже есть повторяемость кода. Конечно, скелет проекта может быть скопирован, но рутинные функции должны быть в "одном месте". Цитата(AlexandrY @ Jun 29 2015, 09:19)  А что за уровень у индусов и китайцев? Все о нем говорят, но мне никогда не приходилось видеть. Чаще всего имеется в виду механическая реализация требуемого алгоритма, без какого либо процесса формализации и попыток нормализации. Принцип прост - должно работать здесь и сейчас. Практически нет выделения в функции повторяющихся фрагментов и т.д. и т.п. Говорю это по факту знакомства с NDA библиотекой от весьма известной фирмы. При этом не могу утверждать, что это уровень "индусов и китайцев", поскольку в копирайтах конкретного автора нет, однако объем писанины впечатляет.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|