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
MobileProgramming Class
Search
yuichiro_takahashi
October 31, 2018
Technology
0
140
MobileProgramming Class
Mobile Programmingの授業で使うスライドです
yuichiro_takahashi
October 31, 2018
Tweet
Share
More Decks by yuichiro_takahashi
See All by yuichiro_takahashi
App Clip - in a nutshell
yuichirokato
0
360
巨大な機能を VIPER + MicroViewController でいい感じに実装した話
yuichirokato
1
820
Mobile Programming Protocol Extension
yuichirokato
0
83
Mobile Programming Protocol
yuichirokato
0
87
Mobile Programming enum
yuichirokato
0
170
Mobile Programming Optional
yuichirokato
0
140
Mobile Programming Struct
yuichirokato
0
130
Mobile Programming Initializer Beta
yuichirokato
0
120
Mobile Programming Inheritance
yuichirokato
0
150
Other Decks in Technology
See All in Technology
カンファレンスに託児サポートがあるということ / Having Childcare Support at Conferences
nobu09
1
580
『OCI で学ぶクラウドネイティブ 実践 × 理論ガイド』 書籍概要
oracle4engineer
PRO
3
220
業務効率化をさらに加速させる、ノーコードツールとStep Functionsのハイブリッド化
smt7174
2
140
やる気のない自分との向き合い方/How to Deal with Your Unmotivated Self
sanogemaru
0
510
HR Force における DWH の併用事例 ~ サービス基盤としての BigQuery / 分析基盤としての Snowflake ~@Cross Data Platforms Meetup #2「BigQueryと愉快な仲間たち」
ryo_suzuki
0
220
Railsの話をしよう
yahonda
0
140
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
8.8k
フレームワークを意識させないワークショップづくり
keigosuda
0
190
エンタメとAIのための3Dパラレルワールド構築(GPU UNITE 2025 特別講演)
pfn
PRO
0
330
いまからでも遅くない!SSL/TLS証明書超入門(It's not too late to start! SSL/TLS Certificates: The Absolute Beginner's Guide)
norimuraz
0
240
AI Agent Dojo #2 watsonx Orchestrateフローの作成
oniak3ibm
PRO
0
120
Node.js 2025: What's new and what's next
ruyadorno
0
340
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
Music & Morning Musume
bryan
46
6.8k
How to Ace a Technical Interview
jacobian
280
24k
Side Projects
sachag
455
43k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
GraphQLとの向き合い方2022年版
quramy
49
14k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
YesSQL, Process and Tooling at Scale
rocio
173
14k
Docker and Python
trallard
46
3.6k
How to Think Like a Performance Engineer
csswizardry
27
2k
BBQ
matthewcrist
89
9.8k
Transcript
CLASS MOBILE PROGRAMMING 31ST OCT
1. CLASSͱ
ςΩετ CLASS ▸ Objectࢦݴޠʹ͓͍ͯϓϩάϥϜΛܗͮ͘ΔҰͭͷ·ͱ ·Γ ▸ Class͝ͱʹׂ(ػೳ)ΛܾΊͯ࠶ར༻͍͢͠ܗʹ͢Δ͜ ͱͰϓϩάϥϜΛ࡞ɺӡ༻͘͢͢͠Δ ▸ ϓϩάϥϜதͰ·ͣClassΛఆٛ͠ɺClassΛ͍͍ͨՕॴ
ͰΠϯελϯεԽ͢Δͱ͍͏ྲྀΕʹͳΔ ▸ ClassΛΠϯελϯεԽͨ͠ͷΛΦϒδΣΫτͱݺͿ
1-1. CLASSͷఆٛ
ςΩετ CLASSͷఆٛ ▸ ·͍͍ͣͨClassΛఆٛ͢Δඞཁ͕͋Δ ▸ ۩ମతʹ ▸ ClassͲΜͳ໊લ͔ ▸ ClassʹͲΜͳσʔλ͕͋Δ͔(property)
▸ Class͕ͲΜͳػೳΛ͍࣋ͬͯΔ͔(method) ▸ Λఆ͍ٛͯ͘͠
ςΩετ CLASSͷఆٛ ▸ Swiftʹ͓͚ΔClassͷจ๏ҎԼͷ௨Γ class <ClassName>: <SuperClass> { let property1:
String var property2: String func method() { … } }
ςΩετ CLASSͷఆٛ ▸ ࣮ࡍͷίʔυ class Dog: Animal { let name:
String let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } Classͷ͍࣋ͬͯΔσʔλ(Property) ͜͜ͰॳظԽ͢Δ(constructor, initializer) Classͷ͍࣋ͬͯΔػೳ(Method)
1-2. CLASSͷ༻
ςΩετ CLASSͷఆٛ ▸ ఆٛ͞ΕͨClassͦͷ··Ͱҙຯ͕͋Γ·ͤΜ ▸ ఆٛ͞ΕͨClassΛ͍͍ͨॴͰ ▸ ΠϯελϯεԽ͠(ClassͷΦϒδΣΫτΛ࡞͢Δ) ▸ ClassͷػೳΛ͏
▸ ͜ͱͰClassʹॻ͔Εͨίʔυ͕࣮ߦ͞Ε·͢
ςΩετ CLASSͷఆٛ ▸ Swiftʹ͓͚ΔClassͷΠϯελϯεԽɺ༻ͷํ๏ҎԼͷ௨Γ let dog = <ClassName>() dog.property1 dog.method(hoge:
“hoge”)
ςΩετ CLASSͷఆٛ ▸ ࣮ࡍͷίʔυ let dog = Dog(name: "pochi", kind:
"Doberman") dog.name dog.selfIntroduction() ClassͷΠϯελϯεԽ Classͷσʔλ(Property)ʹΞΫηε ClassͷػೳΛ͏(ϝιουݺͼग़͠)
2. CLASSͷཁૉ
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } }
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } Property
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } Property Method
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } Property initializer(constructor) Method
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } Property ΞΫηεम০ࢠ initializer(constructor) Method
ςΩετ 2. CLASSͷཁૉ ▸ Classͷதʹ༷ʑͳཁૉ͕ଘࡏ͠·͢ class Dog: Animal { let
name: String private let kind: String init(name: String, kind: String) { self.name = name self.kind = kind } func selfIntroduction() { print("My name is \(name)") print("I'm \(kind)") print("nice to meet you sir.") } } ܧঝ Property ΞΫηεम০ࢠ initializer(constructor) Method
ޙଓ͘