Поиск:

Ответ в темуСоздание новой темы Создание опроса
> code review 
:(
    Опции темы
Nastya
Дата 21.8.2007, 19:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: -1
Всего: 44



САБЖ.
Может тут обсуждалось, но я не нашла.
В общем инетресна практика по этому вопросу. У кого делается, если как то какой механизм. Я была свидетелем только неудачного опыта в эом вопросе. Делитесь удачным или соображениями нужно ли это smile


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Bose
Дата 21.8.2007, 20:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51




Цитата(Nastya @  21.8.2007,  19:46 Найти цитируемый пост)
 Я была свидетелем только неудачного опыта в эом вопросе.

Нельзя ли поподробнее?
PM MAIL WWW Skype   Вверх
nornad
Дата 21.8.2007, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 3
Всего: 31



В плане подтягивания новичков - полезно, а так - сомневаюсь...


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
JackYF
Дата 22.8.2007, 00:18 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(nornad @  21.8.2007,  23:42 Найти цитируемый пост)
В плане подтягивания новичков - полезно

Ни фига себе - подтягивание новичков...

Это одно из главных премуществ команды, которое надо использовать. Один программист может написать и продумать много чего, но по своему опыту работы - с помощью code review код "вычищается" и оптимизируется по самое не хочу.

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


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Nastya
Дата 22.8.2007, 07:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: -1
Всего: 44



Цитата(Bose @  21.8.2007,  17:19 Найти цитируемый пост)
Цитата(Nastya @  21.8.2007,  19:46 ) Я была свидетелем только неудачного опыта в эом вопросе.Нельзя ли поподробнее?


Гм. Системный аналитик предложил раз в неделю проводить коде ревью. Был составлен график по дням, в понедельник у одного, во вторник у дрого и т.д. Собералося человек (чей код смотрели), этот самый сис. аналитик, + руководитель проекта и возможно еще пару заинтересованых лиц. КПД от занятия было 0-е, через месяц дело угасло.

Из положительного опыта, эта работа в паре, т.е. кодеревью делается одновременно с написанием. ИМХО на начальных стадиях написания кусков, например на закладке интерфейсов, ИМХО лучше работать в паре, но не везде руководство привествует такой подход.

Вопрос в общем-то не праздный. С одной стороны, кодеревью явно нужно, с другой я не совсем вижу как это правильно организовать.
 smile - положительный


JackYF, ты бы описал сам процесс, как это видешь. а? плиз.


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
JackYF
Дата 22.8.2007, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Nastya @  22.8.2007,  07:47 Найти цитируемый пост)
Системный аналитик предложил раз в неделю проводить коде ревью. Был составлен график по дням, в понедельник у одного, во вторник у дрого и т.д. Собералося человек (чей код смотрели), этот самый сис. аналитик, + руководитель проекта и возможно еще пару заинтересованых лиц. КПД от занятия было 0-е, через месяц дело угасло.

хм, неудивительно. Я бы тоже был против такой системы.

Цитата(Nastya @  22.8.2007,  07:47 Найти цитируемый пост)
JackYF, ты бы описал сам процесс, как это видешь. а? плиз. 

Вижу так:

Во-первых, рекомендуется использовать систему контроля версий кода, напр. cvs, svn или еще какую. Которая хранит общий репозитарий, следит за всеми изменениями в коде - кто, что, когда, где и т.д.
Так вот. Когда надо написать/изменить/переработать кусок кода, один или два человека берут и какое-то пишут код, тестируют его сами. Потом дают отмашку - я выполнил задачу. После этого люди, которые посвободнее сейчас, прямо в этот момент идут и вместе с человеком просматривают его код. По одному, не все скопом.

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

Итог из этого: code review, имхо, должен проводиться во время написания кода. Бессмысленно делать review кода, который писался неделю назад.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
nornad
Дата 22.8.2007, 15:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 3
Всего: 31



В целом, описанный вариант мне понравился. Чем-то похоже на парное программирование.
Цитата(JackYF @  22.8.2007,  17:07 Найти цитируемый пост)
Итог из этого: code review, имхо, должен проводиться во время написания кода. Бессмысленно делать review кода, который писался неделю назад

Для опытных программистов - да, а для новичков и через неделю есть смысл просмотра кода.


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
JackYF
Дата 22.8.2007, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(nornad @  22.8.2007,  15:07 Найти цитируемый пост)
Для опытных программистов - да, а для новичков и через неделю есть смысл просмотра кода.


Код за неделю забывается всеми - и новичками, и профессионалами... зачем делать review через неделю, если можно прямо сейчас, когда код только написан и свеж в памяти?



--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
Nastya
Дата 22.8.2007, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Комодератор
Сообщений: 1287
Регистрация: 27.3.2002
Где: Мариуполь

Репутация: -1
Всего: 44



