Notice
Recent Posts
Recent Comments
Link
관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] 1. MVC, Delegate, Interface Builder 본문

iOS 기본 (swift)

[iOS - swift] 1. MVC, Delegate, Interface Builder

jake-kim 2020. 4. 2. 13:38

1. MVC

 - Model : 데이터 형태를 모아 놓은 것 또는 데이터들의 모임

1
2
3
4
5
6
7
8
import UIKit
 
class MovieVO {
    var name: String!
    var rating: Double!
    var opendate: String!
}
 
 

- View : 사용자 입장에서 보여지는 부분 (스토리보드)

- Control : Model과 View간의 관계를 연결, 관리 (controller)

UIViewController에 뷰와 Model을 관리하는 역할이 정의되어 있으므로, 모든 ViewController는 이것을 상속받아서 사용 


2. 기타 파일

 1) AppDelegate.swift : 생명 주기 관리를 하는 파일(싱글톤, AppDelegate구현 한 클래스)

 2) LaunchScreen.storyboard : 시작화면 (Splash, launch screen)

1
2
3
4
5
6
(AppDelegate.swift)
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    
    sleep(5// 5 seconds sleep (in Splash screen)
 
    return true
  }
 
 

 3) ViewController.swift : 위에서 설명했듯이, view와 model관계를 관리하며 보통 화면 한 개당 하나씩 필요


3. Interface Builder

 - 코드를 작성하지 않고 사용자가 인터페이스를 간단하게 작성할 수 있도록 해주는 xcode안에서의 프로세스

 - 코드로 표현되지 않으며, storyboard상에 디자인적으로 표현

 

 - ctrl + 드래그 앤 드롭으로 표현

 1) 아울렛 변수 : Interface Builder의 view를 스위프트 클래스가 참조할 수 있도록 연결된 멤버 변수

1
@IBOutlet var uiTitle: UILabel!
 

2) 액션 메소드

1
@IBAction func sayHello(_ sender: Any) { }
 

4. Segue(세그웨이)

 - 스토리보드를 통해 출발지와 목적지를 직접 지정하는 방식

 

Comments