본문 바로가기

전체 글

(36)
iOS 프로그래밍 12주차 root view controller는 UIWindow의 가장 첫 번째, 최상위 뷰 컨트롤러• 앱이 실행될 때 처음 사용자에게 보여지는 메인 뷰 컨트롤러• UINavigationController, UITabBarController와 같은 컨테이너 뷰 컨트롤러가 주로 루트로 사용됨Action Segue와 Manual Segue의 차이점항목 Action Segue Manual Segue정의버튼 등의 UI 요소에 직접 연결된 segue코드에서 직접 수행하는 segue설정 위치Interface Builder (스토리보드)에서 설정ViewCont..
iOS 프로그래밍 11주차 예외처리를 안해서 나는 에러이다. ( -> 예외처리를 하라는 메시지 )클로저 안에서 movieData를 사용하기 때문에 movieData 앞에 self. 를 붙여줘야 함해당 코드(보라색부분) 도 클로저 안에 있기 때문에 백그라운드 쓰레드에서 실행되는데 이를 메인쓰레드에서 실행시켜야 한다.오토레이아웃을 쉽게 사용하는법 - StackView( 주요프로퍼티 4가지)
iOS 프로그래밍 10주차 영화진흥위원회에서 개인 key 를 발급해 오픈 API로 영화순위데이터를 조회했다.Costraints 를 사용해서 tableView가 꽉차도록 설정프로토콜을 채택했는데 위와 같이 오류가 뜨는것은 필수 메서드를 사용하지(준수하지) 않았기 때문이다. 테이블뷰를override func viewDidLoad() { super.viewDidLoad() table.dataSource = self table.delegate = self }이렇게 사용할땐 항상 self 로 지정해줘야 한다. ✅ table.dataSource = self 의 의미는: “나 자신(self)이 이 테이블의 데이터 공급자가 될게!” 라는 뜻테이블 뷰 위에 테이블 뷰 cell 을 넣었고 이름은 myCel..
iOS 프로그래밍 9주차 영화진흥위원회 사이트에서 공공 API로 영화 순위를 조회해보겠다.영화진흥위원회에 가입하고 개인 키를 발급해 준 후위 양식에 맞게 API 요청을 하면 이렇게 네이버에서 검색한 영화 순위와 동일한 순위를 JSON 데이터로 받아볼 수 있다.Rest API 의 개념에 대해 알아보겠다- URI 구성권고에 따르면 RESTful API 구성을 위한 URI에는 정보의 분류 체계만 포함되어야지, 정보를 어떻게 다룰 것인가 하는 동작에 관한 명세는 포함하지 않을 것을 권고함오픈 API (Open API)- 일부 웹사이트에서 SOAP 프로토콜이나 RESTful 형식을 사용하여 공공 컨텐츠를 제공하는데 이를 오픈 API (Open API)라 함 https://github.com/dl0312/open-apis-korea Git..
iOS 프로그래밍 7주차 열거형은 멤버별로 기능을 정의할 수 있다.열거형에는 메서드도 넣을 수 있다. 열거형을 rawValue로 접근하면 원시값을 볼 수 있다.* 실행결과Monday월SundaySunday class 로 변경하니 에러가 나니까 init을 통해 에러를 해결 class 에서 struct로 다시 변경하니 init이 필요없어졌다.이는 Memberwise Initializer 가 자동으로 만들어주기 때문에 에러가 나지 않는다. VideoMoode 클래스 안에 있는 resolution 구조체에 width와 height에 접근하려면 . 을 이용해서 타고타고 들어가서 접근해야 한다. 두 코드의 실행 결과가 다르다.아래는 생성형 AI에게 Value Type vs Reference Type 에 대해 물어봤다.더보기예시 2: Swi..
iOS 프로그래밍 6주차 ? : 옵셔널 타입 선언 또는 옵셔널 체이닝에 사용! : 강제 언래핑에 사용 (nil이 아닌 것이 확실할 때만 사용해야 함)if let : 옵셔널 바인딩으로 안전하게 값 추출?? : nil 병합 연산자로 기본값 제공 throws 라는 키워드가 붙은 메서드를 사용할때는 반드시 예외처리를 해야한다. 언어별 특이사항언어소괄호 ()중괄호 {}대괄호 []꺾쇠 C함수 호출, 조건문코드 블록, 구조체 정의배열, 포인터 연산헤더 포함 (#include )Java메서드 호출, 생성자클래스/메서드 블록배열제네릭 타입Python튜플, 함수 호출딕셔너리, 세트리스트, 인덱스 접근비교 연산자Swift함수, 튜플, 옵셔널 체이닝클래스/구조체/함수 블록배열, 서브스크립트제네릭 타입 함수가 호출 될 때 타입을 지정해주는 generi..
iOS 프로그래밍 5주차 Delegate : 어떤 객체가 해야 할 일을 다른 객체에 대신 시키는 패턴DataSource : 데이터를 공급해주는 역할부모는 상속 받는것, 프로토콜은 채택하는 것 보여주는것과 관련된 DataSource프로토콜을 채택하게 되면 2개의 필수 메서드를 구현해야 한다.자주 쓰이는 메서드들이다. 원하는 동작은 메서드 내부에 작성하면 됨  오늘 살펴 볼 클래스는 테이블뷰를 전체적으로 관리하는 tableView, 한칸한칸을 관리하는 테이블 tableViewCell프로토콜을 adopt 하는데 conform 하지 않는다는 에러가 뜸 -> 필수 메서드가 없기 때문이다.fix를 누르면 (stubs : 터, 기반) 으로 Swift가 기반이 되는 메서드를 자동으로 만들어줌 indexPath 에는 section 과 row를 ..
iOS 프로그래밍 4주차 기본 코드의 문법을 ai 에게 정리해달라고 해봤다// UIKit 프레임워크를 임포트합니다.// UIKit은 iOS 앱의 UI를 구성하기 위해 사용되는 프레임워크입니다.import UIKit// ViewController라는 이름의 클래스를 정의합니다.// 이 클래스는 UIViewController를 상속받습니다.// UIViewController는 iOS 앱에서 하나의 화면(뷰 컨트롤러)을 나타내는 기본 클래스입니다.class ViewController: UIViewController { // 뷰가 메모리에 로드된 후 호출되는 메서드입니다. // 앱의 뷰를 초기화하거나 데이터를 불러오는 등의 초기 설정을 여기에 작성합니다. override func viewDidLoad() { ..