JackYF, невижу преймуществ такого подхода перед банальным парным программированием. На чтение кода человеком, который будет делать ревью уйдет столько же времени сколько на его написание :( 


--------------------
Что бы понять рекурсию, надо понять рекурсию

"Профессионал - это человек сделавший все возможные ошибки в очень узкой области". Н.Бор
PM MAIL   Вверх
Bose
Дата 22.8.2007, 18:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1458
Регистрация: 5.3.2005
Где: Riga, Latvia

Репутация: нет
Всего: 51



JackYF, интересное видение. 

В таком случае и я опишу свой "опыт"(хотя изначально не был уверен, что он напрямую относится к code review). 
Навеяно фразой:
Цитата(JackYF @  22.8.2007,  14:07 Найти цитируемый пост)
Итог из этого: code review, имхо, должен проводиться во время написания кода. Бессмысленно делать review кода, который писался неделю назад.

Над кодом я работаю в одиночку. Коммиты в репозиторий(Subversion) стараюсь делать, только тогда, когда реализуемая/исправляемая функциональность в коде приобретает завершённый вид. В среднем получается где-то раз в три дня, раз в неделю. Так вот, перед каждым коммитом просматриваю код чтобы:
1) толково описать изменения которые я сделал
2) убедится что не осталось лишних закомментированных блоков кода
3) новый код оформлен в соответствии со стандартом(в данном случае моим персональным smile )

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

Добавлено через 5 минут и 50 секунд
Вот, ещё в тему одна любопытная статья от not a kernel guy описывающая пользу code review и другая не менее полезная от Alex Lebedev. 
Настоятельно рекомендую к ознакомлению. smile 
PM MAIL WWW Skype   Вверх
nornad
Дата 22.8.2007, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 3
Всего: 31



Цитата(JackYF @  22.8.2007,  20:42 Найти цитируемый пост)
Код за неделю забывается всеми - и новичками, и профессионалами... зачем делать review через неделю, если можно прямо сейчас, когда код только написан и свеж в памяти?

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

Цитата(Nastya @  22.8.2007,  21:05 Найти цитируемый пост)
JackYF, невижу преймуществ такого подхода перед банальным парным программированием.

Не путай парное программирование и code review. Просмотр кода при обычном подходе позволяет улучшать качество кода и "приводить всех к одному знаменателю" (что полезно при работе команды). При этом используется не две головы, а куда больше. При парном же мы имеем двух человек, которые работают в паре. И пишут один код вместе.



--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
JackYF
Дата 22.8.2007, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(Nastya @  22.8.2007,  18:05 Найти цитируемый пост)
На чтение кода человеком, который будет делать ревью уйдет столько же времени сколько на его написание :(  

нет. Парное программирование само по себе неплохо и может применяться. Основываясь на реальном опыте, говорю, что на code review тратится на порядок меньше времени, чем на его написание.


Цитата(Bose @  22.8.2007,  18:28 Найти цитируемый пост)
Так вот, перед каждым коммитом просматриваю код чтобы:
1) толково описать изменения которые я сделал
2) убедится что не осталось лишних закомментированных блоков кода
3) новый код оформлен в соответствии со стандартом(в данном случае моим персональным smile )

вот, отлично. Это тоже делается автором и проверяющими на завершающей стадии code review.


Цитата(nornad @  22.8.2007,  18:36 Найти цитируемый пост)
Ну, во-первых, за неделю он полностью редко забывается. И даже за месяц не всегда.

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


Цитата(nornad @  22.8.2007,  18:36 Найти цитируемый пост)
Не путай парное программирование и code review. Просмотр кода при обычном подходе позволяет улучшать качество кода и "приводить всех к одному знаменателю" (что полезно при работе команды). При этом используется не две головы, а куда больше. При парном же мы имеем двух человек, которые работают в паре. И пишут один код вместе.

+1. Хорошо объяснил.


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
nornad
Дата 22.8.2007, 21:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1079
Регистрация: 16.2.2007
Где: в Караганде

Репутация: 3
Всего: 31



Цитата(JackYF @  22.8.2007,  22:27 Найти цитируемый пост)
Цитата(nornad @  22.8.2007,  18:36 Найти цитируемый пост)
Ну, во-первых, за неделю он полностью редко забывается. И даже за месяц не всегда.

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

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

Цитата(JackYF @  22.8.2007,  22:27 Найти цитируемый пост)
+1. Хорошо объяснил.

Стараемся зарабатывать одобрение. smile Мы его любим  smile 


--------------------
Три достоинства программиста: Леность, Нетерпение и Гордость
Ларри Уолл
PM MAIL WWW ICQ Skype MSN   Вверх
JackYF
Дата 22.8.2007, 22:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


полуавантюрист
****


Профиль
Группа: Участник
Сообщений: 5814
Регистрация: 28.8.2004
Где: страна тысячи озё р

Репутация: нет
Всего: 162



Цитата(nornad @  22.8.2007,  21:39 Найти цитируемый пост)
Мы

Николай ІІ? smile


--------------------
Пожаловаться на меня как модератора можно здесь.
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
arilou

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание на то, что новые темы, касающиеся новых вопросов, создаются кнопкой "Новая тема", а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих темах, будут удалены.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, arilou.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | УП: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1353 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.