๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐ŸŽ iOS/iOS

[iOS ๋ฉด์ ‘์งˆ๋ฌธ] Cocoa Touch Framework๋ž€?

by Fomagran ๐Ÿ’ป 2020. 12. 8.
728x90
๋ฐ˜์‘ํ˜•

์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค!

 

์˜ค๋Š˜ ์•Œ์•„๋ณผ๊ฑด iOS ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ์ค‘ ๊ฐ€์žฅ ์ตœ์ƒ๋‹จ์— ์œ„์น˜ํ•œ ์ฝ”์ฝ”์•„ ํ„ฐ์น˜ ํ”„๋ ˆ์ž„์›Œํฌ ์ž…๋‹ˆ๋‹ค!!

 

๋จผ์ € ์ฝ”์ฝ”์•„ ํ„ฐ์น˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์•Œ์•„๋ณด๊ธฐ ์ „์— iOS์˜ ์šด์˜์ฒด์ œ๋Š” ์–ด๋–ป๊ฒŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์„๊นŒ์š”?

 

๋ฐ”๋กœ ์•„๋ž˜์™€ ๊ฐ™์ด Cocoa Touch - Media - Core Services - Core OS ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ด๋Ÿฌํ•œ ๋‹จ๊ณ„๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์–ผ๋งˆ๋‚˜ ์†์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š๋ƒ์— ๋”ฐ๋ผ์„œ ๊ฒฐ์ •๋œ๋‹ค๊ณ  ํ•ด์š”.

 

์ฆ‰, Core OS๋Š” ์‚ฌ์šฉํ•˜๊ธฐ ๊ฐ€์žฅ ์–ด๋ ค์šด ํ”„๋ ˆ์ž„์›Œํฌ์ด๊ณ  Cocoa Touch๋Š” ๊ฐ€์žฅ ์†์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด์ฃ !

 

 

๊ฐ ๊ณ„์ธต์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ์„ค๋ช…๋“œ๋ฆฌ๋ฉด

 

๊ฐ€์žฅ ์•„๋ž˜ ๋‹จ๊ณ„์— ์žˆ๋Š” Core OS๋Š” ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ๋„คํŠธ์›Œํฌ ๊ฐ์ข… ํŒŒ์ผ ๋“ฑ์„ ๊ด€๋ฆฌํ•˜๋Š” API๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ ๋‹ค์Œ์œผ๋กœ Core Services๋Š” GPS๋‚˜ SQLite Core Foundation ๊ฐ™์€ API๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  Media๋Š” ๋น„๋””์˜ค๋‚˜ ์˜ค๋””์˜ค ๊ทธ๋ž˜ํ”ฝ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” API๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ทธ ๋‹ค์Œ์œผ๋กœ ๊ฐ€์žฅ ์ƒ์œ„ ๊ณ„์ธต์ธ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ์™€ ํ•จ๊ป˜ ๊ธฐ์ˆ ๋“ค์„ ๋ณด๋‹ค ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Cocoa Touch๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

 

Cocoa Touch๋Š” ๋ฉ”๋ชจ๋ฆฌ,๋„คํŠธ์›Œํฌ.GPS,SQLite,๋น„๋””์˜ค,์˜ค๋””์˜ค,์• ๋‹ˆ๋ฉ”์ด์…˜ ์ด ์™ธ์—๋„ ์ˆ˜๋ฐฑ๊ฐœ์˜ API๋ฅผ ํ’ˆ๊ณ  ์žˆ๋Š”

 

์–ด๋งˆ์–ด๋งˆํ•œ ๋…€์„์ด์ฃ !

 

iOS ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค๋ณด๋ฉด import FoundationKit import UIKit ๋“ฑ์„ ๋ณด์‹  ์ ์ด ์žˆ์„๊ฑฐ์—์š”.

 

์ด ํ•ต์‹ฌ์ ์ธ ๋‘๊ฐœ์˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ’ˆ๊ณ  ์žˆ๋Š”๊ฒŒ ๋ฐ”๋กœ ์ฝ”์ฝ”์•„ ํ„ฐ์น˜ ํ”„๋ ˆ์ž„์›Œํฌ ์ž…๋‹ˆ๋‹ค.

 

