Swift 17

[ SWIFT ] 데이터 νƒ€μž… κ³ κΈ‰ (2) - μ»¬λ ‰μ…˜ νƒ€μž… <λ°°μ—΄, λ”•μ…”λ„ˆλ¦¬, μ„ΈνŠΈ>

κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€. 데이터 νƒ€μž… κ³ κΈ‰(2) - μ»¬λ ‰μ…˜ν˜• μ»¬λ ‰μ…˜ νƒ€μž… λ°°μ—΄ λ”•μ…”λ„ˆλ¦¬ μ„ΈνŠΈ 1. μ»¬λ ‰μ…˜ νƒ€μž… Collection Types SWIFTμ—μ„œ μ»¬λ ‰μ…˜ νƒ€μž…(Collection Type)은 데이터 λ¬ΆμŒμ„ μ˜λ―Έν•œλ‹€. SWIFTμ—μ„œλŠ” 3κ°€μ§€μ˜ μ»¬λ ‰μ…˜ νƒ€μž…μ„ μ œκ³΅ν•œλ‹€. 이 μ„Έ 가지 μ»¬λ ‰μ…˜ νƒ€μž… λͺ¨λ‘ generic collectionsλ₯Ό κ΅¬ν˜„ν•˜κΈ° λ•Œλ¬Έμ— ν•˜λ‚˜μ˜ μ§€μ •λœ νƒ€μž…μ˜ 데이터λ₯Ό 담을 수 μžˆλ‹€. μ’…λ₯˜λ‘œλŠ” λ°°μ—΄, λ”•μ…”λ„ˆλ¦¬, μ„ΈνŠΈ 등이 μžˆλ‹€. let ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•΄ μƒμˆ˜λ‘œ μ„ μ–Έν•˜λ©΄ λ³€κ²½ν•  수 μ—†λŠ” μ»¬λ ‰μ…˜ νƒ€μž…μ΄ λœλ‹€. var ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•΄ λ³€μˆ˜λ‘œ μ„ μ–Έν•˜λ©΄ λ³€κ²½ν•  수 μžˆλŠ” μ»¬λ ‰μ…˜ νƒ€μž…μ΄ λœλ‹€. μ œλ„€λ¦­ Generic μ œλ„€λ¦­ μ½”λ“œλ‘œ κ΅¬ν˜„λœ 것듀은 μ–΄λ–€ νƒ€μž…μ΄λ“  담을 수 있게 지정할 수 μžˆμŒμ„ 의미..

Swift 2021.07.20

[ SWIFT ] 데이터 νƒ€μž… κ³ κΈ‰ (1)

κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€. 데이터 νƒ€μž… κ³ κΈ‰(1) 데이터 νƒ€μž… μ•ˆμ‹¬ νƒ€μž… 별칭 νŠœν”Œ 1. 데이터 νƒ€μž… μ•ˆμ‹¬ μŠ€μœ„ν”„νŠΈμ˜ νŠΉμ§• - μ•ˆμ •μ„±. λ”°λΌμ„œ μŠ€μœ„ν”„νŠΈλŠ” νƒ€μž…μ— μ—„κ²©ν•˜λ‹€. μ„œλ‘œ λ‹€λ₯Έ νƒ€μž…λΌλ¦¬μ˜ 데이터 κ΅ν™˜μ€ ν˜•λ³€ν™˜(Type-Casting)이 ν•„μˆ˜μ΄λ‹€. νƒ€μž… μΆ”λ‘  : λ³€μˆ˜λ‚˜ μƒμˆ˜λ₯Ό μ„ μ–Έν•  λ•Œ νŠΉμ • νƒ€μž…μ„ λͺ…μ‹œν•˜μ§€ μ•Šμ•„λ„ μ»΄νŒŒμΌλŸ¬κ°€ ν• λ‹Ήλœ 값을 κΈ°μ€€μœΌλ‘œ νƒ€μž…μ„ κ²°μ •ν•œλ‹€. var test:String = "testμž…λ‹ˆλ‹€." //μœ„ μ½”λ“œμ™€ λ™μΌν•œ μ½”λ“œ var test = "testμž…λ‹ˆλ‹€." //μ»΄νŒŒμΌλŸ¬κ°€ String으둜 νƒ€μž… μΆ”λ‘ ν•œλ‹€. 2. νƒ€μž… 별칭 μŠ€μœ„ν”„νŠΈμ˜ κΈ°λ³Έ νƒ€μž… λ˜λŠ” μ‚¬μš©μž μ •μ˜ νƒ€μž…κ³Ό 같이 이미 μ‘΄μž¬ν•˜λŠ” 데이터 νƒ€μž…μ— μž„μ˜λ‘œ λ‹€λ₯Έ 이름, 즉 별칭을 λΆ€μ—¬ν•  수 μžˆλ‹€. typealias ν‚€μ›Œλ“œ 사..

Swift 2021.07.19

[ SWIFIT ] 데이터 νƒ€μž… κΈ°λ³Έ

κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€. Chapter 3 데이터 νƒ€μž… κΈ°λ³Έ 1. Int 와 UInt(unsigned Int) μ •μˆ˜ λ²”μœ„ Int : 음의 μ •μˆ˜λΆ€ν„° μ–‘μ˜ μ •μˆ˜κΉŒμ§€ UInt : 0λΆ€ν„° μ–‘μ˜ μ •μˆ˜κΉŒμ§€. (μ΅œλŒ“κ°’μ΄ Int 보닀 크닀) Int의. μ΅œλŒ“κ°’ 이상 UInt의 μ΅œλŒ“κ°’ λ―Έλ§Œμ„ μ‚¬μš©ν•˜κ²Œ λ˜λŠ” 경우 μ΄μ™Έμ—λŠ” Int κ°’ μ‚¬μš© ꢌμž₯ var integer: Int = -100 let unsignedInteger: UInt = 50 let largeInteger: Int64 = Int64.max let smallUnsignedInt : UInt8 = UInt8.min //0 integer = Int(unsignedInteger) //Int와 UIntλŠ” λ‹€λ₯Έ νƒ€μž…μ΄κΈ° λ•Œλ¬Έμ— ν˜•λ³€ν™˜μ΄ ν•„μš”ν•˜λ‹€. 2. Bool b..

