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
AI時代に非連続な成長を実現するエンジニアリング戦略
sansantech
PRO
3
1.1k
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
160
AWSで推進するデータマネジメント
kawanago
0
1k
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
170
ヒューリスティック評価を用いたゲームQA実践事例
gree_tech
PRO
0
540
Snowflakeの生成AI機能を活用したデータ分析アプリの作成 〜Cortex AnalystとCortex Searchの活用とStreamlitアプリでの利用〜
nayuts
0
290
研究開発と製品開発、両利きのロボティクス
youtalk
1
470
複数サービスを支えるマルチテナント型Batch MLプラットフォーム
lycorptech_jp
PRO
0
180
「魔法少女まどか☆マギカ Magia Exedra」の必殺技演出を徹底解剖! -キャラクターの魅力を最大限にファンに届けるためのこだわり-
gree_tech
PRO
0
550
AWSで始める実践Dagster入門
kitagawaz
0
240
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
19
9k
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
3
930
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
Automating Front-end Workflow
addyosmani
1370
200k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Faster Mobile Websites
deanohume
309
31k
Producing Creativity
orderedlist
PRO
347
40k
The Pragmatic Product Professional
lauravandoore
36
6.8k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Making Projects Easy
brettharned
117
6.4k
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は神
ご清聴 ありがとうございました