Slide 1

Slide 1 text

@S_Shimotori ӳޠ ਆࢁ.swift

Slide 2

Slide 2 text

S_Shimotori ࢛ࠃॳ্཮ʂ

Slide 3

Slide 3 text

ࣗݾ঺հ • ౦ژ͸Ӭాொͷ΄͏͔Βདྷ·ͨ͠ • Πϯελʢ@S_ShimotoriʣͰ൧ςϩ • ϦϯάϑΟοτΞυϕϯνϟʔͷ߈ܸྗ͸10060͘Β͍͋Δͧ • Ϟϯϋϯ🏹 • DroidKaigiͷco organizer

Slide 4

Slide 4 text

ӳޠ

Slide 5

Slide 5 text

ΞδΣϯμ • υΩϡϝϯτΛ຋༁͢Δ • ಉ࣌௨༁ऀʹґཔ͢Δ

Slide 6

Slide 6 text

ΞδΣϯμ • υΩϡϝϯτΛ຋༁͢Δ • ಉ࣌௨༁ऀʹґཔ͢Δ

Slide 7

Slide 7 text

υΩϡϝϯτΛ຋༁͢Δ

Slide 8

Slide 8 text

No content

Slide 9

Slide 9 text

͜Ε͸Կ • ༗ࢤʹΑΔapple/swift-migration-guideͷ೔ຊޠ༁ • shiz3͞ΜͷϦϙδτϦʹ͋Δ • treastrain͞Μओ࠵ͷྠಡձ΋։࠵͞ΕͯΔ • ࣗ෼΋຋༁ͬͯ΍ͭΛ΍ͬͯΈΔ͔ʂ

Slide 10

Slide 10 text

௅ઓલʹ૝૾͍ͯͨ͠࡞ۀ • DeepLʹಥͬࠐΜͰ͓͚͹9ׂํղܾ͢ΔͩΖ • ٕज़༻ޠͷ༁͸άάͬͯग़͖ͯͨ΍ͭΛ࠾༻͢Ε͹͍͍ͩΖ

Slide 11

Slide 11 text

௅ઓલʹ૝૾͍ͯͨ͠࡞ۀ • DeepLʹಥͬࠐΜͰ͓͚͹9ׂํղܾ͢ΔͩΖɹʢϑϥάʣ • ٕज़༻ޠͷ༁͸άάͬͯग़͖ͯͨ΍ͭΛ࠾༻͢Ε͹͍͍ͩΖɹʢϑϥάʣ

Slide 12

Slide 12 text

ݱ࣮ • ͻͱͭͷষΛ༁͢ʹ͋ͨΓ272ίϝϯτͷ΍ΓऔΓ͕ൃੜ

Slide 13

Slide 13 text

ਓ͕ؒ༁͞ͳ͍ͱ͍͚ͳ͍΋ͷ • ࣙॻʹࡌͬͯͳ͍Α͏ͳදݱ • ৽͍͠ઐ໳༻ޠ • Swift΍🍎ܥOSʹݻ༗ͷ༻ޠ • ࣙॻʹࡌͬͯͳ͍Α͏ͳදݱ

Slide 14

Slide 14 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking isolation generic code using the protocol
 in a generic requirement such as a lock or dispatch queue the outer-most root module in a project

Slide 15

Slide 15 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking ׬શͳฒߦੑͷ֬ೝ isolation generic code using the protocol
 in a generic requirement such as a lock or dispatch queue the outer-most root module in a project

Slide 16

Slide 16 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking ׬શͳฒߦੑͷ֬ೝ isolation ִ཭ generic code using the protocol
 in a generic requirement such as a lock or dispatch queue the outer-most root module in a project

Slide 17

Slide 17 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking ׬શͳฒߦੑͷ֬ೝ isolation ִ཭ generic code using the protocol
 in a generic requirement ந৅Խ δΣωϦοΫ such as a lock or dispatch queue the outer-most root module in a project

Slide 18

Slide 18 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking ׬શͳฒߦੑͷ֬ೝ isolation ִ཭ generic code using the protocol
 in a generic requirement ந৅Խ δΣωϦοΫ such as a lock or dispatch queue σΟεύονΩϡʔ the outer-most root module in a project

Slide 19

Slide 19 text

͋ͳͨͳΒͳΜͯ༁͠·͔͢ ݪޠ ࠾༻͞Εͨ༁ complete concurrency checking ׬શͳฒߦੑͷ֬ೝ isolation ִ཭ generic code using the protocol
 in a generic requirement ந৅Խ δΣωϦοΫ such as a lock or dispatch queue σΟεύονΩϡʔ the outer-most root module in a project ֎ଆʹ͋ΔϧʔτͷϞδϡʔϧ

Slide 20

Slide 20 text

ඞཁͳ΋ͷ • Ջͳ࣌ؒ • ࠜؾɹ͋Δ͍͸ҰൃͰ௨͢຋༁ྗ • ઐ໳஌ࣝ • ӳ୯ޠ΍ӳจ๏ͷ஌ࣝɹˡάάͬͨΓDeepLʹಥͬࠐΊ͹ऴΘΓ

Slide 21

Slide 21 text

ͥͻҰॹʹ΍Γ·͠ΐ͏ʂ

Slide 22

Slide 22 text

ΞδΣϯμ • υΩϡϝϯτΛ຋༁͢Δ✅ • ಉ࣌௨༁ऀʹґཔ͢Δ

Slide 23

Slide 23 text

ಉ࣌௨༁ऀʹґཔ͢Δ

Slide 24

Slide 24 text

ಉ࣌௨༁ऀ • ಉ࣌௨༁ͷϓϩɺ͕ٕͩज़෼໺ͷϓϩͰ͸ͳ͍ • ಉ࣌௨༁ != ஞ࣍௨༁ • ಉ࣌௨༁ͷํ͕஌Βͳ͍ઐ໳༻ޠ͸ͨ͘͞Μ͋Δ

Slide 25

Slide 25 text

͋Δ೔ͷࡶஊ ಉ࣌௨༁ͷํ KubernetesͬͯͳΜͯൃԻ͢ΔΜͰ͔͢Ͷʁ ͚ɺ͚ʔ͸ͪ͑͢… S_Shimotori

Slide 26

Slide 26 text

͍ٕͭज़༻ޠΛ఻͑Δ͔ʁ • ಥવͷࡶஊͷͱ͖ • ಉ࣌௨༁෇͖ͷొஃΛ͢Δͱ͖ • try! Swift Tokyo΍DroidKaigiͷ͜ͱͩΑʂʂ̍̍

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

ొஃ࣌ͷεέδϡʔϧ Φʔϓχϯά ಉ࣌௨༁ଧͪ߹Θͤ ొஃ ऩ࿥ػࡐ४උʢʂʁʣ 7:30? 10:00 11:05

Slide 29

Slide 29 text

ొஃ࣌ͷεέδϡʔϧ Φʔϓχϯά ಉ࣌௨༁ଧͪ߹Θͤ Swift Punkొ৔ʹ͸ؒʹ߹ΘΜ͔ͬͨ😭 ొஃ ऩ࿥ػࡐ४උ 7:30? 10:00 11:05

Slide 30

Slide 30 text

ಉ࣌௨༁ଧͪ߹ΘͤͰߦͬͨ͜ͱ • 2िؒલ͘Β͍ʹεϥΠυఏग़ • શͯͷٕज़༻ޠͷ༁ΛόονϦ༻ҙͨ͠Αʂ • ӳޠεϥΠυ+೔ຊޠΧϯϖͷ૊Έ߹ΘͤͰ΋଍ΓΔ͓ͬͯ΋ͪ͞Μ͕ݴͬͯͨ • ʮthrow͸ʰ౤ࣺ͛ͯΔʱͬͯҙຯͰ͔͢ʁʯʮͦ͏དྷ͔ͨ…ʯ • ʮnon copyable͸ʰίϐʔͰ͖ͳ͍ʱͰ͔͢ʯʮͷΜ͜ͽʔ͋ͿΔʯ

Slide 31

Slide 31 text

य़ʹొஃͨ͠ͱ͖ͷൃදऀϊʔτ

Slide 32

Slide 32 text

Ͳ͜·Ͱॻ͘΂͖͔ʁ • ॏཁͳ༻ޠ͘Β͍͸ॻ͍ͨ΄͏͕਌੾ͩ͠ௌऺʹؒҧ͍ͳ͘఻ΘΔͱࢥ͏ • ࣄલʹεϥΠυΛఏग़͢Δ https://eow.alc.co.jp/search?q=throw https://e-words.jp/w/%E5%86%8D%E9%80%81%E5%88%B6%E5%BE%A1.html

Slide 33

Slide 33 text

༨ஊɿࢲʹͱͬͯσδϟϰͳಉ௨ଧͪ߹Θͤ ಉ࣌௨༁ͷํ throwͷ༁͸Ͳ͏͠·͔͢ʁ ౤͛Δ…ʁεϩʔ͢Δ…ʁ ͑͑ͬͱ…… Ͳͬͪʹ͠Α…͑͑……ʁʁ ͍ͯ͏͔طࢹײ͋Δͧ͜ͷల։ S_Shimotori

Slide 34

Slide 34 text

੠༏ͷऩ࿥ଧͪ߹Θͤ΋͜Μͳײͩͬͨ͡ʂ ऩ࿥ͷ؂ಜͷํ ʮ0෼ʯͷಡΈ͸Ͳ͏͠·͔͢ʁ ͥΖ…ʁΕ͍;Μ…ʁ Ͳ͏͠Α…… S_Shimotori

Slide 35

Slide 35 text

ڭ܇ • ͪΌΜͱࣄલʹεϥΠυΛఏग़͠Α͏Ͷ • ෳ਺ਓͰ༁ޠ΍ൃԻΛ֬ೝ͢Δͱ҆৺ͩΑ • ͲͬͪͰ΋େৎ෉ͱ͍͏࣌͸ࣗ෼ͷ޷ΈͰউखʹܾΊͨํ͕࿩͸ૣ͍Α