์ฌ์ฉ์์ ์ทจํฅ ๋ถ์์ ํตํ ๋ง์ถคํ ๋น๋์ค ์คํธ๋ฆฌ๋ฐ ํ๋ ์ด์ด
๊ตณ์ด์ค๋
AVFoundation, AVKit์ ํ์ฉํด ๋ค์ดํฐ๋ธ ์ฑ ๋ด์์ Pixabay REST API๋ก ๋์์์ ์คํธ๋ฆฌ๋ฐํ๊ณ ,
์ฌ์ฉ์๊ฐ ์ํ๋ ๋ฐฉํฅ์ผ๋ก ํํฐ๋ง, ๋ถ๋งํน, ํ๋ ์ด๋ฆฌ์คํธ ์ถ๊ฐ ๋ฑ ๋ค์ํ ๋ง์ถคํ ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ ์๋ iOS ์ ํ๋ฆฌ์ผ์ด์
์
๋๋ค.
| ๊ธฐ๊ฐ | ์์ ๋ด์ฉ |
|---|---|
| 6์ 5์ผ ~ 6์ 8์ผ | ๊ธฐํ ๋ฐ ๋์์ธ, ์๊ตฌ์ฌํญ ์ ๋ฆฌ, ๊ณตํต ์ฝ๋ ๊ธฐ๋ฐ ๊ตฌ์ถ |
| 6์ 9์ผ ~ 6์ 15์ผ | UI ์ค๊ณ ๋ฐ ๋ก์ง ๊ตฌํ |
| 6์ 15์ผ ~ 6์ 18์ผ | QA ํ ์คํธ, UX/UI ๊ฐ์ (GitHub Projects ์ฌ์ฉ) |
- ์ฌ์ฉ์ ์ทจํฅ ๋ถ์ ์๊ณ ๋ฆฌ์ฆ์ ํตํ ์ถ์ฒ ๋์์ ์ ์
- ๊ฒ์์ด๋ฅผ ํตํ ๋น๋์ค ๊ฒ์ ๋ฐ ํํฐ๋ง
- ์์ฒญํ ๋น๋์ค ๊ธฐ๋ก ํธ๋ํน ๋ฐ ์ ์ฅ
- ๋น๋์ค ๋ถ๋งํฌ ๊ธฐ๋ฅ, ํ๋ ์ด ๋ฆฌ์คํธ ์์ฑ
- ๋ค์ํ ํญ ์ ์ค์ณ (Context Menu, Swipe to deleteโฆ)
- ๋น๋์ค ํ์ง ์ ํ์ ๋ฐ๋ฅธ ์ฌ์ฉ์ ๋คํธ์ํฌ ์์ ์ฑ ์ง์
- ๋น๋์ค PIP(Picture-in-Picture) ๋ชจ๋ ์ ํ ๊ธฐ๋ฅ
- ๋คํฌ๋ชจ๋ ์ง์
- iPad: ์ธ๋ก/๊ฐ๋ก ๋ฐฉํฅ ๋ชจ๋ ์ต์ ํ๋ UI ์ง์
| ํ๋ฉด | ์ฃผ์ ๊ธฐ๋ฅ |
|---|---|
| Onboarding | - ์ฑ ์ต์ด ์คํ ์ ์จ๋ณด๋ฉ ์ฌ๋ผ์ด๋ ์คํ |
| HomeView | - ๊ธฐ๋ณธ ๋น๋์ค ๋ชฉ๋ก ์ถ๋ ฅ ๋ฐ ๊ฐ์ธํ ๋ ๋ง์ถคํ ๋น๋์ค๋ฅผ ํ์ด์ง๋ค์ด์
์ผ๋ก ์ถ๋ ฅ - ๋น๋์ค ๋ถ๋งํฌ ๋ฑ๋ก ๋ฐ ํ๋ ์ด๋ฆฌ์คํธ ์ถ๊ฐ |
| SearchView | - ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ํค์๋๋ก ์์ ๊ฒ์ - ์นดํ ๊ณ ๋ฆฌ, ์ ๋ ฌ ๊ธฐ์ค(์ธ๊ธฐ์ / ์ต์ ์), ์์ ๊ธธ์ด์ ํํฐ๋ง ๊ธฐ๋ฅ ์ ๊ณต |
| LibraryView | - ์์ฒญํ ๋น๋์ค ๋ชฉ๋ก ์ถ๋ ฅ ๋ฐ ๊ฒ์ ๊ธฐ๋ฅ ์ ๊ณต - ๋ถ๋งํฌ๋ ๋น๋์ค ๋ณด๊ด, ํ๋ ์ด๋ฆฌ์คํธ ์์ฑ ๋ฐ ๋ณด๊ด |
| InterestView | - ๋ค์ํ ๋ถ์ผ์ ์ทจํฅ ์ ํ (์ต๋ 5๊ฐ) |
| SettingView | - ๋คํฌ๋ชจ๋ ์ง์ - ๋น๋์ค ํด์๋ ์ค์ - ๋ฉ์ผ ํผ๋๋ฐฑ ๊ธฐ๋ฅ ์ง์ |
| VideoPlayer | - PIP ๋ชจ๋ ์ ํ ๊ฐ๋ฅ |
| Home | Search | History |
|---|---|---|
![]() |
![]() |
![]() |
| Interest | Settings | Video Player | PIP |
|---|---|---|---|
![]() |
![]() |
![]() |
โโโ Media/
โ โโโ Application/
โ โโโ Core/
โ โ โโโ Common/
โ โ โโโ Extensions/
โ โ โโโ Protocols/
โ โ โโโ Utils/
โ โ โโโ NibView/
โ โ โโโ Shimmer/
โ โ โโโ StoryboardViewController/
โ โโโ Infrastructure/
โ โโโ Model/
โ โโโ Presentation/
โ โ โโโ Bookmark/
โ โ โโโ Home/
โ โ โโโ Main/
โ โ โโโ Onboarding/
โ โ โโโ Search/
โ โ โโโ SelectedCategory/
โ โ โโโ Settings/
โ โโโ Resources/
โ โ โโโ Assets/
โ โ โโโ Info/
โ โ โโโ LaunchScreen/
โโโ Frameworks/- ์ธ์ด: Swift
- ํ๋ ์์ํฌ: AVFoundation, AVKit, UIKit
- ๋น๋๊ธฐ ์ฒ๋ฆฌ: GCD(DispatchQueue), Swift Concurrency (async/await)
- ๋คํธ์ํน: URLSession
- ์ ์ฅ์: UserDefaults, CoreData
- ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ: TSAlertController โ ์ปค์คํ ์๋ฆผ์ฐฝ ๊ตฌ์ฑ
- API: Pixabay REST API
- ๋ฒ์ ๊ด๋ฆฌ ๋ฐ ํ์ : Git, GitHub (GitHub Issues, Projects, Pull Requests ํ์ฉ)
-
๋ฆฌํฌ์งํ ๋ฆฌ ํด๋ก
git clone https://github.com/rlarjsdn3/ESTSoft-2th-Team2-2nd-Project.git cd ESTSoft-2th-Team2-2nd-Project -
Xcode์์ ํ๋ก์ ํธ ์ด๊ธฐ Media.xcodeproj ๋๋ .xcworkspace ํ์ผ์ ์คํํ์ธ์.
-
๋น๋ ์ค์ ๋ณ๊ฒฝ Xcode ์๋จ์ Run ๋์ ์ค์ ์์ Release ๋ชจ๋๋ก ๋ณ๊ฒฝ ํ ์คํํด์ผ ํฉ๋๋ค.
(๊ธฐ๋ณธ Debug ๋ชจ๋๋ก ์คํ ์ ์ผ๋ถ UI ๋๋ ๊ธฐ๋ฅ์ด ์ ์ ๋์ํ์ง ์์ ์ ์์ต๋๋ค) -
์๋ฎฌ๋ ์ดํฐ ๋ฒ์ ์ฃผ์์ฌํญ iOS 18.4 ์ด์ ์๋ฎฌ๋ ์ดํฐ์์๋ ์ผ๋ถ UI ๋๋ ๊ธฐ๋ฅ์ด ์ ์์ ์ผ๋ก ์๋ํ์ง ์์ ์ ์์ต๋๋ค.
์ ์ ์๋์ ์ํด iOS 18.4 ๋ฏธ๋ง ์๋ฎฌ๋ ์ดํฐ ์ฌ์ฉ์ ๊ถ์ฅํฉ๋๋ค. -
์คํ (โ + R) iOS 17+ ์๋ฎฌ๋ ์ดํฐ ๋๋ ์ค์ ๋๋ฐ์ด์ค์์ ์คํ ๊ฐ๋ฅํฉ๋๋ค.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| @aldalddl | @rlarjsdn3 | @jaehun6165 | @HyeonjinBack | @puuurm | @Jeon-GwangHo |
| Design Lead UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |
Project Manager UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |
Speaker(์๋ฃ) UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |
Technical Writer UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |
QA UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |
Speaker UX/UI ๋ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ |












