티스토리 뷰

TIL

[TIL] 2022 / 07 / 14

희철 2022. 7. 15. 01:13

클래스, 구조체, 열거형 안에 있는 변수 또는 상수를 프로퍼티, 함수를 메서드

 

 

구조체는 스택에, 클래스는 힙에 저장됨.

 

 

구조체는 클래스처럼 initialize구문이 없어도됨.

-> 멤버와이즈 구문이 제공.

 

 

시작하는 스토리보드 설정

 

 

프로젝트에 스토리보드를 따로 만들어도 설정을 따로 해주지 않으면 원래의 main스토리보드가 첫 화면으로 뜸.

 

두 가지를 설정해줘야함.

1. 프로젝트 설정에서 TARGETS의 Main Interface를 새로 만든 스토리보드로 바꿔줌.

2. info.plist에서 Storyboard Name을 바꿔주면됨.

 

 

Storyboard Reference

 

 

하나의 스토리보드에서 여러 개의 뷰컨트롤러가 모이다보면 지저분해보임.

 

storyboard reference를 사용하면 깔끔해보임

왼쪽처럼 연결하고 스토리보드 레퍼런스의 attributes inspector에서 스토리보드 설정해주면됨.

 

 

라이브러리

 

 

필요한 기능들이 묶인 코드의 묶음.

 

Class나 func으로 만들어져있음.

 

프레임워크는 전체적인 흐름을 자체적으로 가지고 있어 정해진 프레임 내에서 작업이 이루어짐.

라이브러리는 사용자가 원할때 사용하듯이 직접 제어 가능.

 

 

Dependency Manager

 

 

코코아팟 -> 거의 대부분의 라이브러리가 지원하지만 빌드 속도 느림

 

카르타고 -> 지원안하는 라이브러리 많음

 

SPM -> 애플이 지원해줌.

 

 

Dependency Rule

 

 

어떤 버전을 사용할지

 

소프트웨어 버전 규칙

-> 5.3.1에서 5는 Major, 3은 Minor, 1은 Patch를 의미.

 

메이저는 가장 크게 달라지기때문에 기존버전과 호환이 되지 않음.

-> deprecated되는게 많음.

 

마이너는 세세한 기능들이 올라갈 때 올림.

 

Patch는 유지보수나 버그 수정같은 것

 

 

 

#avilable을 이용해 버전 별 타입 설정

if #available(iOS 14.0, *) {
    datePicker.preferredDatePickerStyle = .inline
} else {
    datePicker.preferredDatePickerStyle = .wheels
}

 

 

DatePicker 액션

 

 

날짜를 선택했을때 실행됨(value changed)

 

선택한 날짜 데이터에 접근하기 위해선 sender.value가 아닌 sender.date

 

 

 

AddingTimeInterval

 

 

Date의 메서드로 디데이같이 날짜를 계산할 때 사용하기 편했음.

 

1초가 기준이므로 기준이 오늘이라면 내일은 오늘 + 86400으로 계산가능

 

 

DateFormatter()

let myDate = DateFormatter()
myDate.dateFormat = "yyyy년\nM월 dd일"
let result = myDate.string(from: date)
        
// yyyy에는 년도, M에는 월, dd는 일

 

 

 

 

 

'TIL' 카테고리의 다른 글

[TIL] 2022 / 07 / 16  (0) 2022.07.17
[TIL] 2022 / 07 / 15  (0) 2022.07.16
[TIL] 2022 / 07 / 13  (0) 2022.07.13
[TIL] 2022 / 07 / 12  (0) 2022.07.12
[TIL] 2022 / 07 / 11  (0) 2022.07.12
댓글
최근에 올라온 글
Total
Today
Yesterday