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
420
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
IntelliJのTemplateを使おう
IntelliJのテンプレート機能についてです
Suwashimizu
November 15, 2018
More Decks by Suwashimizu
See All by Suwashimizu
出来るCI
suwashimizu
0
490
Other Decks in Technology
See All in Technology
AIで楽になるはずが、なぜ疲れる?
kinopeee
0
150
「待ち時間」の消滅と「自我消耗」の加速:生成AI時代のエンジニアを救うメンタル・リソース管理
poropinai1966
0
390
AWS環境のセキュリティ不安を解消した企業事例 ~よくある課題と対策を一挙公開~
asanoharuki
0
260
コンポーネント名には何を含めるべきなのか? / what-should-be-included-in-component-names
airrnot1106
0
200
A Bag-of-Documents Model for Query Specificity
dtunkelang
0
180
もう一度考える SRE チームの作り方・育て方 / Rethinking SRE #1: Building and Growing SRE Teams
rrreeeyyy
3
360
BigQuery を検索ソースとした AI Agent の作り方って 〇〇 通りあんねん
satohjohn
0
150
それでも、技術なブログを書く理由 #kichijojipm / Why I Still Write Tech Blogs Even Now
shinkufencer
0
1.5k
AI研修(Day1)【MIXI 26新卒技術研修】
mixi_engineers
PRO
2
3.1k
現場で使える AWS DevOps Agent 活用ノウハウ - Release Management 機能の検証結果を添えて / AWS DevOps Agent Release Management and Know-How
kinunori
5
830
AIQAのナレッジ構築について
qatonchan
1
140
DevOps Agentで運用判断をチーム資産にする~Agent InstructionsとAgent Skillを継続的に育てる~
fujioka6789
0
180
Featured
See All Featured
Design in an AI World
tapps
1
270
We Are The Robots
honzajavorek
0
290
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
450
Technical Leadership for Architectural Decision Making
baasie
3
450
Navigating Team Friction
lara
192
16k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
420
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.9k
Bash Introduction
62gerente
615
220k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
sira's awesome portfolio website redesign presentation
elsirapls
0
310
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
230
Thoughts on Productivity
jonyablonski
76
5.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は神
ご清聴 ありがとうございました