Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Tama Ruby Kaigi 01
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yuki Kondo
July 04, 2019
Technology
2.8k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Tama Ruby Kaigi 01
Yuki Kondo
July 04, 2019
More Decks by Yuki Kondo
See All by Yuki Kondo
アジャイルで複数施策を同時並行で進めるTips
konchan
0
280
Other Decks in Technology
See All in Technology
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
230
JAWSUG TOHOKU 青森支部 「LoGoチャット」のAWS移行で 乗り越えたこと
taketakekaho
0
330
夫婦で子育てするための育児標準化
codmoninc
PRO
0
330
Conditional PED-ANOVA: Hyperparameter Importance in Hierarchical & Dynamic Search Spaces
pfn
PRO
0
130
Metadata - Section 1: HTML Basics
mohab1
0
120
ソフトウェア ファクトリー - 再現性のあるソフトウェアの工場づくり / Software factory
iktakahiro
6
4.9k
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.4k
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
260
エンタメ企業のM&Aを支えるデータ基盤 ― 統合から店舗のリアルタイム分析まで / Data Engineering Summit 2026
genda
0
170
Running Kotlin + Quarkus with Lambda
nealle
1
3.7k
フロントエンドカンファレンス関西2026 - 速すぎるUIに、待ち時間を
teamlab
PRO
0
130
宣言型部分更新は何を解決しどこへ向かうのか
shuta13
1
450
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
480
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
46k
How Software Deployment tools have changed in the past 20 years
geshan
2
35k
Mobile First: as difficult as doing things right
swwweet
225
10k
The agentic SEO stack - context over prompts
schlessera
0
970
Producing Creativity
orderedlist
PRO
348
41k
So, you think you're a good person
axbom
PRO
2
2.2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
Tell your own story through comics
letsgokoyo
1
1.1k
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Into the Great Unknown - MozCon
thekraken
41
2.8k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
プロになるためのレビューのススメ Tama Ruby会議01, 2019/07/06 @konchan_x
Yuki Kondo(@konchan_x) # 所属 DeNA ヘルスケア #
やってること サーバーサイドエンジニア Ruby, Rails Go, GAE, Firestore Vue.js, Nuxt.js, Flutter # 前職 SIer, SE, Dive into Code
Rubyistとしての成長... いつした?
レビューされた or した => 成長を実感
レビューされるメリット
ベテランのチェックでコード品質&スキルUP 01 User.all.each do |user|... > 全件取得でオンメモリになってまうで... User.find_each do
|user|...
見てもらうために読みやすいコードを意識する 02 # 命名規則 ユーザーのメールアドレスを取得したい NG: user.get_email OK: user.email
# メソッド定義のシグネチャ ユーザーIDに該当するユーザーを取得したい NG: def find_by_id(user) OK: def find_by_id(user_id)
レビューするメリット オススメ
プロの技を盗める 01 ・責務分割 ・delegate(移譲) ・||= (自己代入) ・DI(依存性注入) ・開発Contextごとの実装の違い class User
attr_reader :id delegate :name, to: :profile def initialize(id) @id = id end private def profile @profile ||= ::Profile.new(self) end end class Profile def initialize(user) @user = user end def name "#{@user.id}: konchan" end end
コードから始まるコミュニケーションが増える 02 あそこの アーキテクチャどう なってた? コンポーネントの認 証について教えて 欲しいっす 外部連携データの フォーマットどうなっ
てる? 二日酔いやばい...
プロジェクトの状況を把握する力がつく 03 A案件 B案件 C案件 日頃からタスクや仕様を確認する むりぽ...
・命名 ・デザインパターン ・責務 ・アーキテクチャ ・DDD ・パフォーマンス ・セキュリティ 自分ならどう実装するか比較する 04
レビューサイクルのメリット
適切な単位でPRを作成するようになる 01 変更ファイル50ファイル 差分+2000行, -500行 修行かな? 変更ファイル5ファイル 差分+100行,
-20行
相手に理解してもらうために資料を用意する 02 ・シーケンス図 ・業務フロー図 ・ER図 ・アーキテクチャ図 ・API仕様 ... PlantUML Swagger,
OpenAPI 便利なツールも覚える
レビュー...めっちゃええやん
個人 チーム プロダクト スキルアップ 開発力アップ 品質アップ
レビューおすすめしてきたが... 注意すること
過度に細かくレビューすることが 良い訳ではない ・相手のコンテキストを理解する ・開発状況を理解する ・許容できるレベルかどうか判断する
何を達成したいかが重要
価値をユーザーに届けること
用法・用量を守って適切なレビュー