init(coder:)
스토리보드를 통해 ViewController들을 만들 경우 ViewController의 객체가 생성될 때 초기화하는 메소드
이 메소드에서 초기화 작업을 할 때 ViewController는 그들의 lifetime동안 필요한 자원들을 할당받게 된다. 아직 이 시점에서는 View가 생성된 것이 아니기 때문에, View의 요소들에 대한 접근을 시도한다면 에러가 발생한다.
init(nibName:bundle:)
스토리보드가 아닌 분리된 nib파일로 관리될 경우 이 메소드를 초기화 용도로 사용할 수 있다.
loadView
본격적으로 화면에 띄워질 View를 만드는 메소드이다. outlet과 action들이 이 메소드에서 생성되고 연결된다.
viewDidLoad
이 메소드가 호출되는 시점에서는 outlet들이 메모리에 위치하고 있다.
생애주기에서 단 한번만 호출
화면에서 보여지기 전 데이터들을 뿌려주는 행위에 대한 코드를 작성
viewWillApper
ViewController의 화면이 올라오고 난 이후에 호출되는 메소드
애니메이션을 실행시키거나, 데이터의 업데이트등을 수행
화면 전환을 통해 현재의 화면으로 돌아올때도 호출
viewDidAppear
View가 완전히 화면에 나타나고 호출되는 메소드
didReceiveMemoryWarning
너무 많은 메모리를 사용한다면 이를 알리는 메소드
이를 무시하면 강제종료
viewWillDisappear
다음 화면으로 전환되기 전, 화면에서 사라질 때 호출
viewDidDisappear
화면에서 완전히 사라지고 나서 호출
deinit
메모리에서 사라지기 전 호출
ViewController가 사라졌다고해서 메모리에서 해제되는 것은 아님
ViewController
생명주기