일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- Optional
- ios
- struct
- 토이프로젝트
- 프로토콜
- 대표
- uikit
- swift
- 구름톤 유니브
- 학과별커뮤니티
- 앱개발
- Kingfisher
- mvc
- 스트럭트
- 실습
- WeatherKit
- 반응형
- async
- collectionview
- SwiftUI
- 세종대학교
- 이론
- 네트워크
- MVVM
- 동시성
- 옵셔널
- CS
- RxSwift
- 기초문법
- GCD
- Today
- Total
목록ios (85)
스윞한 개발자

개발을 하다보면 수많은 에러들을 만나게 되는데... 오늘은 에러에 대해 살짝 알아보도록 하겠습니다!! - 예외처리 - 우리가 원하지 않는 케이스 - 정상적으로 돌아가지 않는 결과물 totalNumber / inputNumber 0으로 나눌 수 없습니다. -> 에러를 처리해줘야합니다. if 문으로 해결 if inputNumber != 0 { throw totalNumber / inputNumber } do { try devideByinputNumber(input) }catch{ print(error) { 예외를 던져주는 throw 받아주는 catch를 사용합니다. * 시험삼아 해볼 do * 에러 받기 catch * 에러 던지기 throw error do{ try code }catch{ catch error..

지난시간에 클래스에 대해 공부하고 포스팅 해보았습니다! 이번에는 클래스 중 파이널 클래스에 대해 포스팅 해볼게요 ㅎㅎ Swift에서 파이널 클래스는 다른 클래스가 상속을 통해 이 클래스를 확장할 수 없도록 제한하는 특성을 가지는 클래스입니다. 파이널 클래스는 더 이상 상속될 수 없으며, 최종적인 구현을 나타내기 위해 사용됩니다. final class Person { var name: String var age: Int init(name: String, age: Int) { self.name = name self.age = age } func greet() { print("Hello, my name is \(name). I'm \(age) years old.") }} 위의 예시에서 클래스는 'final' ..

딕셔너리! 딕셔너리는 다른 언어 문법에서도 있는 기본적인 문법입니다. 사용하는 원리나 방법은 동일하기에 똑같이 사용하시면 됩니다! Swift에서 딕셔너리는 키(Key)와 값(Value)의 쌍으로 이루어진 데이터 컬렉션입니다. 딕셔너리는 키를 사용하여 값에 접근하고 저장하는 데 사용됩니다. 딕셔너리는 빠른 검색속도를 제공하며, 특정 키에 해당하는 값을 빠르게 찾을 수 있습니다. 스위프트에서의 딕셔너리는 대괄호([])를 사용하여 정의하며, 각 키와 값은 콜론(:)으로 구분 됩니다. 딕셔너리의 키와 값은 모두 유형을 가질 수 있습니다. 키는 유일, 값은 중복될 수 있습니다. var studentScores = ["John": 85, "Sarah": 92, "Michael": 78] * 딕셔너리의 값에 접근 l..

나 너 좋아하냐? - 상속자들 - 네... 시작하기 전에.... 분위기를 풀고 시작해볼게요! Swift에서 상속은 클래스와 프로토콜 간에 가능합니다. 상속을 통해 기존의 클래스나 프로토콜을 확장하고 새로운 기능을 추가할 수 있습니다. * 클래스 상속은 부모 클래스로부터 속성과 메소드를 상속받아 새로운 클래스를 정의하는 것을 말합니다. * 클래스를 상속하기 위해서는 콜론(:)을 사용하여 상속할 클래스의 이름을 지정합니다. * 부모 클래스의 속성과 메소드를 서브클래스에서 재정의(오버라이딩)하거나 새로운 속성과 메서드를 추가할 수 있습니다. * 상속을 받은 클래스는 부모 클래스의 기능을 그대로 사용하면서 새로운 기능을 추가할 수 있습니다. * 프로토콜 상속은 기존의 프..

이번에 볼 기초문법은 객체 생성자! 해제자! 입니다. Swift에서 객체 생성자와 해제자는 클래스의 인스턴스를 초기화하고 메모리를 할당 및 해제하는 역할을 수행하는 특수한 메소드입니다. 1. 객체 생성자(Initializer) : * 객체 생성자는 클래스의 인스턴스를 초기화하는 역할을 합니다. * 'init' 키워드를 사용하여 정의하며, 클래스 내부에 선언합니다. * 객체 생성자는 클래스의 속성을 초기화하거나 다른 초기화 작업을 수행할 수 있습니다. * 객체 생성 시 호출되며, 생성자의 매개변수를 통해 초기값을 전달할 수 있습니다. *반환값은 존재하지 않습니다. class Person { var name: String init(name: String) { self.name = name } } let pe..

클로저! 이번 포스팅은 Swift 기초문법 클로저편 입니다! 클로저(Closure)는 Swift에서 함수와 유사한 개념으로, 일급 객체로서 사용될 수 있는 코드 블록입니다. 클로저는 코드를 캡슐화하여 변수나 상수에 저장하거나 함수의 매개변수로 전달할 수 있습니다. 이를 통해 코드의 재사용성과 유용성을 높일 수 있습니다. { (매개변수) -> 반환타입 in // 실행 코드 } let closureName: (매개변수) -> 반환타입 = { (매개변수) -> 반환타입 in // 실행 코드 } 클로저는 변수에 할당하여 저장하거나, 함수의 매개변수로 전달할 수 있습니다. 클로저는 저장된 변수나 함수 내에서 자유롭게 호출할 수 있습니다. Swift에서 사용되는 사례 1. 함수 내부에서 작은 작업을 처리하는 코드 ..

제네릭이란? 저는 처음 제네릭이라는 단어를 들었을 때 생전 처음 들어보는 단어고 나중에 기억도 못하겠지,, 하고 막막함이 컸어요! 막상 별거 없고 차근차근 이해하면 쉽게 이해하고 유용하게 사용할 수 있는 문법 중 하나입니다! * 모든 타입을 커버하는 방법 * 타입에 의존하지 않는 범용코드 * 배열, Set, 딕셔너리 등등... * 하나의 타입에 의존하게 되면 타입마다 모든 종류로 만들어야 함 정도로 간단하게 정리할 수 있어요! func 함수이름(input: T){ input -> T타입 변수 } Swift에서 제네릭(Generic)은 함수, 타입, 구조체, 열거형 등을 작성할 때 일반적인 유형 대신 여러 유형에 대해 작동할 수 있도록 유연성을 제공하는 기능입니다. 제네릭은 코드의 재사용성을..

클래스와 구조체 비교를 해보겠습니다! 클래스와 구조체는 Swift에서 사용되는 두 가지 데이터 타입입니다. 둘 다 멤버 변수와 멤버 함수를 포함하는 자체적인 타입을 정의할 수 있습니다. 구조체에 기본 생성된 이니셜라이저의 매개변수는 구조체 프로퍼티 이름으로 자동 지정됩니다. 인스턴스가 생성되고 초기화된 후 프로퍼티 값에 접근하고 싶다면 마침표(.)를 사용하면 됩니다. let 선언 시 인스턴스 내부 프로퍼티 값 변경 X var 선언 시 인스턴스 내부 프로퍼티 값 변경 O struct 구조체 이름 { 프로퍼티, 메소드 } var 이름 = 구조체이름() 스위프트의 클래스는 부모클래스가 없더라도 상속 없이 단독으로 정의가 가능합니다. class 클..