본문 바로가기

iOS/Swift74

[Swift] API Design Guidelines 오늘은 API Design Guidelines을 알아보려한다. 아무래도 내 멋대로 사용하여 실력을 끌어올리는 것도 뭐.. 나쁘지않겠지만.. 제대로 알고 사용하는 것보다 좋은건 없을거다. Swift를 어떻게 사용하면 Swift처럼 잘 쓸 수 있는지를 Apple에서 알려주는 것이다. Apple에서 만든 언어니, 당연히 Apple Guideline을 참고해서 공부하는 것이 정석이겠다싶어서 번역도 하고 참고도 하며 알아보겠다. API Design Guidelines Fundamentals ● 사용 시점의 명확성(Clarity at the point of use)이 가장 중요한 목표이다. 메소드와 프로퍼티같은 엔티티(개체)는 한번만 선언되고, 반복적으로 사용된다. API는 앞서 말한 메소드, 프로퍼티 등의 개체를.. 2021. 8. 24.
[Swift] Optional (2) 2021.08.18 - [Dev/Swift & IOS] - [Swift] Optional (1) [Swift] Optional (1) Swift는 Optional이라는 중요한 개념을 갖고있다. 정말 중요하다. Optional은 Type Casting이나, nil value check 등 에 중요한 역할을 한다. Optional은 '?'을 변수나, 변수 타입에 붙여 표현한다 Optional의 '?.. limjs-dev.tistory.com Optional이 아직 헷갈린다면 기본을 설명한 윗 글을 보고 오길 이전 글엔 Optional, nil을 설명하였다. 이번 글엔 Optional Bindind & chaining, nil 병합.. 먼저 .. Wrapping 부터 알아보자 Wrapping Optional .. 2021. 8. 19.
[Swift] Optional (1) Swift는 Optional이라는 중요한 개념을 갖고있다. 정말 중요하다. Optional은 Type Casting이나, nil value check 등 에 중요한 역할을 한다. Optional은 '?'을 변수나, 변수 타입에 붙여 표현한다 Optional의 '?' 의 뜻은 "이 변수에는 값이 들어갈 수도 있고, 안들어갈 수도 있어 (nil)" 인용 처음 써보는데 글씨체 이쁘네.. 오 글씨체 바꿨다. 이쁘다. 예를 들어보겠다. 아 글씨체 ㅇㅇㅇ아 왜이래, 다시 예를 들어보겠다. Optional의 기본 형태는 다음과 같다. let myOptional: Int? 변수나 상수를 정의할 때 타입 뒤에 '?'을 명시해주면 그 변수, 상수는 Optional이 된다. Swift는 변수 선언시 변수에 nil값이 들어가.. 2021. 8. 18.
[Swift] Struct Mutating Struct Mutating 구조체의 메소드를 구조체 내부에서 데이터 수정 할 때는 Mutating 키워드를 선언 해주어야함 struct coordinate { var x: Int = 0 var y: Int = 0 mutating func moveTo(x: Int, y: Int) { self.x.= x self.y = y } } mutating 키워드를 선언해주지 않는다면, Cannot assign to property: 'self' is immutable, 컴파일 에러 발생 Mark method 'mutating' to make 'self' mutable mutating 유무로 구조체 내부 값 변경 유무 유추 가능 2021. 8. 11.
[Swift] Class & Structure 클래스와 구조체에 대해 알아보겠다. 클래스와 구조체란 OOP(Object Oriented Programming)을 위한 필수적인 요소로 코드 추상화를 위해 사용된다. Swift에서 클래스와 구조체는 많은 공통점이 있다. 값을 저장하기 위한 Property(변수,상수..) 정의 기능을 제공하기 위한 Method(func) 정의 subscript 문법을 이용해 특정 값을 접근할 수 있는 subscript 정의 초기 상태를 설정할 수 있는 initializer 정의 기본 구현에서 기능 확장 특정한 종류의 표준 기능을 제공하기 위한 프로토콜 순응(conform) 구조체는 불가능 하지만 클래스는 가능한 것은 상속 (Inheritance) : 클래스의 여러 속성을 다른 클래스에 물려 줌 (SuperClass - S.. 2021. 8. 11.
계산기 udemy서 autolayout 강의를 들었다. 조만간 autolayout에 대한 글도 정리할 계획인데.. 계산기 레이아웃은 끝냈는데 이대로 넘겨버리기엔 아쉽더라 그래서 아~주 간단하게 대강 숫자 버튼 동작을 하게하고, 결과 레이블에 나오도록 했다. 입력은 되니깐.. 이제 계산과 dot, AC 기능을 추가해야겠다 그리고 막 입력해보니깐 레이블 범위를 초과하면 위 사진처럼 뒤로 ...이 생기더라 보통 요즘 전자식 계산기는 과학적 표기법을 이용하여 100 = 10e+2 이런식으로 표현하는데 이러한 기능도 추가해볼 계획이다. 그리고 아마.. 소수점 기능을 추가하면 결과함수 파라미터를 실수로 바꿔줘야될 듯 아 그리고 버튼이 여러개니깐 저래 코드에 도배가 되는데 좀 깔끔하게 할 수 있는 방법도 좀 알아봐야겠다. .. 2021. 8. 7.