일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |
- ios
- async
- 반응형
- 세종대학교
- 스트럭트
- swift
- 기초문법
- WeatherKit
- collectionview
- uikit
- 토이프로젝트
- 네트워크
- 디자인 패턴
- 프로토콜
- struct
- SwiftUI
- 구름톤 유니브
- 앱개발
- 협업
- 학과별커뮤니티
- CS
- MVVM
- RxSwift
- 딕셔너리
- 대표
- AppStore
- forEach
- 실습
- 이론
- mvc
- Today
- Total
목록분류 전체보기 (87)
스윞한 개발자
이번 포스팅은 프로토콜에 대해 자세히 알아보겠습니다! 프로토콜이란 ? * 설계하고 설계대로 만드는 방법 프로토콜은 Swift에서 인터페이스를 정의하는 방법입니다. (약속) 명명 규칙 > 일반적으로(##able, ##delegate, ##ing 등) 프로토콜은 특정 역할을 수행하기 위해 필요한 메서드, 프로퍼티, 이니셜라이저 등의 요구사항을 정의합니다. 클래스, 구조체, 열거형은 프로토콜을 채택하여 프로토콜에 정의된 요구사항을 구현할 수 있습니다. - 특징 1. 요구사항 정의 : 프로토콜은 특정 역할을 수행하기 위해 필요한 메서드, 프로퍼티, 이니셜라이저 등의 요구사항을 정의합니다. 프로토콜은 선언만 하고 구현하지 않습니다. // 프로토콜 정의 protocol Vehicle { var numberOfWhe..
구조체 Struct에 대해 좀 더 자세히 알아보겠습니다! mutating이란? 'mutating'은 Swift에서 구조체('struct') 내부에서 메서드가 자신을 수정할 수 있는지를 나타내는 특별한 키워드입니다. 기본적으로 구조체(Struct)와 열거형(enum)은 값 타입이므로 해당 인스턴스의 프로퍼티를 변경하려면 메서드가 'mutating'으로 표시되어야 합니다. 'mutating' 키워드를 사용하면 구조체 내부에서 프로퍼티의 값을 변경하거나, 다른 메서드를 호출하여 자신을 수정할 수 있습니다. 구조체가 값 타입이지만 메서드 내부에서 상태를 변경하거나 특정 작업을 수행할 수 있도록 허용해줍니다. struct Point { var x: Int var y: Int mutating func moveBy(..
개발을 하다보면 수많은 에러들을 만나게 되는데... 오늘은 에러에 대해 살짝 알아보도록 하겠습니다!! - 예외처리 - 우리가 원하지 않는 케이스 - 정상적으로 돌아가지 않는 결과물 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. 함수 내부에서 작은 작업을 처리하는 코드 ..