전체 글

Swift/Swift 기본기

12. 생성자 (Initialization) - 2

Default Initializer 스위프트에서는 init() 메소드를 사용하지 않아도 기본적으로 제공하는 Default Initializer가 있다. 기본 생성자를 사용하기 위한 조건으로는 아래와 같다. 1. 모든 프로퍼티가 초기 값을 가져야 한다. 2. 부모 클래스가 없어야 한다. 위의 예제는 기본 생성자를 사용한 예제이다. name과 age는 peopleClass 내부에서 설정한 Default Value로, 옵셔널 타입으로 지정 된 nationality는 nil이 반환되어 출력된다. ✅ Default init을 사용하기 위해서는 주의할 점이 있는데, 각 프로퍼티에 초기값을 설정해야한다. 초기값을 설정하지 않으면 아래와 같이 에러가 발생한다. Memberwise Initializer 구조체는 클래스와..

Swift/Swift 기본기

11. 생성자 (Initialization) - 1

생성자(Initialization)는 클래스, 구조체, 열거형에서 인스턴스를 준비하기 위한 과정이다. 생성자 초기화 - init() 생성자 초기화는 인스턴스의 저장 프로퍼티의 값을 초기화 하는 것을 의미한다. ✅ 클래스나 구조체의 저장 프로퍼티는 무조건 생성될 때 함께 초기화 되어야 한다. init() { // perform some init here } 생성자는 특정타입의 새로운 인스턴스가 생성될 때 호출된다. 가장 간단한 모양은 생성자가 매개변수가 없는 인스턴스 메서드 같이 선언된 것으로 init 키워드를 사용하여 정의한다. 위의 코드는 가장 기본적인 어떤 인자도 받지 않는 생성자이다. someClass라는 클래스의 init() 내부에서 name, age, nationality를 초기화 할 수 있다...

Swift/Swift 기본기

10. 제네릭 (Generic)

제네릭은 Swift에서 가장 강력한 기능 중 하나이다. 실제로 Swift 표준 라이브러리 또한 수많은 제네릭으로 구성되어 있는데, 우리가 흔하게 사용하는 배열과 딕셔너리도 제네릭 타입이다. 제네릭이 무엇일까? 제네릭이란 모든 타입에서 동장할 수 있는 더 유연하고 재사용 가능한 함수와 타입을 작성할 수 있도록 하게 해주는 기능이다. 즉, 제네릭을 사용하면 중복을 피하고 명확하고 추상적인 방법으로 그 의도를 표현할 수 있는 코드를 작성할 수 있고 코드를 유연하게 작성할 수 있다. 제네릭 문법 제네릭을 사용하기 위해서는 를 사용하면 된다. 제네릭 함수 스위프트 공식문서에 있는 문제를 예를들면 func swapTwoInts(_ a: inout Int, _ b: inout Int) { print("변경 전 : \..

원티드 프리온보딩 챌린지 iOS 과정

[프리온보딩] 원티드 프리온보딩 챌린지 iOS과정 사전과제

✏️ 성적 관리 프로그램 프로그램의 메뉴 학생추가 학생삭제 성적추가(변경) 성적삭제 평점보기 종료 프로그램 동작조건 사용자가 종료 메뉴를 선택하기 전까지는 계속해서 사용자의 입력을 받습니다. 메뉴 선택을 포함한 모든 입력은 숫자 또는 영문으로 받습니다. 성적별 점수 A+ (4.5점) / A (4점) B+ (3.5점) / B (3점) C+ (2.5점) / C (2점) D+ (1.5점) / D (1점) F (0점) ✏️ 풀이 방법 ✔️ while문으로 무한루프를 돌아 사용자가 종료 메뉴를 선택할 때 break를 사용하여 while문을 종료하도록 큰 틀을 잡았다. ✔️ 학생 정보는 구조체를 통해 학생 정보를 담는 구조체 배열을 만들어 담았다. ✔️ 성적별 점수는 Dictionary로 만들었다. (키 값을 통해..

여성일
성일노트