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
IntelliJのTemplateを使おう
Search
Suwashimizu
November 15, 2018
Technology
2
380
IntelliJのTemplateを使おう
IntelliJのテンプレート機能についてです
Suwashimizu
November 15, 2018
Tweet
Share
More Decks by Suwashimizu
See All by Suwashimizu
出来るCI
suwashimizu
0
460
Other Decks in Technology
See All in Technology
KAGのLT会 #8 - 東京リージョンでGAしたAmazon Q in QuickSightを使って、報告用の資料を作ってみた
0air
0
200
「AI駆動PO」を考えてみる - 作る速さから価値のスループットへ:検査・適応で未来を開発 / AI-driven product owner. scrummat2025
yosuke_nagai
4
550
全てGoで作るP2P対戦ゲーム入門
ponyo877
3
1.3k
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
290
OCI Network Firewall 概要
oracle4engineer
PRO
1
7.8k
stupid jj tricks
indirect
0
7.9k
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
150
インサイト情報からどこまで自動化できるか試してみた
takas0522
0
140
神回のメカニズムと再現方法/Mechanisms and Playbook for Kamikai scrumat2025
moriyuya
4
450
バイブコーディングと継続的デプロイメント
nwiizo
2
400
SREとソフトウェア開発者の合同チームはどのようにS3のコストを削減したか?
muziyoshiz
1
100
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
Featured
See All Featured
KATA
mclloyd
32
15k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Documentation Writing (for coders)
carmenintech
75
5k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
How to Think Like a Performance Engineer
csswizardry
27
2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Facilitating Awesome Meetings
lara
56
6.6k
Optimizing for Happiness
mojombo
379
70k
Faster Mobile Websites
deanohume
310
31k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.6k
Transcript
IntelliJのTemplateを使おう 俺の話を聞け!!LT⼤会 #12 suwashimizu
kanegae Androidエンジニア ととお絵かきおじさん
None
IntelliJ JetBrains社が開発したIDE AndroidStudioはIntelliJをベースに開発されている
IntelliJのテンプレートとは? • 複数のファイルを⾃動⽣成してくれる便利機能 • カスタムすることでボイラープレートを⾃動⽣成し てくれる • railsのscaffoldのようなイメージ
メリット • CleanArchitectureを例にとって解説すると・・ • ファイルが多いので新規作成が⼿間→⼀括⽣成 • 命名の統⼀が図れる • importを予め記述することが出来る
None
None
Ϟδϡʔϧ໊Λೖྗ
৽نՃ͞ΕͨϑΝΠϧ
使い⽅ Macの場合 以下に新規ディレクトリを作成 /Applications/Android Studio3.0.0.app/Contents/ plugins/android/lib/templates/activities/xxx
使い⽅ ファイル構成
使い⽅ 設定ファイル
使い⽅ Οβʔυը໘ͷ ઃఆΛهड़͢Δ
ೖྗ͕ม DMBTT/BNF ͱͯ͠ ఆٛ͞ΕΔ
設定編 ը໘Λߏ͢Δ MBZPVUYNMϑΝΠϧ ͷ ೖྗݩͱ ग़ྗઌͷઃఆ
設定編 ςϯϓϨʔτͰ͏ มఆٛΛߦ͏ ಉ໊͡લมఆٛͯ͠ UZQPΛ͝͏
変数定義 • globals.xml.ftlに変数を定義する • idが変数名 • valueが値 • 使⽤時は${変数名} •
${className}はウィザードで⼊⼒した値
変数が使える 複数出るものは変数として定義しよう
設定編 ιʔείʔυͷೖྗݩͱ ग़ྗઌͷઃఆ
ソース編 KBWBLPUMJOͷιʔε ίʔυΛهड़͢Ε ల։͞ΕΔ
͜͜ʂ
globals.xml.ftlに変数を定義する *1SFTFOUFS/BNFͱ 1SFTFOUFS/BNFΛఆٛ ͦΕͧΕ *4JHO6Q1SFTFOUFS 4JHO6Q1SFTFOUFSͱͯ͠ ೖ͞ΕΔ
記述⽅法
記述⽅法 IPresenter.kt.ftl SignUpPresenter.kt
記述⽅法 Presenter.kt.ftl SignUpPresenter.kt
Presenterのベースが 出来た(๑•̀ㅂ•́)و✧
課題 エラーを吐かない / テストし⾟い →トライアル・アンド・エラー →git管理しよう →⼤量のファイルが出来るのでgit add . &
git reset --hard HEAD が使える 構成が変わったりするのでメンテは必須 →がんばるぞい
まとめ • プロジェクトが⾛り出して構成が固まってから作成 するのが吉 • デバッグが⾟いのである程度の時間は覚悟すべし • gitは神
ご清聴 ありがとうございました