본문 바로가기

Dev/Swift 내 정리7

[Swift 기본기] Value type과 Reference type의 메모리 할당 정말 오랜만에 다시 글을 써봅니다. 취준을 하면서 자소서를 하도 쓰다보니 블로그글을 안써도 항상 글을 쓰고 있긴 했으니 감각이 무뎌졌었네요..ㅎㅎ 이제 곧 아마도 2주안으로는 자소서도 일단락될 것 같기도 하고 여유가 생기면 그 주라도 항상 블로그글을 쓰도록 노력해보겠습니다!! 오늘 주제는 돌고돌아 value type과 reference type에 대한 내용입니다. Value type과 reference type은 어째서 왜 간단한 듯하면서도 어렵고 이렇게 공부할게 많은 걸까요?? 🤔 공부를 하면서 Swift의 String와 Array는 가변적인 크기때문에 데이터가 힙에 저장된다고는 어느정도 알고 있었는데, 생각보다 reference type이 stack에, value type이 heap에 저장되는 예외 .. 2024. 4. 12.
[Swift 기본기] weak와 side table 내용이 수정될 수 있는 게시글입니다. 안녕하세요 정말 정말 오랜만에 돌아왔습니다. 오늘 오랜만에 들고 돌아온 주제는 side table입니다. 제가 전혀 몰랐다가 알게된거라 새로 알게된 겸 개념을 정리해보고자 합니다! 우선 제일 처음으로 제가 잘못? 알고 있었던 것 부터 바로잡고 가겠습니다. RefCount의 주석을 참고해보면 알 수 있듯이 Reference Count의 종류는 strong, unowned, weak 총 3가지로 각 각 존재합니다! 저는 reference count는 하나만 존재해서 이를 strong이면 +1 시켜주고, unowned나 weak면 그대로 두고 뭔가 이런식으로 하나를 가지고 조작하는 것이라고 생각했는데 그게 아니였습니다. Strong RC - 0이 되면 object가 dei.. 2024. 3. 15.
[iOS] CGPoint, CGSize, CGRect, Frame, Bounds 어떻게 지평좌표계로 고정하셨죠? 좌표계에 화면을 띄우기 위해서는 origin(x, y), width, height값을 알아야합니다. CGPoint 2차원 좌표계의 점을 포함하는 구조체 x좌표, y좌표를 가지고 있음 시작점 (origin)을 나타나게 될 구조체 CGSize 넓이와 높이 값을 가지고 있는 구조체 width와 height값을 가지고 있음 Size는 넓이와 높이만 가지고 있을 뿐 아직 사각형은 아님. CGRect 직사각형의 위치와 크기를 포함하고 있는 구조체 이름에서 알 수 있듯이 CGRect, 사각형의 모습. 코드로 순서대로 살펴봅시다. CGPoint → CGSize → CGRect 순. /* Points. */ public struct CGPoint { public init() public .. 2023. 5. 8.
[Swift] Closure Capture list, ARC, AnyObject까지 연결지어서 정리 키워드 공부 과제에서 Closure Capture list, ARC, AnyObject에 대해서 알아보는 것이였는데 이를 연결지어서 정리해보았습니다 Closure Capture list var str = "Hello, World!" var myClosure = { [str] in print (str) } str = "next" let inc = myClosure inc() 이 코드를 실행시키면 어떻게 될까요? 답 “Hello, World!”가 출력됩니다 var str = "Hello, World!" var myClosure = { print (str) } str = "next" let inc = myClosure inc() 이 코드를 실행시키면 어떻게 될까요? 답 “next”가 출력됩니다. 이런 일이 벌.. 2023. 4. 23.