iOS swift ๋ฌธ๋ฒ 25์ผ์ฐจ๐ค
8600 ๋จ์ด iOS swift ๊ธฐ์ด๋ฌธ๋ฒiOS swift ๊ธฐ์ด๋ฌธ๋ฒ
๋ณ์นญ typealias
import UIKit
protocol Naming {
func getName() -> String
}
protocol Aging {
func getAge() -> Int
}
// ์ด๋ฆ์ ๋ฐ๊ฟ์ฃผ๋ ๊ฒ!
typealias Friendable = Naming & Aging
typealias FullNaming = Naming
struct Friend : Friendable {
func getName() -> String {
return self.name
}
func getAge() -> Int {
return self.age
}
var name : String
var age : Int
}
/*
์์ ์ฝ๋๋
struct Friend : Naming & Aging {
}
๊ณผ ์ ํํ ๋์ผํ๋ค
*/
// string,class,struct,array,closure๋ฑ๋ typealias๋ก ์ด๋ฆ์ ๋ฐ๊ฟ์ค ์ ์๋ค.
//string ์ด๋ฆ ๋ฐ๊พธ๊ธฐ
typealias FriendName = String
var friendName : FriendName = "๊น์ฉ์ฌ"
// array ์ด๋ฆ ๋ฐ๊พธ๊ธฐ
typealias Friends = [Friend]
var myFriendArray : Friends = []
// closure๋ ๋ณ์นญ์ผ๋ก ๋ฐ๊ฟ์ฃผ์
typealias StringBlock = (String) -> Void
func sayHi(completion : (String) -> Void){
print("์๋
ํ์ธ์?")
completion("์ค๋๋ ๋นก์ฝ๋ฉ ํ๊ณ ๊ณ์ ๊ฐ์?")
}
func sayHi2(completion : StringBlock){
print("์๋
ํ์ธ์?")
completion("์ค๋๋ ๋นก์ฝ๋ฉ ํ๊ณ ๊ณ์ ๊ฐ์?")
}
sayHi2(completion: {saying in
print("์ฌ๊ธฐ์ ๋ฐ์ : ", saying)
})
//
typealias MyType = MyClass.MY_TYPE
class MyClass {
enum MY_TYPE {
case DOG
case CAT
case BIRD
}
var myType = MyType.DOG
}
var myClass = MyClass()
myClass.myType = MyType.DOG
print("myClas.myType: ",myClass.myType)
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(iOS swift ๋ฌธ๋ฒ 25์ผ์ฐจ๐ค), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค
https://velog.io/@longlivedrgn/iOS-swift-๋ฌธ๋ฒ-25์ผ์ฐจ
์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์
๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ
์ธ ๋ฐ๊ฒฌ์ ์ ๋
(Collection and Share based on the CC Protocol.)
import UIKit
protocol Naming {
func getName() -> String
}
protocol Aging {
func getAge() -> Int
}
// ์ด๋ฆ์ ๋ฐ๊ฟ์ฃผ๋ ๊ฒ!
typealias Friendable = Naming & Aging
typealias FullNaming = Naming
struct Friend : Friendable {
func getName() -> String {
return self.name
}
func getAge() -> Int {
return self.age
}
var name : String
var age : Int
}
/*
์์ ์ฝ๋๋
struct Friend : Naming & Aging {
}
๊ณผ ์ ํํ ๋์ผํ๋ค
*/
// string,class,struct,array,closure๋ฑ๋ typealias๋ก ์ด๋ฆ์ ๋ฐ๊ฟ์ค ์ ์๋ค.
//string ์ด๋ฆ ๋ฐ๊พธ๊ธฐ
typealias FriendName = String
var friendName : FriendName = "๊น์ฉ์ฌ"
// array ์ด๋ฆ ๋ฐ๊พธ๊ธฐ
typealias Friends = [Friend]
var myFriendArray : Friends = []
// closure๋ ๋ณ์นญ์ผ๋ก ๋ฐ๊ฟ์ฃผ์
typealias StringBlock = (String) -> Void
func sayHi(completion : (String) -> Void){
print("์๋
ํ์ธ์?")
completion("์ค๋๋ ๋นก์ฝ๋ฉ ํ๊ณ ๊ณ์ ๊ฐ์?")
}
func sayHi2(completion : StringBlock){
print("์๋
ํ์ธ์?")
completion("์ค๋๋ ๋นก์ฝ๋ฉ ํ๊ณ ๊ณ์ ๊ฐ์?")
}
sayHi2(completion: {saying in
print("์ฌ๊ธฐ์ ๋ฐ์ : ", saying)
})
//
typealias MyType = MyClass.MY_TYPE
class MyClass {
enum MY_TYPE {
case DOG
case CAT
case BIRD
}
var myType = MyType.DOG
}
var myClass = MyClass()
myClass.myType = MyType.DOG
print("myClas.myType: ",myClass.myType)
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(iOS swift ๋ฌธ๋ฒ 25์ผ์ฐจ๐ค), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@longlivedrgn/iOS-swift-๋ฌธ๋ฒ-25์ผ์ฐจ์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค