Slide 1

Slide 1 text

ม਺ͱఆ਺ͱܕ MOBILE PROGRAMMING OCT, 1ST

Slide 2

Slide 2 text

1. ม਺

Slide 3

Slide 3 text

ม਺(VARIABLE)ͱ͸ ▸ จࣈ΍੔਺ͳͲϓϩάϥϜதͰѻ͏σʔλΛೖΕΔϞϊ ▸ Ұ౓ఆٛͨ͠ม਺ʹޙ͔Β৽͍͠஋ΛೖΕΔ͜ͱ͕Ͱ͖Δ ▸ ม਺ʹ৽͘͠஋ΛೖΕΔ͜ͱΛ”୅ೖ”, ͦͷޙผͷ஋Ͱ্ॻ ͖͢Δ͜ͱΛ”ഁյత୅ೖ”ͱݺͿ ▸ Swift Ͱ͸ “var” ͱ͍͏Ωʔϫʔυ͔Β࢝·Δ ▸ ม਺ʹ͸ಉ͡ܕ͔͠ೖΕΒΕͳ͍

Slide 4

Slide 4 text

ม਺(VARIABLE)ͱ͸ ▸ จࣈ΍੔਺ͳͲϓϩάϥϜதͰѻ͏σʔλΛೖΕΔϞϊ ▸ Ұ౓ఆٛͨ͠ม਺ʹޙ͔Β৽͍͠஋ΛೖΕΔ͜ͱ͕Ͱ͖Δ ▸ ม਺ʹ৽͘͠஋ΛೖΕΔ͜ͱΛ”୅ೖ”, ͦͷޙผͷ஋Ͱ্ॻ͖ ͢Δ͜ͱΛ”ഁյత୅ೖ”ͱݺͿ ▸ Swift Ͱ͸ “var” ͱ͍͏Ωʔϫʔυ͔Β࢝·Δ ▸ ม਺ʹ͸ಉ͡ܕ͔͠ೖΕΒΕͳ͍ ▸ ม਺͸ఆٛͨ࣌͠ʹඞͣॳظԽ͞Ε͍ͯΔඞཁ͕͋Δ <- NEW!

Slide 5

Slide 5 text

ม਺(VARIABLE)ͱ͸ ▸ ࣮ࡍͷίʔυ // ม਺ఆٛ var num: Int = 20 var name: String = "HAG" // ܕΛলུ͢Δ͜ͱ΋Մೳ var number = 10 // ఆٛࡁΈͷม਺ʹޙ͔Β஋ΛೖΕΒΕΔ num = 45 number = 29 // ͜Ε͸ܕ͕ҧ͏͔Βμϝ(ErrorʹͳΔ·͢) name = 45 // ͜Ε͸஋ೖͬͯͳ͍͔Βμϝ(ErrorʹͳΔ·͢) var number: Int // nil΋ೖΕ͓ͯ͘͜ͱ͸Ͱ͖ͳ͍ʢErrorʹͳΔ·͢)
 var number: Int = nil // ม਺Λར༻͢Δ print("number is: \(number)")

Slide 6

Slide 6 text

ม਺(VARIABLE)ͱ͸ ▸ ม਺ͷΠϝʔδ ▸ μϯϘʔϧ = ม਺ ▸ தͷਓ = ஋

Slide 7

Slide 7 text

2.ఆ਺

Slide 8

Slide 8 text

ఆ਺(VALUE)ͱ͸ ▸ ม਺ͱಉ͘͡จࣈ΍੔਺ͳͲϓϩάϥϜதͰѻ͏σʔλΛೖΕ ΔϞϊ(ͱݴ͏ΑΓ஋ʹϥϕϧΛషΔΑ͏ͳ΋ͷʁ) ▸ Ұ౓ఆٛͨ͠ఆ਺ʹޙ͔Βผͷ஋ΛೖΕΔ͜ͱ͸Ͱ͖ͳ͍ɻ ▸ ఆ਺ʹ஋ΛೖΕΔ͜ͱΛ”ଋറ(bind)”ͱݺͿɻ ▸ Swift Ͱ͸ “let” ͱ͍͏Ωʔϫʔυ͔Β࢝·Δ ▸ ӳޠͷ਺ֶͷදݱͷ let x be 3 (xΛ3ͱ͢Δ)͔Β͖͍ͯΔΒ͍͠ ▸ ఆ਺ʹ͸ఆٛͨ͠ܕ͔͠ೖΕΒΕͳ͍

