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
370
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
Exadata Database Service on Dedicated Infrastructure セキュリティ、ネットワーク、および管理について
oracle4engineer
PRO
0
290
Amazon Bedrock AgentCoreのフロントエンドを探す旅 (Next.js編)
kmiya84377
1
160
AIに頼りすぎない新人育成術
cuebic9bic
3
320
GISエンジニアよ 現場に行け!
sudataka
1
130
AWS DDoS攻撃防御の最前線
ryutakondo
1
170
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
3
760
結局QUICで通信は速くなるの?
kota_yata
8
7.4k
マルチプロダクト×マルチテナントを支えるモジュラモノリスを中心としたアソビューのアーキテクチャ
disc99
1
630
Telemetry APIから学ぶGoogle Cloud ObservabilityとOpenTelemetryの現在 / getting-started-telemetry-api-with-google-cloud
k6s4i53rx
0
160
Intro to Software Startups: Spring 2025
arnabdotorg
0
270
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
390
Claude CodeでKiroの仕様駆動開発を実現させるには...
gotalab555
3
1.1k
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Visualization
eitanlees
146
16k
BBQ
matthewcrist
89
9.8k
We Have a Design System, Now What?
morganepeng
53
7.7k
Docker and Python
trallard
45
3.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Automating Front-end Workflow
addyosmani
1370
200k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Optimizing for Happiness
mojombo
379
70k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
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は神
ご清聴 ありがとうございました