Swift11 - ํ๋กํผํฐ Properties Properties associate values with a particular class, structure, or enumeration. Stored properties store constant and variable values as part of an instance, whereas computed properties calculate (rather than store) a value. Computed properties are provided by classes, structures, and enumerations. Stored properties are provided only by classes and structures. ํ๋กํผํฐ๋ - ์ ์ฅ ํ๋กํผํฐ๋ ๊ตฌ์กฐ์ฒด, ํด๋์ค.. 2021. 2. 2. Swift10 - first class citizen 1๊ธ๊ฐ์ฒด๋? - ์ปดํจํฐ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋์์ธ์์, ์ผ๊ธ ๊ฐ์ฒด๋ ๋ค๋ฅธ ๊ฐ์ฒด๋ค์ ์ผ๋ฐ์ ์ผ๋ก ์ ์ฉ ๊ฐ๋ฅํ ์ฐ์ฐ์ ๋ชจ๋ ์ง์ํ๋ ๊ฐ์ฒด๋ฅผ ๊ฐ๋ฆฌํจ๋ค. - ๋ณดํต ํจ์์ ๋งค๊ฐ๋ณ์๋ก ๋๊ธฐ๊ธฐ, ์์ ํ๊ธฐ, ๋ณ์์ ๋์ ํ๊ธฐ์ ๊ฐ์ ์ฐ์ฐ์ ์ง์ํ ๋ ์ผ๊ธ ๊ฐ์ฒด๋ผ๊ณ ํ๋ค. - ์ผ๊ธ๊ฐ์ฒด๋ ๋ฌด์จ ํํ์ ๋ฐ๋๋ค๋ ๊ฒ ์๋๋ผ, ์ฌ์ฉํ ๋ ๋ค๋ฅธ ์์๋ค๊ณผ ์๋ฌด๋ฐ ์ฐจ๋ณ์ด ์๋ค๋ ๊ฒ์ ๋ปํ๋ค. - ์ ์์ ์ค์์ฒ๋ผ ๊ฐ์ฅ ๊ฐ๋จํ ์ค์นผ๋ผ ์๋ฃํ์ ๋๋ถ๋ถ ์ผ๊ธ ๊ฐ์ฒด์ด๋ค. - ์ค์ํํธ์์๋ ํด๋ก์ ๋ฅผ ํตํด ์ผ๊ธํจ์๋ฅผ ๊ตฌํ ์ผ๊ธ ๊ฐ์ฒด์ ์ด๊ธ ๊ฐ์ฒด. ALGOL์์ ์ค์๋ ํํ์์ ์ฌ์ฉํ๊ฑฐ๋ ๋ณ์์ ํ ๋นํ ์ ์์ผ๋ฉฐ, ํ๋ก์์ ์ ๋งค๊ฐ๋ณ์๋ก ๋๊ฒจ์ง ์ ์๋ค. ํ์ง๋ง ํ๋ก์์ ์ ๊ฒฝ์ฐ ํ๋ก์์ ์ฝ์์ ํธ์ถ ๋์ ํน์ ๋งค๊ฐ ๋ณ์๋ก ๋ฑ์ฅํ ์ ์์ ๋ฟ์ด๋ฉฐ, ํ๋ก์์ .. 2021. 2. 2. Swift09 - ํด๋ก์ Closures Closures are self-contained blocks of functionality that can be passed around and used in your code. Closures in Swift are similar to blocks in C and Objective-C and to lambdas in other programming languages. ํด๋ก์ ๋? ํด๋ก์ ๋ ์คํ๊ฐ๋ฅํ ์ฝ๋ ๋ธ๋ญ์ ๋๋ค. ํจ์์ ๋ค๋ฅด๊ฒ ์ด๋ฆ์ ์๋ ํ์ํ์ง๋ ์์ง๋ง, ๋งค๊ฐ๋ณ์ ์ ๋ฌ๊ณผ ๋ฐํ ๊ฐ์ด ์กด์ฌ ํ ์ ์๋ค๋ ์ ์ด ๋์ผํฉ๋๋ค. ํจ์๋ ์ด๋ฆ์ด ์๋ ํด๋ก์ ์ ๋๋ค. ์ผ๊ธ๊ฐ์ฒด๋ก ์ ๋ฌ์ธ์, ๋ณ์, ์์ ๋ฑ์ ์ ์ฅ ๋ฐ ์ ๋ฌ์ด ๊ฐ๋ฅํฉ๋๋ค. ํด๋ก์ ๋ ํจ์์ ์ ๋ฌ์ธ์์ธ ์ฝ๋ฐฑํจ์๋ก ์ฃผ๋ก ์ฌ์ฉ๋๋ค ๊ธฐ๋ณธ ํด๋ก์ .. 2021. 2. 2. Swift08 - ๊ฐ ํ์ vs ์ฐธ์กฐํ์ ๊ฐ ํ์ (Value Type) ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌ ํ ๋ ๊ฐ์ ๋ณต์ฌํ์ฌ ์ ๋ฌํฉ๋๋ค. ๊ตฌ์กฐ์ฒด ์ด๊ฑฐํ ๊ฐ ํ์ ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ์ฐ๊ด๋ ๋ช๋ช์ ๊ฐ๋ค์ ๋ชจ์์ ํ๋์ ๋ฐ์ดํฐ ํ์ ์ผ๋ก ํํํ๊ณ ์ถ์ ๊ฒฝ์ฐ ๋ค๋ฅธ ๊ฐ์ฒด ๋๋ ํจ์ ๋ฑ์ผ๋ก ์ ๋ฌ๋ ๋ ์ฐธ์กฐ๊ฐ ์๋๋ผ ๋ณต์ฌ(๊ฐ ๋ณต์ฌ) ํ ๊ฒฝ์ฐ ์์ ์ ์์ํ ํ์๊ฐ ์๊ฑฐ๋, ๋ค๋ฅธ ํ์ ์ ์์ ๋ฐ์ ํ์๊ฐ ์๋ ๊ฒฝ์ฐ ์ค์ํํธ์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ ํ์ ์ ๋ชจ๋ ๊ตฌ์กฐ์ฒด๋ก ๊ตฌํ๋์ด์์ต๋๋ค. ์ค์์คํธ๋ ๊ตฌ์กฐ์ฒด์ ์ด๊ฑฐํ ์ฌ์ฉ์ ์ ํธํฉ๋๋ค. struct ValueType { var property = 1 } // ์ฒซ ๋ฒ์งธ ๊ตฌ์กฐ์ฒด ์ธ์คํด์ค let firstStructInstance = ValueType() // ๋ ๋ฒ์งธ ๊ตฌ์กฐ์ฒด ์ธ์คํด์ค์ ์ฒซ ๋ฒ์งธ ์ธ์คํด์ค ๊ฐ ๋ณต์ฌ var secondStructInsta.. 2021. 2. 1. Switf07 - ๊ตฌ์กฐ์ฒด vs ํด๋์ค vs ์ด๊ฑฐํ ํด๋์ค - ๋จ์ผ์์ - ํ๋กํผํฐ, ๋ฉ์๋ ๊ฐ๋๋ค - ์ฐธ์กฐํ์ - appleํ๋ ์์ํฌ์ ๋๋ถ๋ถ์ ํฐ ๋ผ๋๋ ๋ชจ๋ ํด๋์ค๋ก ๊ตฌ์ฑ ๊ตฌ์กฐ์ฒด - ๋ค๋ฅธ ์ธ์ด์ ๊ตฌ์กฐ์ฒด๋ณด๋ค ๋ค์ํ ๊ธฐ๋ฅ์ ๊ฐ๋๋ค - ์์ ๋ถ๊ฐ - ํ๋กํผํฐ, ๋ฉ์๋ ๊ฐ๋๋ค - ๊ฐ ํ์ - swift์ ๋๋ถ๋ถ์ ํฐ ๋ผ๋๋ ๊ตฌ์กฐ์ฒด๋ก ๊ตฌ์ฑ๋์ด ์๋ค ์ด๊ฑฐํ - ์์๋ถ๊ฐ - ์ด๊ฑฐํ ์์ฒด๊ฐ ํ๋์ ๊ฐ ํ์ - ์ด๊ฑฐํ case ํ๋ํ๋๊ฐ ์ ์๋ฏธํ ๊ฐ - ๊ฐํ์ 2021. 2. 1. Swift-06 ์ด๊ฑฐํ Enumerations An enumeration defines a common type for a group of related values and enables you to work with those values in a type-safe way within your code. ์ด๊ฑฐํ์ด๋? - ์ ์ฌํ ์ข ๋ฅ์ ์ฌ๋ฌ ๊ฐ์ ํ ๊ณณ์ ๋ชจ์์ ์ ์ํ ๊ฒ. - enum ์์ฒด๊ฐ ํ๋์ ๋ฐ์ดํฐ ํ์ - ๋๋ฌธ์ ์นด๋ฉ์ผ์ด์ค๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฆ์ ์ ์. - ๊ฐ case๋ ๊ทธ ์์ฒด๊ฐ ๊ณ ์ ์ ๊ฐ์ ๋๋ค.(๊ฐ case์ ์๋์ผ๋ก ์ ์๊ฐ์ด ํ ๋น๋์ง ์์) - ๊ฐ case๋ ์๋ฌธ์ ์นด๋ฉ์ผ์ด์ค๋ก ์ ์ - ๊ฐ case๋ ํ ์ค์ ๊ฐ๋ณ๋ก๋, ํ ์ค์ ์ฌ๋ฌ๊ฐ๋ ์ ์ํ ์ ์์ต๋๋ค. enum Weekday { case mon case tue.. 2021. 2. 1. ์ด์ 1 2 3 4 5 ๋ค์