Slide 9

Slide 9 text

ఆ਺(VALUE)ͱ͸ ▸ ม਺ͱಉ͘͡จࣈ΍੔਺ͳͲϓϩάϥϜதͰѻ͏σʔλΛೖΕΔϞϊ(ͱݴ ͏ΑΓ஋ʹϥϕϧΛషΔΑ͏ͳ΋ͷʁ) ▸ Ұ౓ఆٛͨ͠ఆ਺ʹޙ͔Βผͷ஋ΛೖΕΔ͜ͱ͸Ͱ͖ͳ͍ɻ ▸ ఆ਺ʹ஋ΛೖΕΔ͜ͱΛ”ଋറ(bind)”ͱݺͿɻ ▸ Swift Ͱ͸ “let” ͱ͍͏Ωʔϫʔυ͔Β࢝·Δ ▸ ӳޠͷ਺ֶͷදݱͷ let x be 3 (xΛ3ͱ͢Δ)͔Β͖͍ͯΔΒ͍͠ ▸ ఆ਺ʹ͸ఆٛͨ͠ܕ͔͠ೖΕΒΕͳ͍ ▸ ม਺͸ఆٛͨ࣌͠ʹඞͣॳظԽ͞Ε͍ͯΔඞཁ͕͋Δ <- NEW!

Slide 10

Slide 10 text

ఆ਺(VALUE)ͱ͸ ▸ ࣮ࡍͷίʔυ // ఆ਺ఆٛ let name: String = “THE SHAPE" let double: Double = 114.514 // ܕΛলུ͢Δ͜ͱ΋Ͱ͖Δ let age = 25 // ఆٛࡁΈͷఆ਺ʹޙ͔Β஋ΛೖΕΔ͜ͱ͸Ͱ͖ͳ͍(͜Ε͸ΤϥʔʹͳΔ·͢) name = “Onii-chan” // ఆٛͨ͠ܕͱಉ͡஋͔͠ೖΕΒΕͳ͍(͜Ε΋ΤϥʔʹͳΔ·͢) let number: Int = "are you ok?" let string: String = 2020 // ͜Ε͸஋ೖͬͯͳ͍͔Βμϝ(ErrorʹͳΔ·͢) let number: Int // nil΋ೖΕ͓ͯ͘͜ͱ͸Ͱ͖ͳ͍ʢErrorʹͳΔ·͢)
 let number: Int = nil // ఆ਺Λར༻͢Δ print(“your age is... \(100000 + age)”) print("Oh! you are !")

Slide 11

Slide 11 text

ఆ਺(VALUE)ͱ͸ ▸ ಲ೑ = ஋ ▸ ϥϕϧ = ఆ਺(ͷ໊લ) 20 ▸ ఆ਺ͷΠϝʔδ

Slide 12

Slide 12 text

·ͱΊΔͱ ‣ SwiftͰ͸ “var”, ఆ਺͸ “let”Ͱఆٛ͢Δ ▸ Ұ౓ఆٛͨ͠ม਺͸ޙ͔Β஋ΛೖΕΒΕΔɻఆ਺͸ޙ͔Β ஋ΛೖΕΒΕͳ͍ ▸ ม਺ʹ஋ΛೖΕΔͷ͸୅ೖ, ఆ਺ʹ஋ΛೖΕΔͷ͸ଋറͱݺ Ϳ ▸ ม਺ʹ΋ఆ਺ʹ΋ఆٛͨ͠ܕ͔͠ೖΕΒΕͳ͍

Slide 13

Slide 13 text

ͲͪΒΛ࢖͏΂͖ʁ

Slide 14

Slide 14 text

A:྆ํ࢖͏΂͖

Slide 15

Slide 15 text

ͲͪΒΛ࢖͏΂͖ʁ ▸ ͔ͤͬ͘༻ҙ͞ΕͯΔ༁Ͱ͔͢Β྆ํͱ΋࢖ͬͯߦ͖·͠ΐ ͏ ▸ ͱ͸͍͑༏ઌ౓͸͋Δ ▸ Swift΋ݴޠͱͯ͠ let Λ࢖͏͜ͱΛਪ঑͍ͯ͠·͢ ▸ جຊతʹ͸ let Λ࢖͍ɺ෦෼෦෼Ͱ var Λ࢖͍ͬͯ͘

Slide 16

Slide 16 text