Swift 2021.07.11

[ SWIFT ] μŠ€μœ„ν”„νŠΈ 처음 μ‹œμž‘ν•˜κΈ°

κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€. Chapter 2 μŠ€μœ„ν”„νŠΈ 처음 μ‹œμž‘ν•˜κΈ° 1. λͺ…λͺ… κ·œμΉ™ μœ λ‹ˆμ½”λ“œλ₯Ό ν¬ν•¨ν•œ μ–΄λ–€ λ¬Έμžλ“ μ§€ μ‚¬μš©κ°€λŠ₯ 숫자둜 μ‹œμž‘ν•  수 μ—†λ‹€. μ˜ˆμ•½μ–΄λ‚˜ ν‚€μ›Œλ“œλ‘œ λ“±λ‘λœ 단어 μ‚¬μš©ν•  수 μ—†μŒ 무슨 역할인지 νŒŒμ•…ν•  수 μžˆμ–΄μ•Ό ν•œλ‹€. λͺ…사, 동사, μ „μΉ˜μ‚¬λ‘œ 이루어진 단어 μ—°κ²° 클래슀 이름은 λŒ€λ¬Έμž λͺ…μ‚¬λ‘œ μ‹œμž‘ ν•¨μˆ˜λ‚˜ λ©”μ„œλ“œ 이름은 μ†Œλ¬Έμžμ˜ λ™μ‚¬λ‘œ μ‹œμž‘ λ³€μˆ˜λ‚˜ μƒμˆ˜λŠ” μ†Œλ¬Έμžμ˜ λͺ…μ‚¬λ‘œ μ‹œμž‘ μ‹œμž‘ 단어λ₯Ό μ œμ™Έν•œ λͺ¨λ“  λ‹¨μ–΄μ˜ μ‹œμž‘μ€ λŒ€λ¬Έμžλ‘œ ν•˜κ³  그이 μ™Έμ˜ λͺ¨λ“  λ¬ΈμžλŠ” μ†Œλ¬Έμžλ‘œ ν•œλ‹€. let 1stNumber = 1 //X, 숫자둜 μ‹œμž‘ν•  수 μ—†λ‹€ let struct = "ꡬ쑰체" //X, μ˜ˆμ•½μ–΄λ‚˜ ν‚€μ›Œλ“œ μ‚¬μš©λΆˆκ°€ numberOfTable //O, 무슨 역할인지 νŒŒμ•…ν•  수 μžˆμ–΄μ•Ό ν•œλ‹€. nt //μ—­ν•  파..

Swift 2021.07.08

[ SWIFT ] μŠ€μœ„ν”„νŠΈλž€?

κ³΅λΆ€ν•œ λ‚΄μš©μ„ μ •λ¦¬ν•œ κΈ€μž…λ‹ˆλ‹€. Chapter 1. μŠ€μœ„ν”„νŠΈ 1. μŠ€μœ„ν”„νŠΈλž€? ARC (Automatic Reference Counting μžλ™ μ°Έμ‘° 횟수 계산) 지원 -λ©”λͺ¨λ¦¬ 관리 쉬움 컴파일 μ–Έμ–΄ ν”„λ‘œκ·Έλž¨μ„ λΉŒλ“œ, μ‹€ν–‰ν•˜λŠ” κ³Όμ • λΆˆν•„μš”. μ½”λ“œμ˜ κ²°κ³Όλ₯Ό λ°”λ‘œ 확인할 수 μžˆλ‹€. μ–Έμ–΄μ˜ μžμœ λ„κ°€ λ†’λ‹€ 2. μŠ€μœ„ν”„νŠΈμ˜ 언어적 νŠΉμ§• Safe - μ•ˆμ „ν•œ ν”„λ‘œκ·Έλž˜λ° 지ν–₯ μ†Œν”„νŠΈμ›¨μ–΄μ˜ 질 ν–₯상 λͺ©μ  클래슀 Class 문제 해결을 μœ„ν•œ(같은 μ’…λ₯˜μ˜ 집단에 μ†ν•˜λŠ”) 속성과 ν–‰μœ„λ₯Ό μ •μ˜ν•œ 것. 객체가 λ§Œλ“€μ–΄μ§€κΈ° μœ„ν•œ 청사진 ν΄λž˜μŠ€λŠ” λ‹€λ₯Έ 클래슀 λ˜λŠ” μ™ΈλΆ€ μš”μ†Œμ™€ λ…λ¦½μ μœΌλ‘œ λ””μžμΈν•΄μ•Ό ν•œλ‹€ 객체 Object 클래슀의 μΈμŠ€ν„΄μŠ€, μ‹€μ œλ‘œ λ©”λͺ¨λ¦¬μ— ν• λ‹Ήλ˜μ–΄ λ™μž‘ν•˜λŠ” λͺ¨μ–‘을 κ°–μΆ˜ 것. 객체 == 클래슀의 μΈμŠ€ν„΄μŠ€ 객체 != 인슀..

Swift 2021.07.04
728x90