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
Essential Refactoring for Scala with IDE
Search
Ryuhei Ishibashi
July 02, 2021
0
31
Essential Refactoring for Scala with IDE
Ryuhei Ishibashi
July 02, 2021
Tweet
Share
More Decks by Ryuhei Ishibashi
See All by Ryuhei Ishibashi
Scalaエンジニアなら知っておきたいJVMの話
rysh
0
67
QA素人がゼロからQA組織を立ち上げるno
rysh
0
150
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
280
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
140
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
96
Google's AI Overviews - The New Search
badams
0
910
Agile that works and the tools we love
rasmusluckow
331
21k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
160
Technical Leadership for Architectural Decision Making
baasie
1
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Designing for Performance
lara
610
70k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
140
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Transcript
Essential Refactoring for Scala with IDEA twitter: @cactaceae
突然ですが、
リファクタリングしてますか?
IDEの機能つかってますか?
体の一部のように IDEを使いこなして欲しい
思考を中断せずに リファクタリングして欲しい
息をするように リファクタリングして欲しい
ショートカットを覚えよう!
どんな機能がある?
ScalaIDE http://scala-ide.org/docs/2.0.x/features/refactoring.html
Intellij IDEA https://www.jetbrains.com/help/idea/2017.1/refactoring-source-c ode.html
リファクタリング四天王
• リネーム • メソッド抽出 • 変数抽出 • インライン化 リファクタリング四天王
4つの操作を組み合わせると 安全にロジックを変形できる
リネーム
リネーム IntelliJ IDEA Help : Rename Shift + F6
メソッド抽出
メソッド抽出
メソッド抽出 IntelliJ IDEA Help : Extract Method Option + Command
+ Method
変数抽出
変数抽出 IntelliJ IDEA Help : Extract Variable Option + Command
+ Variable
インライン化
インライン化 IntelliJ IDEA Help : Inline Option + Command +
N
ローカル変数のインライン化
メソッドのインライン化
引数つきメソッドのインライン化
Inline of functions with parameters is not supported!!!
インライン化
インライン化
TODO: comment と vote する https://youtrack.jetbrains.com/issue/SCL-208 4 https://youtrack.jetbrains.com/issue/SCL-895 1