3.είʔϓ

Slide 17

Slide 17 text

είʔϓʁ ▸ είʔϓͱ͸ม਺ͷ༗ޮൣғͷ͜ͱ ▸ SwiftͳͲͷଟ͘ͷݴޠͰ͸if ΍ϝιουͳͲͷ {} Ͱείʔϓ͕۠ ੾ΒΕΔ(ϒϩοΫείʔϓ) ▸ είʔϓͷ಺ଆ͔Β֎ଆͷม਺ΛݟΔ͜ͱ͕Ͱ͖Δ͕֎ଆ͔Β಺ ଆͷม਺ΛݟΔ͜ͱ͸Ͱ͖ͳ͍ ▸ είʔϓ͔Β֎Εͨม਺͸ࣗಈతʹղ์͞ΕΔ ▸ ؔ਺͝ͱʹείʔϓ͕੾ΒΕΔมଶݴޠ΋͋Δ(functionείʔϓ) ▸ ओʹϩʔΧϧείʔϓͱάϩʔόϧείʔϓͰ෼͚ΒΕΔ

Slide 18

Slide 18 text

3-1. ϩʔΧϧε ίʔϓ

Slide 19

Slide 19 text

ϩʔΧϧείʔϓ func someFunction() { let a = “hoge" print(a) // OK } print(a) // ίϯύΠϧΤϥʔ someFunction() ▸ ؔ਺΍Ϋϥεɺ੍ޚߏจ(ifͱ͔)ͷதͳͲ͘͝ڱ͍ൣғͰఆٛ͞ΕΔείʔϓ ▸ ؔ਺΍ΫϥεɺifͳͲͷϒϩοΫ಺ͰͷΈ༗ޮ ▸ ม਺͕ݟ͑Δൣғ͕ڱ͍ͷͰҙਤ͠ͳ͍มߋ͕ى͜Γʹ͍͘

Slide 20

Slide 20 text

3-2. άϩʔόϧ είʔϓ

Slide 21

Slide 21 text

άϩʔόϧείʔϓ ▸ ؔ਺΍Ϋϥεɺ੍ޚߏจ(ifͱ͔)ʹؚ·Εͳ͍είʔϓ ▸ ϓϩάϥϜதͷͲ͔͜ΒͰ΋ݟ͑Δ ▸ ม਺͕ݟ͑Δൣғ͕޿͍ͷͰҙਤ͠ͳ͍มߋ͕ى͜Γ΍͍͢ ▸ Ή΍Έʹάϩʔόϧม਺Λఆٛ͢Δ͜ͱ͸”άϩʔόϧΛԚછ͢Δ”ͱ΋ݺ͹Ε޷·͘͠ͳ͍ let globalA = "a" func someFunction() { print(globalA) // OK } print(globalA) // OK someFunction()

Slide 22

Slide 22 text

4.ܕʹ͍ͭͯ

Slide 23

Slide 23 text

σʔλܕʹ͍ͭͯ ▸ ϓϩάϥϜͰѻ͏σʔλΛ෼ྨͨ͠΋ͷ ▸ จࣈྻͳΒString, ੔਺͸Intͱ͍͏ײ͡ ▸ SwiftͰ͸ม਺/ఆ਺ͷ໊લͷޙΖʹܕΛࢦఆ͠·͢ ▸ ஋͔ΒͦΕ͕ͲΜͳܕͰ͋Δ͔Θ͔Δ৔߹ʹ͸লུ͢Δ͜ ͱ΋Ͱ͖·͢(ܕਪ࿦) ▸ Swiftͷܕ͸શͯେจࣈ͔Β࢝·Γ·͢

Slide 24

Slide 24 text

ࢀরܕͱ஋ܕ ▸ લड़ͷ෼ྨҎ֎ʹ΋Swiftʹ͸ೋͭͷ෼ྨ͕͋Δ ▸ ClassͰఆٛ͞Ε͍ͯΔ΋ͷ͸ ‘ࢀরܕ’, Struct Ͱఆٛ͞Εͯ ͍Δ΋ͷ͸ ‘஋ܕ’ͱݺ͹ΕΔ ▸ ྫ͑͹ Int ΍ String ͳͲ͸஋ܕ , UIImageͳͲͷΫϥε͸ࢀ রܕ ▸ ࢀরܕ͸஋ͷ͋Δ৔ॴΛɺ஋ܕ͸஋ͦͷ΋ͷΛม਺ʹ࣋ͬͯ ͍Δ

Slide 25

Slide 25 text

ςΩετ গʑ໽հͳࢀরܕ ▸ ࢀরܕ͸͍͋ͨͦͷ΋ͷΛอ͍࣋ͯ͠Δ༁Ͱ͸ͳ͍ͷͰ࢖͍ ํʹΑͬͯ͸গʑ໽հͳڍಈΛ͢Δ͜ͱ΋ɾɾɾɾ

Slide 26

Slide 26 text

୅දతͳܕ

Slide 27

Slide 27 text

ςΩετ STRING TYPE(จࣈྻ) ▸ จࣈྻΛද͢ܕ ▸ Ұ൪࢖͏ܕ͔΋ ▸ ଞͷݴޠͰ΋ͦ͏͕ͩ಺෦తʹ͸Characterͷ഑ྻʹͳͬͯΔ(͜ͱ ͕ଟ͍) ▸ จࣈίʔυ͸UTF-8 ▸ ੜจࣈϦςϥϧ ▸ ม਺Λల։͢Δ͜ͱ΋Մೳ

Slide 28

Slide 28 text

ςΩετ INTEGER TYPE (੔਺ܕ) ▸ ͨ͘͞Μछྨ͕͋Δ͓ ▸ Int, UInt, Int32, Decimal ▸ ΋ͪΖΜ͜Ε΋Ϋϥε(Struct) ▸

Slide 29

Slide 29 text

ςΩετ FLOATING TYPE(ුಈখ਺఺) ▸ গ਺ҎԼΛද͢Ϋϥε ▸ Float, Double, CGFloat ▸ CGFloat͸CPUͷੑೳʹΑͬͯDouble, FloatΛ੾Γସ͑Δ ▸ ਺ࣈͷܭࢉ͕͘͢͝ΊΜͲ͍͘͞ ▸ ҟͳΔܕͷ҉໧తܕม׵͸ແ͠

Slide 30

Slide 30 text

ςΩετ BOOL TYPE(࿦ཧܕ) ▸ ਖ਼͔ෛ͔Λද͢Ϋϥε ▸ ओʹifจͰ࢖͍·͢ ▸ true or false ▸ IntܕΛ୅ΘΓʹ࢖͏͜ͱ͸Ͱ͖ͳ͍ ▸ ࡾ߲ԋࢉࢠΛαϙʔτͯ͠·͢ ▸ ௕͍ॲཧ͸ࡾ߲ԋࢉࢠʹ͸ॻ͔ͳ͍

Slide 31

Slide 31 text

ςΩετ COLLECTION TYPE (഑ྻ, ࣙॻܕ) ▸ Swiftʹ΋഑ྻ͸͋Δ ▸ Arrayͱݺͼ·͢ ▸ Arrayʹ͸ಉ͡ܕ͔͠ೖΕΒΕͳ͍ ▸ ArrayΑΓ΋[Int]Λ࢖͏ ▸

Slide 32

Slide 32 text

ςΩετ COLLECTION TYPE (഑ྻ, ࣙॻܕ) ▸ Swiftʹ΋ࣙॻܕ͕͋Δ ▸ Dictionaryͱݺͼ·͢ ▸ Dictionaryʹ΋ಉ͡ܕ͔͠ೖΕΒΕͳ͍ ▸ DictionaryΑΓ΋[String: Int]Λ࢖͏ ▸ ॱ൪͸อো͞Εͳ͍

Slide 33

Slide 33 text

5. ܕม׵ʹͭ ͍ͯ

Slide 34

Slide 34 text

ςΩετ ܕม׵ʁ ▸ ͋Δܕ͔Βผͷܕʹม׵͢Δ͜ͱΛܕม׵ͱ͍͏ ▸ String͔ΒIntʹม׵͢ΔͳͲ͕ܕม׵ʹ౰ͨΔ ▸ String͔ΒIntʹม׵͚ͨ͠Ε͹ String(10) ͱ͍͏ܗʹͳΔ ▸ ܕม׵͸ඞͣ੒ޭ͢Δͱ͸ݶΒͳ͍૊Έ߹Θͤ΋͋ΔͷͰ optional(nil͔΋͠Εͳ͍ܕ)͕ฦΔ ▸ as? as! as Λ࢖༻ͨ͠μ΢ϯΩϟετͱݺ͹ΕΔํ๏΋ଘࡏ͢Δ