Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
코드 리뷰어 활동 후기
Search
RIDI
February 10, 2017
Technology
3
970
코드 리뷰어 활동 후기
발표자: 뷰어팀 김광래
RIDI
February 10, 2017
Tweet
Share
More Decks by RIDI
See All by RIDI
원격 근무 팀 운영 경험 공유
ridi
0
2.1k
SVG Icon Design Guide
ridi
2
3.5k
빠르게 훑어보는 리디페이 백엔드 개발기
ridi
2
4.9k
Next.js는 정말 zero config였다.
ridi
0
2k
3일 걸릴 것 같던 구매목록 다운로드는 왜 3주가 걸렸을까?
ridi
0
390
원격으로 한 달 일해보니
ridi
0
1.4k
리디북스 앱에 S Pen Remote 연동하기
ridi
2
2.6k
UI 라이브러리 개발기
ridi
1
2.5k
테스트 환경 개선하기
ridi
8
3.4k
Other Decks in Technology
See All in Technology
HCP TerraformとAzure:イオンスマートテクノロジーのインフラ革新 / HCP Terraform and Azure AEON Smart Technology's Infrastructure Innovation
aeonpeople
3
990
Amazon Aurora バージョンアップについて、改めて理解する ~バージョンアップ手法と文字コードへの影響~
smt7174
1
250
ソフトウェアアーキテクトのための意思決定術: Software Architecture and Decision-Making
snoozer05
PRO
17
4k
マルチデータプロダクト開発・運用に耐えるためのデータ組織・アーキテクチャの遷移
mtpooh
0
160
オーティファイ会社紹介資料 / Autify Company Deck
autifyhq
10
120k
信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetry
ymotongpoo
9
5k
[TechNight #86] Oracle GoldenGate - 23ai 最新情報&プロジェクトからの学び
oracle4engineer
PRO
1
170
panicを深ぼってみる
kworkdev
PRO
2
150
Autify Company Deck
autifyhq
2
41k
第27回クラウド女子会 ~re:Invent 振り返りLT会~ 宣言型ポリシー、使ってみたらこうだった!
itkr2305
0
290
Platform EngineeringがあればSREはいらない!? 新時代のSREに求められる役割とは
mshibuya
2
4k
プロダクト観点で考えるデータ基盤の育成戦略 / Growth Strategy of Data Analytics Platforms from a Product Perspective
yamamotoyuta
0
250
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
20
2.4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
327
24k
Scaling GitHub
holman
459
140k
A designer walks into a library…
pauljervisheath
205
24k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Designing for Performance
lara
604
68k
4 Signs Your Business is Dying
shpigford
182
22k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
Unsuck your backbone
ammeep
669
57k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
59k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Transcript
코드 리뷰어 활동 후기 뷰어팀 김광래, 17.2.10
저에 대하여
근래에 코드 리뷰어 역할을 자주 맡게 되면서 제가 했던 /
하고 있는 고민들을 공유하고자 합니다!
코드 리뷰 : 개발 결과에 대한 의견을 교환하는 과정
코드 리뷰에서 확인해야할 것 - 잘 동작하는가? - ‘좋은 코드’인가?
- 스타일의 일관성 - 간결 + 이해하기 쉬움 - 적절히 분리 + 유연한 구조 - 테스트하기 쉬움
고민 1 : 좋은 도구? GitLab - Upsource - GitHub
Upsource -빠름 -특정 commit 제외 가능 -Comment 완료 처리 가능
https://d3nmt5vlzunoa1.cloudfront.net/wp-content/uploads/2013/09/image_thumb2.png
GitHub -Issue / review의 관리 및 연계가 쉬움 -Commit 선택에
제약↑ -다소 느림
GitLab -GitHub과 유사 -매우 느림 -Comment가 많으면 오류 발생 https://i.ytimg.com/vi/aWFMxYT7n6Y/maxresdefault.jpg
고민 2 : 좋은 Process? 좋은 결과 + 빠른 진행
속도
Remind : 코드 리뷰에서 확인해야할 것 - 잘 동작하는가? -
‘좋은 코드’인가? - 스타일의 일관성 - 간결 + 이해하기 쉬움 - 적절히 분리 + 유연한 구조 - 테스트하기 쉬움
무엇을 하는 코드인지 파악하기 https://www.entropywins.wtf/blog/wp-content/uploads/2014/04/cr.png
잘 동작하는지 확인하기 – 좋았던 점 - 리뷰 전 Task
파악에 유용 - 오류 Double check 가능 - “버그로 인한 코드 변경 리뷰 시간 증가” 예방
잘 동작하는지 확인하기 – 시행착오 오류를 발견했을 때 … -
공유 시점 - 공유 대상 - 공유 수단 : 구두 / Slack / Asana
잘 동작하는지 확인하기 – 문제점 - 코드 리뷰에 속하는 부분인지?
- Test 자동화로 생략 가능한 부분이 아닌지? - 디자인 확인 시에 체크해야 할 부분이 아닌지?
좋은 코드인지 확인하기 큰 변화를 가져올 수 있는 부분부터 -
전체적인 구조 디테일한 부분 - 리뷰의 부담을 줄이기 위해 http://m.memegen.com/ud0t0y.jpg
좋은 코드인지 확인하기 - 아직 다뤄보지 못한 부분을 리뷰할 때
- 더 좋은 구조 / 구현에 대한 고민이 있을 때 더 많은 질문 + 의견 교환
최대한 자동화하기 정량적인 체크 자동화 리뷰 부담 감소 -
Lint : 코드 스타일 확인, 잠재적 오류 검사 - CI : 빌드 성공 / Test, Lint 통과 여부 확인
리뷰 중 코드 변경에 대처하기 This page was outdated… click
here to refresh… 리뷰 범위 기억하기
- 해당 feature와는 연관성이 적지만 중요한 문제 - 리뷰 시
발견한 문제가 다른 부분에도 있는 경우 별도 Issue / Task 분리 리뷰 범위 밖의 문제를 발견한 경우
여전히 고민 중인 부분
리뷰 분량 문제 - 양이 많은 경우 너무 오랜 시간이
걸림 - 프로젝트를 작게 분리 디자인 확인 + 리뷰 반복 - 디자인 확인 일정도 같이 변경되어야 !
어디까지 Comment를 남겨야 하는지 - 작성자의 의도 : ? -
작성자의 취향 : ? - 관련 History : ? 궁금하면 물어보기 https://i.stack.imgur.com/dLTF8.png
좋은 의사 표현 방식은 무엇인지 - 상대가 쉽게 이해할 수
있는 표현 - 글 vs 말 - 스크린샷 첨부 기능 등 이용 - 상대의 감정을 상하지 않게 하는 표현
감사합니다!