- 할일(Task)을 추가하고 관리하는 간단한 앱에 랜덤으로 고양이🐈 사진을 불러오는 페이지를 추가하였습니다.
- UserDefaults를 이용해 추가한 할일을 저장하고, UrlSession을 이용해 이미지 파일을 불러왔습니다.
- 앱 아이콘 및 런치스크린을 추가하였습니다.
- MVC 모델을 기반으로 모듈을 관리하고 뷰컨트롤러의 라이프사이클을 고려했습니다.
- 앱의 라이프사이클을 처리하고 주 창을 초기화
앱 전체에서 공통 기능을 제공하는 유틸리티 파일:
NetworkError.swift: 사용자 정의 네트워크 오류 유형을 정의UIImageView+Extension.swift:UIImageView를 확장하여 이미지 로딩 및 캐싱을 위한 메서드 추가
앱의 데이터 모델:
Task.swift:id,title,isCompleted,category와 같은 속성 제공TaskList.swift: 작업 목록을 관리하며 작업의 생성, 업데이트 및 범주별 필터링을 처리
사용자 정의 UI 구성 요소:
TaskCell.swift: 작업 정보를 표시하기 위한 사용자 정의 테이블 뷰 셀을 정의TaskHeaderView.swift: 테이블 뷰에서 작업 섹션에 대한 사용자 정의 헤더 뷰를 제공
뷰 컨트롤러:
HomeViewController.swift: 앱의 홈 인터페이스를 표시TaskViewController.swift: tableView로 작업 나열, 완료 처리 또는 편집 옵션을 제공DetailViewController.swift: 선택한 작업에 대한 상세 정보를 표시EditViewController.swift: 작업 세부 정보를 편집하고 업데이트DoneViewController.swift: tableView로 완료된 작업 나열CatViewController.swift: 랜덤 고양이 사진 표시
각 뷰 컨트롤러의 생명주기 메서드로 데이터를 불러오고 관리
- viewDidLoad
뷰 컨트롤러가 처음으로 로드될 때 호출. 초기 설정 및 데이터 불러오기. 예를 들어, HomeViewController에서는 사용자의 작업 목록을 초기화하고 표시
- viewdidAppear
뷰 컨트롤러가 화면에 나타난 후에 호출. 예를 들어, HomeViewController에서는 화면을 불러온 후에 앱타이틀 레이블이 움직이는 애니메이션을 실행
