Slide 1

Slide 1 text

USZ4XJGU5PLZPॳࢀՃใࠂ IJOBLLP !IJOBLLPHSBTIJ

Slide 2

Slide 2 text

ಛʹҹ৅ʹ࢒ͬͨൃද AIʹΑΔݴޠֶशͷมֵɿDuolingoͷAIνϡʔλʔΛਂ۷Δ Trans ormin Lan ua e Learnin with Generative AI try! Swift Tokyo Xingyu Wang March 22, 2024 A Deep Dive into Duolin o’s AI Tutor Feature - Roleplay IUUQTTQFBLFSEFDLDPNXBOHYJOHZVUSZTXJGUUPLZPEVPMJOHPNBYSPMFQMBZ %VPMJOHPͷΞϓϦ͕ͲͷΑ͏ʹ࡞ΒΕ͍ͯΔ͔ʁ "SDIJUFDUVSF.77. $IBUJOUFSGBDFͷ6*ͱ0QFO"*Λ׆༻ͨ͠ΞϓϦͷߏ଄

Slide 3

Slide 3 text

ಛʹҹ৅ʹ࢒ͬͨൃද ϚΫϩΛςετ͢Δ Testing Swift macros ‼" STEPHEN Hello! Macros are a wonderful new tool provided by Swift as of version 5.9 that can add all new super powers to your code. Most people here have probably mostly interacted with macros by using ones already provided by Apple, such as the @Observable macro and @Model macro from SwiftData. However, there will eventually come a time where you will finally want to write a macro yourself, but it can be quite difficult to get it right. Because macros are essentially little Swift programs that analyze existing Swift code in order to generate all new Swift code, it is easy to accidentally generate something wrong. So, today we will be discussing how one tests macros to ensure that they behave as expected over the many, many different ways they could be used. IUUQTHJUIVCDPNNCSBOEPOXQSFTFOUBUJPOTCMPCNBTUFSNBDSPTQSFTFOUBUJPOQEG 0CTFSWBUJPO J04ɺJ1BE04ɺNBD04ɺUW04ɺ ͓ΑͼXBUDI04Ҏ߱Ͱαϙʔτ 4XJGU6*ͷϏϡʔͰ؂ࢹՄೳͳσʔλϞσϧ΁ͷґଘؔ܎Λܗ੒͠ɺ σʔλ͕มߋ͞Εͨͱ͖ʹ6*Λߋ৽Ͱ͖Δɻ

Slide 4

Slide 4 text

εϙϯαʔϒʔεΤϯδχΞͱަྲྀ ͜Ε͔ΒΩϟονΞοϓ͍ͨ͠಺༰ w 4XJGU$PODVSSFODZ w 4XJGU6* w 0CTFSWBUJPO J04

Slide 5

Slide 5 text

7JTPO1SPମݧ தࠃ͔Βདྷ͍ͯͨ%FWFMPQFSʹ7JTJPO1SPΛମݧͤͯ͞΋Β͏ʂ

Slide 6

Slide 6 text

ϫʔΫγϣοϓ 4XJGUͰϨΰΛಈ͔ͦ͏ʂ 1BDLBHFTXJGUʹ௚઀ίʔυΛॻ͖ɺ 41.Λ௥Ճ͢Δํ๏Λڭ͑ͯ΋Βͬͨɻ

Slide 7

Slide 7 text

༷ʑͳاۀͰಇ͘ΤϯδχΞւ֎ͷΤϯδχΞͱަྲྀ ೔໨ɿ3*;"1͞ΜͷΠϕϯτʹࢀՃ ೔໨1BSUZʹࢀՃ ࣍ձʹࢀՃ Πϯυɺ୆࿷ɺதࠃ͔Βདྷ͍ͯͨΤϯδχΞͷํʑͱ͓࿩͠͠·ͨ͠ʂ ӳޠ࿩͢ͷಘҙ͡Όͳ͍͚ͲɺύογϣϯͰ࿩͔͚͠·ͨ͠ɻ

Slide 8

Slide 8 text

໊ࢗͱ͓౔࢈Ͱ஥ྑ͘ͳΖ͏࡞ઓ ੒ޭ ۭߓͰͩͪ͢άϛͱ࢛ࠃݶఆΈ͔Μͷ΀ͬͪΐ Λങͬͯ഑Γ·ͨ͠ʂ ಙౡͷಛ࢈෺ʹ͍ͭͯΈΜͳʹ஌ͬͯ΋Β͑·ͨ͠ʂ ख࡞Γ໊ࢗΛຕ࡞ͬͯɺ͓࿩ͨ͠͠ํʹ഑Γ·ͨ͠ʂ ؾ͍ͮͨΒຕ഑͍ͬͯͨʂ

Slide 9

Slide 9 text

USZ4XJGU5PLZPɹ࠷ߴʂʂʂ དྷ೥΋ઈରʹࢀՃ͢Δʂʂʂʂʂʂʂʂʂʂʂʂʂʂʂ

Slide 10

Slide 10 text

͜Ε͔Β࣮ݱ͍ͨ͜͠ͱ J04ΤϯδχΞʹͳΔʂ ΧϯϑΝϨϯεʹొஃ͍ͨ͠ʂ ݝ֎ͷΤϯδχΞΛݺΜͰɺಙౡͰΠϕϯτΛ։࠵͢Δʂ