본문 바로가기

 𝗔𝗣𝗣𝗟𝗘/UIKit & SwiftUI

UIKit - UIKit에 대하여

 

 

 

UIKit

💡 UIKit

iOS 애플리케이션의 사용자 인터페이스를 구축하고 관리하기 위한 프레임워크이다. iOS 앱에서 버튼, 레이블, 텍스트 필드, 테이블 뷰 등의 UI 요소를 생성하고 관리하는 데 사용되며, iOS 앱의 그래픽 요소와 이벤트 처리, 애니메이션 및 사용자 상호 작용을 담당하여 앱의 외관과 동작을 제어한다. 그리고 iOS 애플리케이션의 주요한 UI 구성 요소들을 제공하며, 앱의 화면을 만들고 사용자와의 상호 작용을 관리하는 데 필수적인 도구이다.

 

 

 

 

 UIKit이 사용된 앱이 가져야 할 필수 조건 

  • 앱 아이콘
  • Launch screen storyboard(Splash Screen)

 

 

 

 

 UIKit 앱의 코드 구조 

출처: 공식문서 

 

 

AppDelegate

   앱의 진입점이며, 앱의 생명 주기 이벤트 관리

   → 주요한 메소드
     · application(_:didFinishLaunchingWithOptions:)

     · applicationWillResignActive(\_:)

     · applicationDidEnterBackground(\_:)

     · applicationWillEnterForeground(\_:)

     · applicationDidBecomeActive(\_:)

     · applicationWillTerminate(\_:)

 

View Controllers (뷰 컨트롤러)

화면의 뷰를 관리하고 사용자 인터페이스 표시

   → 주요 뷰 컨트롤러 클래스

      · UIViewController

      · UINavigationController

      · UITabBarController

 

Views (뷰)

   사용자 인터페이스의 구성 요소를 나타냄

   → UIKit에서는 다양한 뷰 클래스가 제공되며, 버튼, 레이블, 이미지 뷰, 테이블 뷰 등이 있음

 

Storyboards 또는 코드로 된 인터페이스

   사용자 인터페이스를 구성하는 데 사용되는 시각적 도구 또는 코드로 생성된 화면 집합

 

모델 (Model)

   앱의 데이터 및 비즈니스 로직을 처리합니다.

   → 모델은 데이터의 구조, 저장 및 관리를 책임지며, 종종 네트워크 요청, 데이터베이스 액세스 등을 포함

 

리소스 (Resources)

   이미지, 사운드, 문자열 및 기타 정적 파일과 리소스 포함

   → 이러한 리소스는 앱에서 사용되는 컨텐츠를 나타냄

 

 

 

 

SwiftUI와 UIKit의 차이점

 

특징 SwiftUI UIKit
선언적 구문 선언적 구문 사용하여 사용자 인터페이스를 정의 명령형 구문 사용하여 사용자 인터페이스를 작성
UI 업데이트 방식 상태와 바인딩을 사용하여 자동으로 업데이트 직접 UI 업데이트를 관리해야 함
코드 줄 수 더 적은 코드 라인으로 UI를 작성할 수 있음 상대적으로 더 많은 코드 라인이 필요함
새로운 기능 지원 iOS 13부터 지원 iOS 2부터 지원
플랫폼 호환성 iOS, macOS, watchOS, tvOS 모두 호환 주로 iOS에 초점을 맞춤
레이아웃 시스템 새로운 레이아웃 시스템 사용 Auto Layout 및 프레임 기반 레이아웃 시스템 사용
라이브 프리뷰 라이브 프리뷰가 내장되어 있음 Xcode에서 라이브 프리뷰 사용 가능
런타임 에러 감소 컴파일 타임에 오류를 감지하여 런타임 에러 감소 런타임 에러 발생 가능성이 있음

 

 

 

 

 

' 𝗔𝗣𝗣𝗟𝗘 > UIKit & SwiftUI' 카테고리의 다른 글

UIKit - UIViewController & UIView  (4) 2024.03.18
Recent Posts
Visits
Today
Yesterday
Archives
Calendar
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31