Slide 1

Slide 1 text

SvelteͰMacΞϓϦΛ࡞Γ·͠ΐ͏ʂ Jamie Birch δΣΠϛʔ ό ʔ ν ໊ බ

Slide 2

Slide 2 text

όοΫάϥ΢ϯυ MacΞϓϦΛ࡞ΔࣦΘΕٕͨज़ • ݱࡏͷMacΞϓϦ͸ຆͲElectronͰͰ͖͍ͯΔʢ΢ΣϒɾϕʔεͷʣԽ͚෺ • ωΠςΟϒɾΞϓϦͱҧͬͯɺ஗ͯ͘ɺେ͖ͯɺ໨͟ΘΓ

Slide 3

Slide 3 text

΋͏ΞϓϦΛωΠςΟϒʹ࡞Βͳ͍ͷ͔ʁ AppKitͰͰ͖͍ͯΔCotEditor

Slide 4

Slide 4 text

Ӭԕʹ ࠓͰ΋ωΠςΟϒɾΞϓϦΛʁ

Slide 5

Slide 5 text

ωΠςΟϒɾΞϓϦͷ࡞Γํ Xcode IDE Objective-C ݴޠ ʗ UIϑϨʔϜϫʔΫ AppKit UIKit SwiftUI iOS ❌ ✅ɹɹɹɹɹɹ macOS ✅ ɹ ✅ʢCatalystͰʣ ʗ ʗ

Slide 6

Slide 6 text

࡞ͬͯΈΑ͏͔…

Slide 7

Slide 7 text

໰୊ ωΠςΟϒɾΞϓϦΛ࡞Δͷ͸೉͍͠ • զʑ͸Svelte։ൃऀ • ωΠςΟϒͷੈք͕ා͍ • Ͳ͏͔SvelteͰMacΞϓϦΛ࡞ΕΔ͔ʁ

Slide 8

Slide 8 text

࡞ΕΔΑ

Slide 9

Slide 9 text

SvelteͰωΠςΟϒɾΞϓϦΛ࡞Δํ๏ IDE VS Code ݴޠ ΢ΣϒɾϙϦϑΟϧ JSDOM Ϩϯμϥ UIϑϨʔϜϫʔΫ AppKit ͷ΢Σϒɾίϯϙʔωϯτ ֦ுػೳʢruntimeʣ όΠϯσΟϯά ଋറ Objective-Cͷ Ϣχοτɾςετɾ ϑϨʔϜϫʔΫͱಉ͡ʂ Obj-C: [[NSStackView alloc] init] ↪ JS: NSStackView.alloc().init()

Slide 10

Slide 10 text

ͪΐͬͱ଴ͬͯ

Slide 11

Slide 11 text

఻तͯ͠΍Ζ͏

Slide 12

Slide 12 text

ࢥߟ࣮ݧ ϩάΠϯ ʢͳ͠ʣ

Slide 13

Slide 13 text

ࢥߟ࣮ݧ ʢAppKit͕࢖͑ͳ͍͔Β࣮ݱͰ͖ͳ͍ʣ

Slide 14

Slide 14 text

UIΛߏங͢Δํ๏ • HTMLElementΛΤΫεςϯυ͢Δω ΠςΟϒɾϏϡʔΛͱΔϕʔεɾΫϥ εΛ࡞Δ • αϒΫϥεͰͦͷϏϡʔΛॳظԽ͢Δ • ͦΕͧΕͷDOM APIΛΦʔόʔϥΠ υ͢Δ • νϟΠϧυʹΑͬͯɺωΠςΟϒUIΛ ߏங͢Δ • ࠷ޙ͸ɺΤϨϝϯτΛొ࿥͢Δ

Slide 15

Slide 15 text

ଐੑΛ࣮ݱ͢Δํ๏ • UIπϦʔΛߏங͢Δ্ʹɺଐੑ Λެ։Ͱ͖Δ • औಘϝιουͰϓϩΩγ͢Δ • ͜͏΍ͬͯSvelteͷHTMLxͰ࢖ ͑Δ

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

ׂѪͨ͜͠ͱ • CSS • Πϕϯτॲཧ • Viteͷઃఆ • NativeScriptͷ͜ͱ • ଞͷϨϯμϥͷՄೳɿ UIKitɺCanvasɺOpenGLͱ͔ • …શ෦དྷ೥தΦʔϓϯιʔε͢Δ༧ఆʂ

Slide 19

Slide 19 text

݁࿦ • Svelte͸DOM͑͋͞Ε͹ɺ׆ಈͰ͖Δ • ΧελϜɾΤϨϝϯτͰωΠςΟϒUIΛ࡞ΕΔ • ා͍APIΛSvelteʹมߋ͢Δͱ࢖͑΍͘͢ͳΔ

Slide 20

Slide 20 text

ϓϩϑΟʔϧ ౦ژ ͷ΢ΣϒɾΤϯδχΞ @LinguaBrowse @shirakaba ͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ Jamie Birch δΣΠϛʔ ό ʔ ν ໊ බ