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
340
IntelliJのTemplateを使おう
IntelliJのテンプレート機能についてです
Suwashimizu
November 15, 2018
Tweet
Share
More Decks by Suwashimizu
See All by Suwashimizu
出来るCI
suwashimizu
0
440
Other Decks in Technology
See All in Technology
The 5 Obstacles to High-Performing Teams
mdalmijn
0
270
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
1
240
自動テストの世界に、この5年間で起きたこと
autifyhq
10
7.1k
技術的負債解消の取り組みと専門チームのお話 #技術的負債_Findy
bengo4com
1
1.2k
アジャイル開発とスクラム
araihara
0
160
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
500
Ask! NIKKEI RAG検索技術の深層
hotchpotch
13
2.8k
[2025-02-07]生成AIで変える問い合わせの未来 〜チームグローバル化の香りを添えて〜
tosite
1
290
WAF に頼りすぎない AWS WAF 運用術 meguro sec #1
izzii
0
460
データの品質が低いと何が困るのか
kzykmyzw
6
1k
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
6
1.4k
AndroidデバイスにFTPサーバを建立する
e10dokup
0
240
Featured
See All Featured
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.3k
Become a Pro
speakerdeck
PRO
26
5.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Git: the NoSQL Database
bkeepers
PRO
427
64k
How to train your dragon (web standard)
notwaldorf
90
5.8k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.4k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Building Your Own Lightsaber
phodgson
104
6.2k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
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は神
ご清聴 ありがとうございました