Swift ์ dynamic dispatch ๋ method table ์์ ํจ์๋ฅผ ์ฐพ์ ๋ค์ indirect call ์ ์ํํ์ฌ ๊ตฌํ๋๊ธฐ ๋๋ฌธ์ direct call ๋ณด๋ค ์ํ์ด ๋๋ฆฝ๋๋ค. ๋๋ indirect call ์ ๋ง์ ์ปดํ์ผ๋ฌ ์ต์ ํ๋ฅผ ๋ฐฉ์งํ์ฌ ํธ์ถ ๋น์ฉ์ด ๋น์๋๋ค. ๊ทธ๋ ๋ค๋ฉด ์๋ธํด๋์ฑ๊ณผ ์ค๋ฒ๋ผ์ด๋ฉ์ด ํ์์๋ ๊ฒฝ์ฐ๋ static dispatch ๋ก ๋์ํ๋ ๊ฒ์ด ์ข์ง ์์๊น? ๋ง์ต๋๋ค, ์ฑ๋ฅ์ด ์ค์ํ ์ฝ๋์์ ์ฑ๋ฅ ํฅ์์ ํ์ํ์ง ์์ ๋ ์ด dynamic dispatch ๋์์ ์ ํํ ์ ์๋ ๋ฐฉ๋ฒ์ด ํ์ํฉ๋๋ค. ์ฑ๋ฅ ํฅ์์ ์ํ Static Dispatch ๋ฉ์๋ ๋ฟ๋ง ์๋๋ผ ํ๋กํผํฐ ์ญ์ ์ค๋ฒ๋ผ์ด๋ฉ์ ๊ฐ๋ฅ์ฑ์ด ์๊ธฐ ๋๋ฌธ์ dynamic dispatch ๋ก ๋์ํฉ๋๋ค. ๊ทธ๋์ ์์ ๊ฐ๋ฅ..
Method Dispatch method dispatch ๋ Swift ์์ ๋ฉ์๋๋ฅผ ํธ์ถํ ๋ ํ์ฌ ๋ฉ๋ชจ๋ฆฌ์์ ์ด๋ป๊ฒ ์ด๋ค ๋ฉ์๋๋ฅผ ์คํ์ํฌ์ง๋ฅผ ๊ฒฐ์ ํ ๋ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ํด๋์ค์ dispatch ๊ณผ์ ์ ์์๋ฅผ ๋ค์ด๋ด ์๋ค. class Animal { func bark() { print("bark!") } } class Cow: Animal { func bark() { print("moo!") } } class Dog: Animal { } let animal: Animal = Animal() animal.bark() let cow: Animal = Cow() cow.bark() let dog: Animal = Dog() dog.bark() ์ธ์คํด์ค animal, cow, dog ๊ฐ bark() ๋ฉ์๋..
- WWDC22
- YPImagePicker
- urlsession
- APNS
- Algorithm
- SwiftUI
- projectsetting
- CloneCoding
- Swift
- Protocol
- ์๋ฒํต์
- RxCocoa
- WWDC
- MVVM
- configurable widget
- Objective-C
- WidgetKit
- containerBackground
- Widget
- watchOS
- Notification
- github
- 2022 KAKAO TECH INTERNSHIP
- Firebase
- MOYA
- OpenSourceLibrary
- async/await
- UserDefaults
- IOS
- rxswift
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Total
- Today
- Yesterday