ну я сама не программист не разу, но как-то дошло дело, чтобы написать одну штуку для своих нужд открыла референс стала тупо считать описание всех функций и т.д.)) вообщем всё понятно но как использовать на практике хз))) ну вообщем да, я пользовалась чужим кодом из разных источников чтобы сделать _это_ ))))) с миру по нитке, но зато сделала что хотела думаю копипаст эт для тех кто ещё ничо не умеет вроде меня)) дальше - надо расти))
Нет, это как раз нормально, когда берёшь чужой работающий код и: 1) не трогаешь его и пользуешься как "чёрным ящиком", Или 2) начинаешь править, но разбираешься как он работает.
Плохо, когда студенты (которые как бы учиться должны) копируют весь код для своего курсовика, а потом "хаками" доводят его до состояния рабочего. И плохо, когда они привыкают делать ето и дальше копи-пастят по привычке.
А отсюда растёт другая весёлая проблема: если скопи-пастить код в десяток строчек из одного модуля в другой, то при изменении требований или исправлении багов, то в одном из кусков кода возникает ошибка. Работает это правило надёжно - проверял не раз.
Ну собственно как я боролся, будучи лидом в "Нивале" на "Ночном Дозоре", писавшемся в основном новичками только-только из ВУЗ'а, которые пытались использовать Ctrl+C Ctrl+V довольно часто (на проекте, над которым сейчас работаю, программисты плюс минус элитные, и уже так не делают).
1) google search по слову simian; download 2) запуск simian включается в build process 3) чтобы ложные срабатывания не доставали, пишется маленькая утилитка, позволяющая быстро фильтровать выход simian'а (и заодно представлять его в более удобном для навигации виде)
Ну статью я писал как вдохновление для новичков, скореpigmeichJuly 23 2007, 06:19:43 UTC
Предложенный алгоритм на моём текущем проекте не подойдёт потому что: 1) к звену lead/managment я не отношусь, а последние смотрят на копи-паст не с сильной, но с симпатией. 2) Simian язык проекта не поддерживает.
Re: Ну статью я писал как вдохновление для новичков, скоplakhovJuly 23 2007, 06:56:14 UTC
Прикольно, а что за язык? На самом деле simian даже в plain text дубликаты находит. Поддержка языка позволяет ему замечать некоторые copy-paste'ы с небольшими изменениями типа переименований переменных; в принципе, это не суперважно, можно жить и без этого.
Код более 5-8 строк, которые надо копипастить, мной уже рассматриваются как повод, остановится и подумать, как бы сделать покрасивше. Но это на работе. В инсте при куче немаленьких и однообразных заданий, без копи-паста, можно сойти с ума.
Comments 16
(The comment has been removed)
Reply
Массивы, заполняющиеся как
{
ItemInfo(7, "seven", SOME_PREFIX_FOR_ENUM_FOX),
ItemInfo(3, "three", SOME_PREFIX_FOR_ENUM_DOG),
ItemInfo(88, "eighty eight", SOME_PREFIX_FOR_ENUM_CAT),
ItemInfo(1, "one", SOME_PREFIX_FOR_ENUM_DUCK),
ItemInfo(4, "four", SOME_PREFIX_FOR_ENUM_RAT),
}
всё равно заполняются копипастом. Разница с if:
1) невозможно обратить таблицу без параллельного if
2) эффективней
если 1 и 2 не нужно, а if оказался почему-то удобней, стоит ли идти на принцип?..
Reply
Reply
Плохо когда кусок кода строк в 10 закопипастен 8 раз. Причём если даже не писать на все 8 жутко вариативного метода, в 2-3 атомарных уложиться можно.
Reply
открыла референс стала тупо считать описание всех функций и т.д.)) вообщем всё понятно но как использовать на практике хз)))
ну вообщем да, я пользовалась чужим кодом из разных источников чтобы сделать _это_ )))))
с миру по нитке, но зато сделала что хотела
думаю копипаст эт для тех кто ещё ничо не умеет вроде меня)) дальше - надо расти))
Reply
1) не трогаешь его и пользуешься как "чёрным ящиком",
Или
2) начинаешь править, но разбираешься как он работает.
Плохо, когда студенты (которые как бы учиться должны) копируют весь код для своего курсовика, а потом "хаками" доводят его до состояния рабочего. И плохо, когда они привыкают делать ето и дальше копи-пастят по привычке.
А отсюда растёт другая весёлая проблема: если скопи-пастить код в десяток строчек из одного модуля в другой, то при изменении требований или исправлении багов, то в одном из кусков кода возникает ошибка. Работает это правило надёжно - проверял не раз.
Reply
1) google search по слову simian; download
2) запуск simian включается в build process
3) чтобы ложные срабатывания не доставали, пишется маленькая утилитка, позволяющая быстро фильтровать выход simian'а (и заодно представлять его в более удобном для навигации виде)
Дальнейшие шаги понятны.
Reply
1) к звену lead/managment я не отношусь, а последние смотрят на копи-паст не с сильной, но с симпатией.
2) Simian язык проекта не поддерживает.
За совет спасибо.
Reply
На самом деле simian даже в plain text дубликаты находит. Поддержка языка позволяет ему замечать некоторые copy-paste'ы с небольшими изменениями типа переименований переменных; в принципе, это не суперважно, можно жить и без этого.
Reply
Будешь смеятся - 1С script.
simian скачал дистрибутив, сейчас посмотрю - благо даже лицензия позволяет.
Reply
В инсте при куче немаленьких и однообразных заданий, без копи-паста, можно сойти с ума.
Reply
Leave a comment