๊ฐ€์žฅ ํ•ต์‹ฌ์ ์ธ ๋‘๊ฐœ์˜ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์„ค๋ช…๋“œ๋ฆด๊ฒŒ์š”.

 

UIKit


UIKit์€ ๋ง User Interface๋ฅผ ๋‹ด๋‹นํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.

 

UIKit์˜ ์—ญํ• ์ด ์–ด๋–ค ๊ฒƒ๋“ค์ด ์žˆ์„๊นŒ์š”?

 

View์™€ Control์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. (View์™€ Control์ด ์—†๋‹ค๋ฉด ์•ฑ์ด ๋งŒ๋“ค์–ด์งˆ ์ˆ˜๊ฐ€ ์—†๊ฒ ์ฃ ?)

 

์ฆ‰, ViewController๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

 

๋˜ํ•œ ์œ ์ €๊ฐ€ ํ„ฐ์น˜ํ•˜๋Š” ์œ ์ €์˜ ํ„ฐ์น˜ ์ธํ„ฐ๋ž™์…˜ ์˜ˆ๋ฅผ ๋“ค๋ฉด ๋“œ๋ž˜๊ทธ์™€ ๋“œ๋กญ ์ œ์Šค์ณ ํƒญ ์ˆ์ปท ๋“ฑ์„

 

๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ๋„ ํฌํ•จ๋˜์–ด ์žˆ์ฃ .

 

์—ฌ๊ธฐ๊นŒ์ง€๋งŒ ์‚ดํŽด๋ด๋„ UIKit์ด ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ธ์ง€ ์•Œ ์ˆ˜ ์žˆ์„๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

FoundationKit


FoundationKit์€ ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์„ ๋‹ด๋‹นํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.

 

๊ทธ๋ ‡๋‹ค๋ฉด ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์ด ์–ด๋–ค ๊ฒƒ์ผ๊นŒ์š”?

 

์›์‹œ ๋ฐ์ดํ„ฐ(Int,String),์ปฌ๋ ‰์…˜(Array,Set,Dictionary) ๋“ฑ์„ ํฌํ•จํ•˜๊ณ  ์ปฌ๋ ‰์…˜์€ filteringํ•ด์ฃผ๊ณ  sortingํ•ด์ฃผ๋Š” ๊ฒƒ๊นŒ์ง€๋„

 

FoundationKit์•ˆ์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ Notification์ด๋‚˜ Extension ์˜ˆ์™ธ ์ฒ˜๋ฆฌ URL ๋„คํŠธ์›Œํฌ ๋“ฑ์„ ํฌํ•จํ•˜๊ณ  ์žˆ๋Š”

 

์ •๋ง UIKit ๋ชป์ง€ ์•Š๊ฒŒ ์ •๋ง ์–ด๋งˆ์–ด๋งˆํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.

 

์ด ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ์—†๋‹ค๋ฉด ์•ฑ์„ ๋งŒ๋“ค๊ธด ์ปค๋…• ์ฝ”๋“œ๋กœ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋„ ์–ผ๋งˆ ์—†์„ ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค....

 

์ฐธ๊ณ ๋กœ Foundation์€ Core Service ๊ณ„์ธต์— ์žˆ๋Š” Core Foundation์˜ ํ•˜์œ„ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.

 

 

 

์—ฌ๊ธฐ์„œ ๊ถ๊ธˆ์ฆ์ด ์ƒ๊ธฐ์‹ค๋งŒํ•œ๊ฒŒ ์žˆ๋Š”๋ฐ์š”.

 

๊ทธ๋Ÿผ ์™œ UIKit๋งŒ import ๋˜์–ด์žˆ์–ด๋„ ์ปฌ๋ ‰์…˜,์›์‹œ๋ฐ์ดํ„ฐ,Notification์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

 

๊ทธ๊ฑด ๋ฐ”๋กœ UIKit์ด FoundationKit์„ ์ƒ์†๋ฐ›๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

 

์•„๋ž˜ ์‚ฌ์ง„์„ ๋ณด๋ฉด UIKit ์ •์˜์— ๊ฐ€์žฅ ์ฒซ ๋ฒˆ์งธ๋กœ import Foundation์ด ๋ณด์ž…๋‹ˆ๋‹ค.

 

 

728x90
๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€