๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ Today I Learned/Project ์ •๋ฆฌ2

[Swift] Swift ์ •๋ฆฌ Swift ๋ž€? ์• ํ”Œ์˜ iOS, macOS, watchOS, tvOS ๋“ฑ ์ž์‚ฌ์˜ ์ œํ’ˆ ๊ฐœ๋ฐœ์— ํ™œ์šฉํ•˜๊ณ ์ž ๋งŒ๋“  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ๐Ÿ“• Swift ์–ธ์–ด์˜ ํŠน์ง• 1. ์•ˆ์ „์„ฑ a. Swift๋Š” ํƒ€์ž…์ด ์—„๊ฒฉํ•˜๋‹ค. (= Type Safeํ•œ ์–ธ์–ด์ด๋‹ค.) b. Swift๋Š” nil์— ์—„๊ฒฉํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ด๋‹ค. nil์„ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ ? ๋ชจ์–‘์˜ ์˜ต์…”๋„(Optional)์„ ์ด์šฉํ•˜์—ฌ ํ‘œ์‹œํ•ด์ค˜์•ผ ํ•œ๋‹ค. 2. ํ‘œํ˜„์„ฑ a. ๋‹ค์ค‘ ํŒจ๋Ÿฌ๋‹ค์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ์ง€์› ๋ช…๋ นํ˜•, ๊ฐ์ฒด์ง€ํ–ฅ, ํ•จ์ˆ˜ํ˜•, ํ”„๋กœํ† ์ฝœ ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํŒจ๋Ÿฌ๋‹ค์ž„์„ ์ง€์›ํ•œ๋‹ค. ๐Ÿ“Œ Swift API Design Guidelines ๋„ค์ด๋ฐ์ด๋‚˜ ์ปจ๋ฒค์…˜ ๋“ฑ์„ ์ •ํ•  ๋•Œ ์ฐธ๊ณ ํ•˜๊ธฐ ์ข‹์€ ๊ฐ€์ด๋“œ ๋ผ์ธ์ด๋‹ค. Swift์—์„œ๋Š” ์นด๋ฉœ ์ผ€์ด์Šค๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. var camelCase var snake_c.. 2023. 12. 4.
[Swift] ๊ณ„์‚ฐ๊ธฐ ๊ตฌํ˜„ํ•˜๊ธฐ ๋‚˜๋งŒ์˜ ๊ณ„์‚ฐ๊ธฐ ๋งŒ๋“ค๊ธฐ ๐Ÿ“Œ ํ•„์ˆ˜ ๊ตฌํ˜„ ๊ธฐ๋Šฅ Lv1 : ๋”ํ•˜๊ธฐ, ๋นผ๊ธฐ, ๋‚˜๋ˆ„๊ธฐ, ๊ณฑํ•˜๊ธฐ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” Calculator ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค๊ณ , ํด๋ž˜์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•˜๊ณ  ์ถœ๋ ฅํ•˜๊ธฐ Lv2 : Lv1์—์„œ ๋งŒ๋“  Calculator ํด๋ž˜์Šค์— ์ถ”๊ฐ€ ์—ฐ์‚ฐ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ์—ฐ์‚ฐ ์ง„ํ–‰ ํ›„ ์ถœ๋ ฅํ•˜๊ธฐ Lv3 : AddOperation(๋”ํ•˜๊ธฐ), SubstractOperation(๋นผ๊ธฐ), MultiplyOperation(๊ณฑํ•˜๊ธฐ), DivideOperation(๋‚˜๋ˆ„๊ธฐ) ์—ฐ์‚ฐ ํด๋ž˜. ์Šค๋ฅผ์„ ๋งŒ๋“  ํ›„ ํด๋ž˜์Šค๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ๊ณ ๋ คํ•˜์—ฌ Calculator ํด๋ž˜์Šค์™€ ๊ด€๊ณ„๋ฅผ ๋งบ๊ธฐ Lv 1 ( ๋”ํ•˜๊ธฐ, ๋นผ๊ธฐ, ๋‚˜๋ˆ„๊ธฐ, ๊ณฑํ•˜๊ธฐ ์—ฐ์‚ฐ ) class Calculator { func calculate(operation: Str.. 2023. 12. 1.