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
『Swift実践入門』制作の舞台裏
Search
inao
February 24, 2017
Technology
8
2.6k
『Swift実践入門』制作の舞台裏
「『Swift実践入門』刊行記念 Tech Talks」での発表資料です。
https://connpass.com/event/50546/
inao
February 24, 2017
Tweet
Share
More Decks by inao
See All by inao
WEB+DB PRESSと私
inao
50
14k
あなたの知らないコンピュータ書の世界
inao
0
84
人気書籍から読み解くWeb技術の最新動向
inao
0
67
GitHubで雑誌・書籍を作る
inao
0
68
レビューパターン
inao
0
62
Other Decks in Technology
See All in Technology
Oracle Database Backup Service:サービス概要のご紹介
oracle4engineer
PRO
0
4.1k
Agile in Automotive Industry, puzzles and lights.
hiranabe
2
580
Estrategias de escalabilidade para projetos web
jessilyneh
2
230
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
9.5k
20240912 JJUGナイトセミナー
mii1004
0
130
セキュリティ監視の内製化 効率とリスク
mixi_engineers
PRO
7
910
技術ブログや登壇資料を秒で作るコツ伝授します
minorun365
PRO
23
5.5k
四国クラウドお遍路 2024 in 高知 オープニング
yukataoka
0
190
どこよりも遅めなWinActor Ver.7.5.0 新機能紹介
tamai_63
0
100
エンジニア視点で見る、 組織で運用されるデザインシステムにするには
shunya078
1
300
CRTO/CRTL/OSEPの比較・勉強法とAV/EDRの検知実験
chayakonanaika
1
1.1k
2024年のナビゲーション・フォーカス対応:Composeでキーボード・ナビゲーションをサポートしよう
tahia910
0
100
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
157
15k
Building Better People: How to give real-time feedback that sticks.
wjessup
359
18k
A Tale of Four Properties
chriscoyier
155
22k
RailsConf 2023
tenderlove
28
800
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Building Flexible Design Systems
yeseniaperezcruz
325
37k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
24
600
Producing Creativity
orderedlist
PRO
340
39k
Why You Should Never Use an ORM
jnunemaker
PRO
53
8.9k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
The Cult of Friendly URLs
andyhume
76
6k
The Straight Up "How To Draw Better" Workshop
denniskardys
230
130k
Transcript
ʰ4XJGU࣮ફೖʱ ੍࡞ͷཪ Ҵඌঘಙ 8&# %#13&44ฤू෦ʢٕज़ධࣾʣ ʰ4XJGU࣮ફೖʱץߦه೦5FDI5BMLT
લఏ ͜͜ʹ͍Βͬ͠ΌΔΑ͏ͳษڧ৺ͳํʑɺ ࣥ͝චऀʹͳΓ͏Δํʑͩͱࢥ͍·͢ͷͰɺ ͦͷલఏͰ͓͍͖ͤͯͨͩ͞·͢
ͲΜͳࡶࢽɾॻ੶Λ ࡞͍ͬͯΔ͔ ʢࣗݾհʹ͔͑ͯʣ
8&# %#13&44 wץͷִ݄ࢽ w7PMຊൃചʂ wདྷि7PMͷاըձٞ
8&# %#13&44QMVT wץߦ։࢝ wطץ
γϦʔζۙץ ධൃചத ݄ ൃച༧ఆ
੍࡞ڥ
ओͳπʔϧ w(JU)VCͰݪߘཧ wNEJOBPͰݪߘςΩετͷม w"EPCF*O%FTJHOͰࢴ໘ϨΠΞτ wDPEFHFOTXJGUͰαϯϓϧίʔυநग़ ʢຊॻ༻ͷ৽ฌثʣ
(JU)VCͰݪߘཧ wஶऀͱฤूऀ͕͏ wه๏.BSLEPXO wͦΕͧΕͷ࡞ۀɺ8*1ʢ8PSL*O1SPHSFTTʣͳ 1VMM3FRVFTUΛग़ͯ͠ߦ͏ ૿ʢະఆʣʹ ͚ͯݱࡏਐߦத ͷ1VMM3FRVFTU
NEJOBPͰݪߘͷม wฤूऀ͕͏ w.BSLEPXOͰॻ͔ΕͨݪߘΛɺ8&# %#13&44 8&# %#13&44QMVT༻ͷ*O%FTJHOλά͖ςΩετ ʹม͢Δ w ݟग़͠ɺຊจɺऍͳͲͷจࣈؔΛࣗಈϨΠΞτ w
ը૾ɺදͳͲͷผΦϒδΣΫτͷखಈ w!OBPZB͞Μɺ!IPLBDDIB͞Μɺ!UZQFTUFS͞ΜΒ࡞ wࣗͰ໊͚ͨΘ͚Ͱͳ͍Ͱ͢
"EPCF*O%FTJHOͰ ࢴ໘ϨΠΞτ wϨΠΞτ୲ऀ͕͏ ͜ͷϖʔδʹਤද ͕ͳ͍ͷͰɺ*O%FTJHO λά͖ςΩετΛ ྲྀ͠ࠐΊ΄΅ϨΠ Ξτྃ
͜͜·Ͱͷπʔϧʹ͍ͭͯৄ͘͠ɺ ͷ(JU)VC,BJHJͰͷൃදࢿྉ ʮ(JU)VCͰࡶࢽɾॻ੶Λ࡞ΔʯΛ͝ཡ͍ͩ͘͞ IUUQXXXTMJEFTIBSFOFUJOBPHJUIVCLBJHJ
DPEFHFOTXJGUͰίʔυநग़ wஶऀͱฤूऀ͕͏ wຊॻ༻ʹஶऀ͞Μ͕৽։ൃ wίϚϯυҰൃͰɺݪߘςΩετ͔ΒίʔυΛൈ͖ ग़͠ɺ༻ͷ1MBZHSPVOEϑΝΠϧΛੜ͢Δ wશମͰͷίʔυย͕͋ΔͨΊɺखಈͩͱ ϛε͕ൃੜ͢Δ wಈ࡞֬ೝͰ͖ΔͨΊɺࢴ໘ͷ্࣭ʹ׆༂
͜Μͳײ͡Ͱɺষ͝ͱͷ1MBZHSPVOEϑΝΠϧΛɺ ίʔυย͝ͱʹϖʔδΛ͚ͯੜͯ͘͠ΕΔ
ץߦ·Ͱͷཪ
ϑΣʔζ wاը wࣥච w૬ޓϦϥΠτ wฤू w੍࡞
اըͷਐΊํ wίϯηϓτɺରಡऀɺରൣғͳͲΛݻΊΔ wৄࡉͳΞτϥΠϯʢ࣍ʣʹམͱ͠ࠐΉ ʮରಡऀͷ͏ͪҰ൪લఏࣝͷͳ͍ํ͕ɺ ɹΞτϥΠϯΛಡΉ͚ͩͰɺຊॻͷετʔϦʔΛ ɹཧղͰ͖ΔΑ͏ʹ͍ͯͩ͘͠͞ʯ
اըεέδϡʔϧ wɿΩοΫΦϑ wɿΞτϥΠϯܾఆ ϲ݄ؒ ݟग़͠ ʢץߦ࣌ʣ
ࣥචͷਐΊํ w!JTILBXB͞Μɺલͷجຊষ͔Βॻ͘ w!ZVTFJOJTIJZBNB͞Μɺޙͷ࣮ફষ͔Βॻ͘ ʮಡऀͷํ͕ιʔείʔυදͳͲΛಡΈඈͯ͠ ɹຊจ͚ͩΛಡΜͰɺେҙ͑ΔΑ͏ʹॻ͍ͯ ɹ͍ͩ͘͞ʯ
ࣥචεέδϡʔϧ wɿࣥචελʔτ wɿશষߘ ϲ݄ؒ ͓Ұਓ͋ͨΓ݄ষϖʔε
͔͜͜Β͕ຊ൪ ຊॻͰɺ͔͜͜ΒͷϒϥογϡΞοϓʹ ྗΛ͗·ͨ͠ ߘ ॳߍ ೖߘ
૬ޓϦϥΠτͷਐΊํ w୲ষΛަͯ͠૬ޓϦϥΠτΛߦ͏ w ڞஶʹΑΔσϝϦοτΛͳͨ͘͢Ί w આ໌ͷաෆɺ༻ޠͷෆ౷Ұɺจମͷ૬ҧ wࣥචऀຊਓ͡Όͳ͍ͱमਖ਼Ͱ͖ͳ͍ͷɺ*TTVFԽ͢Δ wϨϏϡϫʔͷํʹΑΔϨϏϡʔฒߦͯ͠ߦ͏ ʮଞਓͷจষΛมߋ͢Δͷؾ͕ͻ͚Δ͔ͱ ɹࢥ͍·͕͢ɺࣗ͝ͷจষΛਪᏏ͍ͯ͠Δͱ
ɹ͓ࢥ͍ʹͳͬͯϦϥΠτ͍ͯͩ͘͠͞ʯ
૬ޓϦϥΠτͷεέδϡʔϧ wɿ૬ޓϦϥΠτɺϨϏϡʔελʔτ wɿ૬ޓϦϥΠτɺϨϏϡʔྃ wɿϑΟʔυόοΫͷରԠྃ ϲ݄ؒ
ฤूͷਐΊํ w૬ޓϦϥΠτͱಉ༷ʹɺϦϥΠτߦ͏ wෳষʹؔΘΔϑΟʔυόοΫɺ*TTVFԽ͢Δ wͦͷষݻ༗ͷϑΟʔυόοΫɺݪߘதʹ˒Ͱ ׅͬͯίϝϯτ͢Δ w ˒˓˓ͳͲͷ˒ϥΠϒϥϦ͕͋Γ·͢ɻ w ˒ͳͥɺ☓☓ͳͷ͔͕ͪΐͬͱΘ͔Γ·ͤΜͰ ͨ͠˒
ฤूεέδϡʔϧ wɿฤू෦ߍਖ਼ελʔτ wɿฤू෦ߍਖ਼ྃ wɿฤू෦࠶ߍਖ਼ྃ w શମతʹେ͖͘มΘͬͨͷͰ͏Ұ w ߘ࣌ʹൺɺഒɺϖʔδ૿͍͑ͯͯযΔ wɿฤू෦࠶ʑߍਖ਼ྃ w
4XJGUରԠɺඇॏཁ߲ͷআͳͲͨͨ͠ΊࠩΛ֬ೝ ϲ݄ؒ ʢ4XJGU߹Θͤʹมߋͨͨ͠Ίͱɺح݄ ɹࡶࢽͷ࡞ۀΛ͍ͯ͠ΔͨΊΏͬ͘Γϖʔεʣ
੍࡞ͷਐΊํ w*O%FTJHOͰ࡞ͬͨຊ൪ήϥͷஶऀ͝ߍਖ਼݁Ռɺ ͜Ε·ͰͲ͓Γ1VMM3FRVFTUͰΒ͏ wͦΕΛϨΠΞτ୲ऀʹ͑ΔͷೖΕͰ w͜ͷஈ֊Ͱͷมߋ࡞ۀϛε͕ൃੜ͍͢͠ͷͰɺ ฤूஈ֊ͰۃྗΫΥϦςΟΛ্͓͛ͯ͘ ʮʯͱ͔ ࠩςΩετͷ൪߸
੍࡞εέδϡʔϧ wɿॳߍ wɿ೦ߍʢෳճʣ wɿҹॴೖߘʂ ϲ݄ؒ
ࣈͰΞϐʔϧ ͜ͷຊɺΑΓྑ͍ຊΛࢦͯ͠ ΈΜͳͰྗΛ߹ΘͤͯΛ͔͚ա͗ ͘Β͍͔͚ͯ࡞ͬͯ͠·͍·ͨ͠ͷͰɺ ʮ͕ΜͬͨΞϐʔϧʯΛ͍ͤͯͩ͘͞͞
(JU)VC wίϛοτɿ w1VMM3FRVFTUɿ w*TTVFɿ ߘ ॳߍ ೖߘ
ϛʔςΟϯάͱΧϯρϝ wϛʔςΟϯάɿճ w ͍͍݄ͩͨҰ͘Β͍ wΧϯρϝɿճ w ༧ఆΑΓΕ͕ੜͨ͡ͱ͖ʹߦ͏ w େஶऀ͞Μ͓ೋਓͰɻͨ·ʹશһͰ w
ʮ૭ͷͳ͍ձٞࣨͰͰ͔͢ʁʯ
ʮ*TTVFରԠɺ˒ରԠɺಈ࡞֬ೝͰ ͓ೋਓͦΕͧΕ͔͔࣌ؒΔ ͱ͍͏ݟੵΓͰ͢Ͷɻ ٳ࣌ؒɺฏຖ࣌ؒɺ ࡞ۀ͍ͯͩ͘͠͞ʯ ͳͱ͖ͷϗϫΠτϘʔυ
ߍਖ਼ wॴཁ࣌ؒɿ࣌ؒ w ࡞ۀ w ͋ͨΓ࣌ؒ wϑΟʔυόοΫʢ˒*TTVFʣɿ ʢલड़ͨ͠ฤूϑΣʔζͰͷͷͰ͢ɻߘஈ֊ॳߍ ɹҎޙͷͷɺܭଌͯ͠ͳ͍ͷͰؚ·Ε͍ͯ·ͤΜʣ
·ͱΊ
͓ೋਓ͔ͩΒͦ͜ɺ͏·͍ͬͨ͘ wࣄલʹ໘ࣝͳ͠ w ஶऀ͞ΜͲ͏͠ɺஶऀ͞Μͱฤूऀ wϲ݄ؒͱ͍͏ظϓϩδΣΫτ w͜͜·Ͱઆ໌͖ͯͨ͠Α͏ͳաෛՙ w͝స৬ɺ͓ࢠ༷ͷੜɺظग़ுɺւ֎సۈ ͳͷʹɺ͔ͤͬ͘ͷٳʹɺ૭ͷͳ͍ձٞࣨͰͷ ΧϯρϝதͰ͋ͬͯɺݥѱͳงғؾʹͳͬͨΓ ͨ͜͠ͱҰ͋Γ·ͤΜͰͨ͠☺
4XJGUͷఆ൪ॻΛࢦ͍ͨ͠ վగΛॏͶͳ͕ΒɺѪ͞ΕΔ4XJGUͷఆ൪ॻ ʹͳΔ͜ͱΛඪʹ͍ͯ͠·͢ɻ Ͱɺॳ൛͕ͪΌΜͱചΕͳ͍͜ͱʹɺվగ Ͱ͖·ͤΜɻ ͥͻɺ͝ߪಡ͍ͩ͘͞ɻ ͦͯ͠ྑ͍ຊͰͨ͠ΒɺपғͷํʹקΊͯͩ͘ ͍͞ʂ
͝੩ௌ͋Γ͕ͱ͏ ͍͟͝·ͨ͠