Programming(38)
-
[iOS_Swift] 강한참조와 약한참조 + 참조타입, ARC
강한참조와 약한참조란? - 참조에 대한 이해 강한참조와 약한참조라는 표현을 이해하기 전에 저 '참조'라는 단어를 먼저 이해해볼 필요가 있다. 참조가 뭘까, 무언가를 참고한다는 의미인 것 같은데 뭘 참고하는 것일까. 참조라는 표현을 이해하기 위해서는 우리는 다시 또 조금 더 상위의 개념인 클래스가 어떤 타입인지를 이해해야 한다. 클래스는 레퍼런스 타입, 즉 '참조'타입이다. 따라서, 클래스의 인스턴스들은 해당 클래스의 다른 인스턴스들을 참조할 수 있다. 예시를 통해보자. 똑같은 형식으로 클래스와 구조체를 만들어줬다. 코드를 보면 student2 인스턴스는 student1 인스턴스를 '참조' 하고 있다. 쉽게 생각하면, student1과 2는 일종의 일심동체라고 보면 된다. 따라서, 1의 학생명은 'Kim'..
2021.12.23 -
[iOS] 누락된 Crashlytics dsym파일 로컬머신에서 찾기[SPM]
만약 이미 앱스토어에 업로드한 앱에서 누락된 dsyms파일이 있을 경우에는 아래 블로그를 참조해서 해결하자. https://ahyeonlog.tistory.com/59 그런데, 만약에 로컬 머신에서 테스트하다가 누락된 dsym파일이 있다면 직접 어떤 파일이 누락된건지 알아내야 한다. 가령 나의 경우, 다음과 같은 파일들이 누락되었다. 그러면 얘네들의 UUID를 활용해서 누락된 해당 파일을 찾아줘야 하는데, 예시를 위해 제일 하단의 FFF9B5DF~~~를 찾아보자. 찾기 위해, 다음의 키워드를 터미널에 입력해주자. mdfind -name .dSYM | while read -r line; do dwarfdump -u "$line"; done 그러면 이렇게 쭈욱 뜨는데 누락된 UUID를 찾아주면 된다. 찾은 ..
2021.12.18 -
[iOS_Swift] 프로퍼티 감시자(Property Observers)(코드x)
프로퍼티 감시자란? 어떤 저장프로퍼티와 부모클래스로부터 상속받은 저장프로퍼티, 연산프로퍼티에 새로운 값이 할당될 때, 그러한 변화들을 관찰하고 호출(respond)하는 역할을 수행하는 것이다. 프로퍼티 감시자의 특징 1. 프로퍼티의 값이 변경될때마다 호출됨.(~~~~called every time a property's value is set.) 2. 새로운 값이 기존의 값과 같더라도 호출됨.(~~~~even if the new value is the same as the property current value.) 3. 지연저장프로퍼티에는 감시자를 넣을 수 없음.(~~~~except for lazy stored properties.) 3. 부모클래스로부터 상속받은 저장프로퍼티, 연산프로퍼티에도 넣을 수..
2021.12.18 -
문의하기
을 이용하면서 생긴 궁금한 점이나 개선했으면 하는 사항 등을 보내주시기 바랍니다. 이메일: ethanpark604@gmail.com 인스타그램: https://www.instagram.com/vf008vf/ 고맙습니다.
2021.12.02 -
<포켓트립> 개인정보 처리방침
('https://daltonic.tistory.com/'이하 '포켓트립')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. ○ 이 개인정보처리방침은 2021년 12월 1부터 적용됩니다. 제1조(개인정보의 처리 목적) ('https://daltonic.tistory.com/'이하 '포켓트립')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목적이 변경되는 경우에는 「개인정보 보호법」 제18조에 따라 별도의 동의를 받는 등 필요한 조치를 이행할 예정입니다. ..
2021.12.02 -
[iOS_Swift] 클로저(2) - 기본 클로저
1편에서 클로저를 이해하기 위해 1급 객체에 대해 알아봤으니 본격적으로 클로저를 이해하고 어떻게 사용하면 좋을지 알아보려고 한다. 우선 클로저란 사용자의 코드에서 전달 및 사용할 수 있는 독립된 기능 블록이라고 한다. 이해가 잘 안가는 말인데 쉽게 생각하면 앞으로 사용하고 부르게 될 클로저들은 '이름 없는 함수'로 생각하면 편할 것 같다. 정확한 설명은 절대아니다! 이해의 편의를 위해.. 정확하게 클로저에 대해 분류를 하면 Named Closure, Unnamed Closure로 나눠 진다. 여기서 Named Closure가 우리가 흔히 알고 사용하는 함수이다. 즉 함수는 클로저의 일종인 것이다! Unnamed Closure가 바로 앞으로 계속 다루게 될 녀석이다. 즉 앞으로 언급하는 클로저는 전부 앞에..
2021.11.03