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
iOSのClean Architecture テンプレ自動生成を支える技術 / generat...
Search
shunsuke sato
October 16, 2018
Technology
0
300
iOSのClean Architecture テンプレ自動生成を支える技術 / generating CA's templates
shunsuke sato
October 16, 2018
Tweet
Share
More Decks by shunsuke sato
See All by shunsuke sato
要約 "Add Live Text interaction to your app"
ushisantoasobu
1
1.2k
ANDPAD iOS開発の生態系と課題 - 最近取り組み始めた「マルチモジュール化」について
ushisantoasobu
1
820
Summary of Diagnose unreliable code with test repetitions
ushisantoasobu
1
1.1k
実践!「みてね」における自動生成活用例
ushisantoasobu
5
6.5k
5 Tips when test fails randomly
ushisantoasobu
2
3.7k
Better Way for Test Data Generation??
ushisantoasobu
1
2.8k
iOS/Androidのサブスクリプション実装における違いをざっと振り返る
ushisantoasobu
2
1.7k
24時間でMacアプリを作ってスベってきた話
ushisantoasobu
0
2.3k
Redirectable in App?
ushisantoasobu
2
1k
Other Decks in Technology
See All in Technology
GitHub Issue Templates + Coding Agentで簡単みんなでIaC/Easy IaC for Everyone with GitHub Issue Templates + Coding Agent
aeonpeople
1
230
量子クラウドサービスの裏側 〜Deep Dive into OQTOPUS〜
oqtopus
0
120
AIと新時代を切り拓く。これからのSREとメルカリIBISの挑戦
0gm
0
970
GitLab Duo Agent Platform × AGENTS.md で実現するSpec-Driven Development / GitLab Duo Agent Platform × AGENTS.md
n11sh1
0
140
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
17k
What happened to RubyGems and what can we learn?
mikemcquaid
0
300
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
240
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
140
仕様書駆動AI開発の実践: Issue→Skill→PRテンプレで 再現性を作る
knishioka
2
660
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.5k
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
200
Featured
See All Featured
30 Presentation Tips
portentint
PRO
1
220
Skip the Path - Find Your Career Trail
mkilby
0
56
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
62
So, you think you're a good person
axbom
PRO
2
1.9k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Six Lessons from altMBA
skipperchong
29
4.1k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
Transcript
Otemachi.swift #02 2018/10/16 J04ͷ$MFBO"SDIJUFDUVSF ςϯϓϨࣗಈੜΛࢧ͑Δٕज़
ࣗݾհ w ࠤ౻ढ़ี !VTIJTBOUPBTPCV w ՈΞϧόϜΞϓϦʮΈͯͶʯΛ։ൃ w J04"OESPJE3BJMT։ൃମ੍ w
IUUQTTQFBLFSEFDLDPNVTIJTBOUPBTPCVNJUFOFTFYDJUJOHEFWFMPQNFOU w ίʔώʔ͕͖Ͱ͢☕☕☕ w ίʔώʔநग़ϨγϐͷهΞϓϦͱ͔࡞ͬͯ·͢ J04 "OESPJE
࠾༻ IUUQTNJUFOFVTSFDSVJU
ࠓ͢༰ͱͦͷܦҢ
ࠓ͢༰ͱͦͷܦҢ ΈͯͶͷJ04։ൃͰલ͘Β͍͔Β $MFBO"SDIJUFDUVSFΛಋೖ ʢ৽نը໘࡞࣌ͳͲ͔Βঃʑʹʣ
ࣗࣾNFFUVQͰ ΞʔΩςΫνϟ·ΘΓͷൃදʹରͯ͠ Γ߹͍ͷΤϯδχΞ͔ΒπΠʔτ ࠓ͢༰ͱͦͷܦҢ
ࠓ͢༰ͱͦͷܦҢ
ࠓ͢༰ͱͦͷܦҢ ͬͯ͜͏ʂʂ
ࠓ͢༰ͱͦͷܦҢ ࡞ͬͨͷ
ࠓ͢༰ͱͦͷܦҢ ࡞ͬͨͷ
ࠓ͢༰ͱͦͷܦҢ ࡞ͬͨͷ
Կ͕خ͍͠ͷ͔ʁ
Կ͕خ͍͠ͷ͔ʁ ࡞ۀίετΛݮΒ͢ ࢥߟίετΛݮΒ͢ J04ઐଐΤϯδχΞ͍ͳ͍ͱ͍͏νʔϜࣄ ͦͦ$MFBO"SDIJUFDVUVSFͷϨΠϠͷΓํ ਓͦΕͧΕ
ςϯϓϨࣗಈੜΛࢧ͑Δٕज़
ςϯϓϨࣗಈੜΛࢧ͑Δٕज़ YDPEFQSPKΤσΟλ ςϯϓϨʔτϑΝΠϧੜ
- CocoaPods/Xcodeproj (1) - Xcode - File Templates (2) -
krzysztofzablocki/Sourcery (2) - bannzai/Kuri (1,2) - rambler-digital-solutions/Generamba (?) ࢼͨ͠ͷPSࢼͦ͏ͱࢥͬͨͷ YDPEFQSPKΤσΟλ ςϯϓϨʔτϑΝΠϧੜ
CocoaPods/Xcodeproj IUUQTHJUIVCDPN$PDPB1PET9DPEFQSPK
CocoaPods/Xcodeproj IUUQTHJUIVCDPN$PDPB1PET9DPEFQSPK w $PDPB1PETͰΘΕ͍ͯΔYDPEFQSPKΤσΟλ w ͍ͩͿރΕ͍ͯΔͣʢ࠷ॳͷίϛοτʣ
l4PNFzͱ͍͏৽نϓϩδΣΫτΛ࡞ͯ͠ CocoaPods/Xcodeproj ͍ํ
CocoaPods/Xcodeproj ͍ํ ͜ΜͳεΫϦϓτΛॻ͍࣮ͯߦͯ͠ΈΔͱɺɺɺ
CocoaPods/Xcodeproj ͍ํ ϑΝΠϧ͕Ճ͞Ε͍ͯΔʂʂ
CocoaPods/Xcodeproj UVJTUYDPEFQSPK 4XJGU ޙड़͢Δ4PVSDFSZͰΘΕ͍ͯΔ ྨࣅ
Xcode - File Templates
Xcode - File Templates 9$PEFͰ৽نϑΝΠϧੜ࣌ʹɺࣗલͰ༻ҙͨ͠ ςϯϓϨʔτΛར༻͢Δ͜ͱ͕Ͱ͖Δػೳ 3FGIUUQTRJJUBDPNTIVJUFNTEBFGEGFC
ίϚϯυ͔Βੜ͢Δͱ͔Ͱͳ͍
Xcode - File Templates ࣗͰ༻ҙͨ͠ςϯϓϨʔτΛબ͢Δ
Xcode - File Templates ςϯϓϨʔτ͜Μͳײ͡
Xcode - File Templates ϑΝΠϧ͕Ճ͞Ε͍ͯΔʂʂ
krzysztofzablocki/Sourcery IUUQTHJUIVCDPNLS[ZT[UPG[BCMPDLJ4PVSDFSZ
krzysztofzablocki/Sourcery ʢʮ4XJGUͷςϯϓϨʔτΛੜͯ͘͠ΕΔͳʹ͔ʯ ͱ͍͏ೝࣝͰௐͯΈ͚ͨͲɺࠓճͷతʹ߹க͠ͳ͍ ͱ͍͏݁ʹࢸͬͨɻ͚Ͳ͔ͤͬ͘ͳͷͰʣ
krzysztofzablocki/Sourcery ʢࣗͳΓͷݴ༿Ͱ·ͱΊΔͱʣ ϘΠϥʔϓϨʔτͳίʔυΛɺࢦఆͨ͠ϓϩτίϧΛ τϦΨʔʹɺςϯϓϨʔτΛݩʹࣗಈੜ͢Δͷ 3&"%.&͚ͩͩͱΘ͔Βͳ͔ͬͨͷͰҎԼΛࢀߟʹ ͨ͠ IUUQTXXXDBTFZMJTTDPNUIFNBHJDPGTPVSDFSZ
IUUQTHJUIVCDPNLS[ZT[UPG[BCMPDLJ4PVSDFSZ
krzysztofzablocki/Sourcery جຊతͳ͍ํʢͷͣʣ l"VUP&RVBUBCMFzͱ͍͏ϚʔΧ༻ʢҹʣϓϩτίϧΛ࡞ͯ͠ɺBQQMZ͢Δ
krzysztofzablocki/Sourcery جຊతͳ͍ํʢͷͣʣ ςϯϓϨʔτʹz4UFODJMͱ͍͏ͷΛ͏
krzysztofzablocki/Sourcery جຊతͳ͍ํʢͷͣʣ Ϗϧυຖʹੜ͞ΕΔΑ͏ʹઃఆ
krzysztofzablocki/Sourcery جຊతͳ͍ํʢͷͣʣ Ϗϧυ͢Δͱ͜ͷΑ͏ͳϑΝΠϧ͕ੜ͞ΕΔ☺
krzysztofzablocki/Sourcery ྑͦ͞͏ʹࢥ͑ͨࣄྫ MFUͳTUSVDUͷQSPQFSUZʹΛηοτ͢Δ IUUQTRJJUBDPNNBSUZTV[VLJJUFNTEBGFEBDEG Πϕϯτϩά IUUQTTQFBLFSEFDLDPNTHSLTNUJNQSPWFFWFOUMPHVTJOH
TPVSDFSZJOJPT
bannzai/Kuri IUUQTHJUIVCDPNCBOO[BJ,VSJ
bannzai/Kuri $MFBO"SDIJUFDUVSFςϯϓϨϑΝΠϧࣗಈੜπʔϧ ʢࠓճͷతʹશʹҰக͢Δͷʣ ։ൃऀຊਓͷํ YDPEFQSPKΤσΟλࣗલ IUUQTHJUIVCDPNCBOO[BJ,VSJ
bannzai/Kuri جຊతͳ͍ํ ઃఆϑΝΠϧʢz,VSJZNMzʣʹɺੜ͍ͨ͠ϑΝΠϧʹ߹ΘͤͯίϯϙʔωϯτใΛهड़͢Δ
bannzai/Kuri جຊతͳ͍ํ ͦΕͧΕͷίϯϙʔωϯτͷςϯϓϨʔτϑΝΠϧΛ࡞ͬͯஔ͢Δ
bannzai/Kuri جຊతͳ͍ํ lLVSJHFOFSBUF'PPUCBMMzͰ࣮ߦ͢Δͱɺɺɺ៉ྷʹϑΝΠϧ͕ੜ͞Ε͍ͯΔ
bannzai/Kuri جຊతͳ͍ํ lLVSJHFOFSBUF'PPUCBMMzͰ࣮ߦ͢Δͱɺɺɺ៉ྷʹϑΝΠϧ͕ੜ͞Ε͍ͯΔ
rambler-digital-solutions/Generamba IUUQTHJUIVCDPNTUSPOHTFMG(FOFSBNCB
rambler-digital-solutions/Generamba ࠓճεΩοϓ ηοτΞοϓͰ͍᪴ͨ ͋·Γ։ൃ͕׆ൃͰͳ͍ʁ ࠷ۙͬͨͷ IUUQTHJUIVCDPNTUSPOHTFMG(FOFSBNCB
݁ՌɺࣗͲ͏͔ͨ͠ʁ
݁ՌɺࣗͲ͏͔ͨ͠ʁ $PDPB1PET9DPEFQSPK 3VCZ ςϯϓϨੜࣗલͰΰϦΰϦ
݁ՌɺࣗͲ͏͔ͨ͠ʁཧ༝ ࣮ϓϩδΣΫτྺ࢙తܦҢͳͲͷཧ༝͔ΒҎ֎ͱෳࡶ ੜ͍ͨ͠ϑΝΠϧ໊ͱσΟϨΫτϦ໊͕ҟͳͬͨΓ ಉҰσΟϨΫτϦʹෳͷϑΝΠϧΛஔ͖͔ͨͬͨΓ νʔϜΈΜͳ͕3VCZॻ͚Δͱ͍͏ͷ͋Δ
ӡ༻ͯ͠Έͯผͷํ๏ʹ͢Δ͔ɻͩ͜ΘΓͳ͠
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