Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Cake YOSHIDA
4,523 views
プロジェクトでRubocopを使って自動コードレビューしてみた話
渋谷.rb[:20150318] でLTしたい用
Technology
◦
Read more
5
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 64
2
/ 64
3
/ 64
4
/ 64
5
/ 64
6
/ 64
7
/ 64
8
/ 64
9
/ 64
10
/ 64
11
/ 64
12
/ 64
13
/ 64
14
/ 64
15
/ 64
16
/ 64
17
/ 64
18
/ 64
19
/ 64
20
/ 64
21
/ 64
22
/ 64
23
/ 64
24
/ 64
25
/ 64
26
/ 64
27
/ 64
28
/ 64
29
/ 64
30
/ 64
31
/ 64
32
/ 64
33
/ 64
34
/ 64
35
/ 64
36
/ 64
37
/ 64
38
/ 64
39
/ 64
40
/ 64
41
/ 64
42
/ 64
43
/ 64
44
/ 64
45
/ 64
46
/ 64
47
/ 64
48
/ 64
49
/ 64
50
/ 64
51
/ 64
52
/ 64
53
/ 64
54
/ 64
55
/ 64
56
/ 64
57
/ 64
58
/ 64
59
/ 64
60
/ 64
61
/ 64
62
/ 64
63
/ 64
64
/ 64
More Related Content
PDF
Comableを支える技術〜できるだけコーディングせずにズルして作るRailsアプリ〜
by
Cake YOSHIDA
PDF
PHPとか よくわかんない系WEBデザイナーでもShifterでいろいろできたよ!というお話。
by
Mariko Imamura
PDF
Cssアニメーションとその制御
by
Muyuu Fujita
PDF
もちょブログ解析入門
by
sudosan
PPTX
「自分でやる」という快感を追い続ける - あるプログラマーの成長戦略 -
by
Isao Takahashi
PPTX
CSSから国民を守る党ver2
by
akatsuki 1910
PPTX
C#とRubyをつなぐ
by
107steps
PDF
関数型Swift
by
S_Shimotori
Comableを支える技術〜できるだけコーディングせずにズルして作るRailsアプリ〜
by
Cake YOSHIDA
PHPとか よくわかんない系WEBデザイナーでもShifterでいろいろできたよ!というお話。
by
Mariko Imamura
Cssアニメーションとその制御
by
Muyuu Fujita
もちょブログ解析入門
by
sudosan
「自分でやる」という快感を追い続ける - あるプログラマーの成長戦略 -
by
Isao Takahashi
CSSから国民を守る党ver2
by
akatsuki 1910
C#とRubyをつなぐ
by
107steps
関数型Swift
by
S_Shimotori
What's hot
PDF
一歩踏み込むWordPress
by
正樹 平野
PDF
[コデアル株式会社] Ruby on rails 開発環境設定勉強会(株式会社シンクスマイル主催)
by
codeal
PDF
Photoshopで簡単!似顔絵イラスト
by
akahappa
PPTX
Kintone + ruby + ThinReports 連携
by
sy250
PDF
今日からはじめるリファクタリング
by
Junya Shimazu
PPTX
フロントエンドだけで完結! checkout.js でペイパろう
by
Kentaro Ohkouchi
PDF
MF GeeksNight pplogの話
by
Naoto Koshikawa
PPTX
てんとーる
by
Shinya Hosokawa
PPTX
Rails5β + herokuで遊んでみた
by
shota miyazaki
PPTX
KanJava 201804 Career 思い込みから逃れた先には、可能性がある
by
Koichi Sakata
PDF
Shifter Meetup West #0 女子力高めのキックオフ!
by
Atsushi Ando
PDF
Kyakusaki.rb
by
Yasuyuki Fujikawa
PDF
プログラマがWebデザインについて考えてみた
by
Eigoro Yamamura
PDF
Creators'night#15今井
by
Daisuke Imai
PDF
楽しいRails開発
by
俊博 三宅
PDF
田舎のWeb屋さん@俺聞け6
by
Yohei Tsutsumi
PPTX
東京クロノスで製作中のエディターの紹介
by
MaxNeetGames
PDF
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
by
Takeuchi Yuichi
PPTX
Excelでなんか(訳:Excelで報告書をつくります)
by
MATSUOKA Tomoki
PDF
Vi Boot Camp #1
by
Shinya Hayakawa
一歩踏み込むWordPress
by
正樹 平野
[コデアル株式会社] Ruby on rails 開発環境設定勉強会(株式会社シンクスマイル主催)
by
codeal
Photoshopで簡単!似顔絵イラスト
by
akahappa
Kintone + ruby + ThinReports 連携
by
sy250
今日からはじめるリファクタリング
by
Junya Shimazu
フロントエンドだけで完結! checkout.js でペイパろう
by
Kentaro Ohkouchi
MF GeeksNight pplogの話
by
Naoto Koshikawa
てんとーる
by
Shinya Hosokawa
Rails5β + herokuで遊んでみた
by
shota miyazaki
KanJava 201804 Career 思い込みから逃れた先には、可能性がある
by
Koichi Sakata
Shifter Meetup West #0 女子力高めのキックオフ!
by
Atsushi Ando
Kyakusaki.rb
by
Yasuyuki Fujikawa
プログラマがWebデザインについて考えてみた
by
Eigoro Yamamura
Creators'night#15今井
by
Daisuke Imai
楽しいRails開発
by
俊博 三宅
田舎のWeb屋さん@俺聞け6
by
Yohei Tsutsumi
東京クロノスで製作中のエディターの紹介
by
MaxNeetGames
Shinjuku.rb #29 ActiveJobでSQS使ったのとその永続化についての話
by
Takeuchi Yuichi
Excelでなんか(訳:Excelで報告書をつくります)
by
MATSUOKA Tomoki
Vi Boot Camp #1
by
Shinya Hayakawa
Viewers also liked
PDF
Rails composerでrails newを楽にしよう
by
健太 田上
PDF
少人数チームにおけるプロジェクト管理のベストプラクティス
by
Cake YOSHIDA
PDF
Best practices of project management for small teams
by
Cake YOSHIDA
PPTX
スタートアップにおける技術チームの作り方
by
Yuji Otani
PDF
SQIP2015講演資料「チケット駆動開発の運用パターン集~問題はチケットに分割して統治せよ」
by
akipii Oga
PPTX
フィーチャモデルの描き方
by
H Iseri
PDF
Redmineでチケット駆動開発を実践する~チケットに分割して統治せよ
by
akipii Oga
PDF
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
by
CROOZ, inc.
PDF
はじめる! Redmine (2015)
by
Go Maeda
PDF
ETWest2009講演資料「TestLinkでアジャイルにテストする」
by
akipii ogaoga
PDF
超簡単!!なTestLinkの使い方
by
Cake YOSHIDA
PDF
先端技術とメディア表現1 #FTMA15
by
Yoichi Ochiai
Rails composerでrails newを楽にしよう
by
健太 田上
少人数チームにおけるプロジェクト管理のベストプラクティス
by
Cake YOSHIDA
Best practices of project management for small teams
by
Cake YOSHIDA
スタートアップにおける技術チームの作り方
by
Yuji Otani
SQIP2015講演資料「チケット駆動開発の運用パターン集~問題はチケットに分割して統治せよ」
by
akipii Oga
フィーチャモデルの描き方
by
H Iseri
Redmineでチケット駆動開発を実践する~チケットに分割して統治せよ
by
akipii Oga
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
by
CROOZ, inc.
はじめる! Redmine (2015)
by
Go Maeda
ETWest2009講演資料「TestLinkでアジャイルにテストする」
by
akipii ogaoga
超簡単!!なTestLinkの使い方
by
Cake YOSHIDA
先端技術とメディア表現1 #FTMA15
by
Yoichi Ochiai
Similar to プロジェクトでRubocopを使って自動コードレビューしてみた話
PDF
Rubocopとの付き合い方
by
Yasutomo Uemori
PDF
ソースコードの品質向上のための効果的で効率的なコードレビュー
by
Moriharu Ohzu
PDF
grep ruby
by
Kouhei Yamamoto
PDF
コードの複雑さを測ろう
by
Shinya_131
PDF
Phpのレガシーコードをrubyで焼き変えてみた
by
Akira Kaneda
PDF
本番環境で使える実行コード記録機能
by
mametter
PDF
Ruby 2.5
by
Masahiro Tomita
PDF
大江戸Ruby会議
by
Yuki Akamatsu
PDF
わかるコードを書くために For writing clean code
by
Eyes, JAPAN
PDF
RuboCopとXPコーディング規約
by
Koichi ITO
PDF
魂のコーディング
by
Daisuke Tasaki
PPTX
「CodeYourRuby」で オープンなコードレビューを体験しよう
by
中條 剛
PDF
【デブサミ福岡B5】コードレビューの進め方~全員で行う品質の維持~
by
Developers Summit
PPT
Start!! Ruby
by
mitim
PDF
Cumiki - エンジニアのための、ちょっといい感じのドキュメント作成ツール
by
Ryo Suzuki
PDF
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
by
Koichi Sasada
PPTX
低レイヤから見たrubyプログラミング
by
よしだ あつし
PDF
名古屋Ruby会議02 LT:Ruby中級への道
by
Shigeru UCHIYAMA
PPTX
今年はRubyを勉強するぞ!という方へCodeYourRubyリポジトリのご紹介
by
中條 剛
Rubocopとの付き合い方
by
Yasutomo Uemori
ソースコードの品質向上のための効果的で効率的なコードレビュー
by
Moriharu Ohzu
grep ruby
by
Kouhei Yamamoto
コードの複雑さを測ろう
by
Shinya_131
Phpのレガシーコードをrubyで焼き変えてみた
by
Akira Kaneda
本番環境で使える実行コード記録機能
by
mametter
Ruby 2.5
by
Masahiro Tomita
大江戸Ruby会議
by
Yuki Akamatsu
わかるコードを書くために For writing clean code
by
Eyes, JAPAN
RuboCopとXPコーディング規約
by
Koichi ITO
魂のコーディング
by
Daisuke Tasaki
「CodeYourRuby」で オープンなコードレビューを体験しよう
by
中條 剛
【デブサミ福岡B5】コードレビューの進め方~全員で行う品質の維持~
by
Developers Summit
Start!! Ruby
by
mitim
Cumiki - エンジニアのための、ちょっといい感じのドキュメント作成ツール
by
Ryo Suzuki
Cookpad 17 day Tech internship 2017 言語処理系入門 Rubyをコンパイルしよう
by
Koichi Sasada
低レイヤから見たrubyプログラミング
by
よしだ あつし
名古屋Ruby会議02 LT:Ruby中級への道
by
Shigeru UCHIYAMA
今年はRubyを勉強するぞ!という方へCodeYourRubyリポジトリのご紹介
by
中條 剛
プロジェクトでRubocopを使って自動コードレビューしてみた話
1.
プロジェクトで Rubocopを使って 自動コードレビュー してみた話 Appirits 吉田啓紀
2.
🌟自己紹介
3.
【会社】アピリッツ • ゲーム系 • 式姫シリーズ •
アルフヘイムの魔物使い • 受託系 • EC開発 • ASP提供 ! 【個人】@cyber_yoshida • バンドとか • ウェブサービス作り • 書籍管理サービスつくってます ! 【このスライド】 • Azusa Colors 使いました • http://memo.sanographix.net/post/113681262780
4.
こういう問題 ありませんか?
5.
コードの書き方が みんなバラバラ!
6.
統一したい!
7.
コーディングルール 作ろうか・・?
8.
でも面倒くさい
9.
そこで Rubocop
10.
Rubocop って何ができる?
11.
「メソッド長いよ」
12.
「メソッドが複雑だよ」
13.
「メソッド名良くないよ」
14.
「空白/改行余計だよ」
15.
「こう書けるよ」
16.
などなど
17.
これ、 コーディングルールに ならない?
18.
やってみた!
19.
Rubocop を使う ∼プロジェクト編∼
20.
こんな プロジェクト です
21.
ECシステムの開発
22.
3∼5ヶ月くらい
23.
5∼7人くらい
24.
• 新卒 • 派遣の方 •
Ruby1.9に慣れてる人 • Rails2, 3に慣れてる人 など
25.
こんな 環境です
26.
• Ruby2.1, Rails4.1 •
Rubocop 0.24 (最新は 0.29) • Redmine • GitLab • Jenkins
27.
メモ ! MethodLength Max: 30 ! ClassLength: Max: 300
28.
かんたんな 運用フロー
29.
コードを書く
30.
GitLabで マージリクエスト
31.
テストが走る
32.
テストが走る Rubocop も走る
33.
OK ならマージ可能
34.
詳細は 別スライドに!
35.
! ! ! ! ! ! ! ! ! ! ! ! ! ! ! http://www.slideshare.net/cakeyoshida/ ss-31147447
36.
わかったこと
37.
☀️ 良い点
38.
キレイに書こう、 と意識できる
39.
コードを統一できる
40.
後から リファクタリング しやすい
41.
新しい構文を知る 良い機会
42.
for example: ! { :foo
=> "bar" } => { foo: 'bar' } ! [:hoge, :piyo] => %i( hoge piyo ) ! raise => fail ! before_filter => before_action
43.
⛅️ 課題
44.
メンバーとの衝突
45.
Aさん 「Rubocopに合わせる とかえって汚くなる!」 「実装遅れる!」
46.
無意味な リファクタリング
47.
Bさん 「メソッドが長い? わかりました 分割します」
48.
Before def set_customer @customer =
Customer.new @customer.first_name = params[:customer][:first_name] @customer.last_name = params[:customer][:last_name] @customer.hoge = params[:customer][:hoge] ... ...100行ほど... ... @customer.valid? end ※注意:この例は、例として分かりやすくするために誇張したものです
49.
After def set_customer @customer =
Customer.new set_customer1 set_customer2 set_customer3 @customer.valid? end ! def set_customer1 @customer.first_name = params[:customer][:first_name] @customer.last_name = params[:customer][:last_name] @customer.hoge = params[:customer][:hoge] ... end ! def set_customer2 ... end ! ! def set_customer3 ... end ※注意:この例は、例として分かりやすくするために誇張したものです
50.
Rubocopに怒られない ね、キレイでしょ?
51.
どうしてこうなった。。。
52.
Rubocopは神ではなく あくまでツール
53.
まとめ
54.
Rubocop、 導入の価値あり
55.
ただし
56.
メンバーの理解と 協力は必須
57.
「やらされる」 では効果がない!
58.
おまけ
59.
Rubocop、 個人でも使ってます
60.
が
61.
初期設定のままだと
62.
リファクタリング 強制ギプス感すごいです
63.
おすすめ!
64.
おわり
Download