본문 바로가기

전체 글

(35)
디지털 트윈 디지털 트윈 정의 디지털 트윈은 현실 세계의 물리적인 객체를 가상화(시뮬레이션)하여 반영하는 모델을 의미 시뮬레이션과 디지털 트윈의 차이 시뮬레이션 또한 현실 세계를 모방하여 디지털화 한 개념에선 비슷할 수 있지만 디지털 트윈은 현실세계의 데이터를 그대로 사용하기 때문에 몇 가지 차이점이 있다. 시뮬레이션은 일반적으로 하나의 프로세스를 목적으로 연구 및 사용 ↔ 디지털 트윈은 현실의 법칙을 가상화하기 때문에 다양한 프로세스 연구 가능 디지털 트윈은 실시간 데이터를 반영 디지털 트윈의 유형 순서대로 작은 유형부터 큰 유형 구성요소 트윈 / 부품 트윈 자산 트윈 시스템 트윈 또는 유닛 트윈 프로스세스 트윈 디지털 트윈은 왜 필요할까? 디지털 트윈을 통해 다양한 인사이트를 얻고 문제 해결에 도움을 줄 수 있어..
UIView - bounds and frame 2탄 우와! 2탄! 퇴근 후 간단하게 작성하는 글이니 편안한 문체 이해해주시면 감사하겠습니다. UIView - bounds UIView - frame UIView의 프로퍼티 중 하나인 bounds와 frame은 뷰의 위치와 크기를 나타내는 속성이다. CGRect 타입이며 origin과 size로 이루어져 있다. origin은 위치를 나타내며 size는 말 그대로 크기를 나타낸다. size는 bounds와 frame 모두 동일하다. 그런데 재밌는 점은 frame의 공식문서 설명을 보면 // frame Setting this property changes the point specified by the center property and changes the size in the bounds rectangle a..
UICollectionView - invalidateLayout() invaildateLayout() 직역하면 현재 레이아웃을 무효화하고 레이아웃 업데이트를 트리거합니다. 기능은 레이아웃 업데이트 사이클에 새롭게 레이아웃을 업데이트 하는 메서드다. 비슷한(?) 기능으로는 reloadData()가 있지만 invaildateLayout은 기존 데이터는 건들이지 않고 레이아웃만 업데이트하는 메서드다. 또한 레이아웃 업데이트를 '트리거' 하는거라 동일한 코드 블럭 안에서 여러번 호출 할 수 있다. 단, iOS 13에서 디바이스를 가로 세로 모드 전환 할 때 메서드를 호출하면 안먹힐 수 있다(?) 간단한 해결 방법으론 VC의 라이프 사이클 중 viewWillTransition(to:with:) 에서 invaildateLayout()를 호출하면 잘 먹는다.