[SwiftUI] @AppStorage와 @SceneStorage 프로퍼티 래퍼 이해하기
·
Apple/SwiftUI
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 @AppStorage와 @SceneStorage 프로퍼티 래퍼에 대해서 정리를 해보려고 합니다. 앱에 요구사항 중 하나는 앱을 다시 시작해도 유지되어야 하는 소량의 데이터를 앱이 저장하고 있어야 한다는 점입니다. 이러한 부분들을 위해서 SwiftUI는 소량의 앱 데이터를 지속적으로 저장하기 위해 두 개의 프로퍼티 래퍼(@AppStorage, @SceneStorage)를 제공하고 있습니다! @SceneStorage 프로퍼티 래퍼@SceneStorage 프로퍼티 래퍼는 개별 앱 화면 인스턴스의 범위 내에서 소량의 데이터를 저장하는 데 사용되며 앱이 실행되는 사이에 화면 상태를 저장하거나 복원하는 데 주로 사용됩니다.  예를 들어서 우리가 어떤 앱에서 양식을 ..
[운영체제] CPU 스케줄링 알아보기
·
CS/운영체제
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 오랜만에 운영체제에 대해서 다뤄볼건데 그 중에서도 CPU 스케줄링에 대해서 한번 정리를 해보려고 합니다. 본론에 들어가기에 앞서서!운영체제가 CPU로 할당하는 대상에는 프로세스 뿐만 아니라 스레드도 포함이 되어 있지만 이번 포스팅에서는 이 두가지를 '프로세스'로 통칭해서 포스팅한다는 점 유의하고 봐주시면 감사하겠습니다. 스케줄링이란?먼저 기본적인 부분부터 짚고 넘어가겠습니다.  모든 프로세스와 스레드는 실행되기 위해 자원을 필요로 합니다. 여기서 자원이란 프로세스가 실행되기 위해 요구되는 모든 요소를 의미하죠. 따라서 자원 배분은 매우 중요한 문제입니다. 하지만 만약 이 중요한 자원을 무작위로 배분해, 어떤 프로세스에는 100 중 80을 주고, 다른 곳에..
[RxSwift] RxSwift 개념 이해하기
·
Apple/RxSwift
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 드디어 RxSwift에 대한 개념에 대해서 정리해보려고 합니다. RxSwift에 대해서 처음 공부하는 거다 보니 잘못된 부분이 있을 수도 있는데잘못된 내용 지적이나 피드백은 댓글로 부탁드립니다!  그럼 바로 시작해보겠습니다! RxSwift가 뭔데?우선 RxSwift가 어떤 것인지부터 이해하고 시작합니다. RxSwift, 정말 많이 들으신 분들도 계실 거고 처음 들어보시는 분들도 계실텐데 한줄 요약을 해보면 반응형 프로그래밍(Functional Reactive Programming)을 Swift에서 구현할 수 있도록 도와주는 라이브러리입니다.   그렇다면 반응형 프로그래밍(리액티브 프로그래밍)이 도대체 뭐냐?(여기서부터는 리액티브 프로그래밍이라고 표현하겠습..
[visionOS] Reality Composer Pro 사용해보기
·
Apple/visionOS
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 visionOS를 공부하면서 알게된 Reality Composer Pro 사용 방법에 대해서 한번 정리해보려고 합니다. 그럼 바로 시작하겠습니다! Reality Composer Pro란?우선 Reality Composer Pro가 뭔지 개념부터 짚고 넘어가자면Reality Composer Pro는 Apple이 개발한 고급 3D 콘텐츠 제작 도구입니다. 이 도구는 주로 visionOS 플랫폼을 위한 공간 컴퓨팅 앱과 경험을 만드는 데 사용됩니다. Reality Composer는 Pro와 일반, 이렇게 2가지로 분류가 되는데 어렵게 생각할 필요 없이 Reality Composer는 일반 개발자와 디자이너를 위한 도구, Reality Composer Pro는 ..
[Git] Xcode main 브랜치에 Merge하기
·
Git
안녕하세요! 피피아노입니다🎵 이번 포스팅에서는 팀 프로젝트를 진행할 때 역할을 나눠서 진행하게 되는데 각각 맡은 파트를 main 브랜치에 Merge(병합)하는 과정을 정리해보려고 합니다.  (최근에 Merge에 대해서 경험을 해봤는데 잊지 않게 정리해보려고요!) 그럼 바로 시작하겠습니다! Merge하기까지의 흐름 요약우선 팀 프로젝트에서 Merge하기까지의 과정을 간단하게 요약해보자면 브랜치 생성:각 팀원은 자신이 담당한 기능에 대해 main(또는 develop) 브랜치에서 새로운 feature 브랜치를 생성합니다.예: feature/login, feature/profile, feature/notification 등저희 팀은 이런 식으로 branch를 구성했습니다!(memo branch도 feature..
[visionOS] RealityKit과 ARKit 알아보기
·
Apple/visionOS
안녕하세요! 피피아노입니다 🎵 이번 포스팅에서는 RealityKit과 ARKit에 대해서 한번 정리해보려고 합니다. RealityKit이란?RealityKit은 증강 현실(AR) 애플리케이션을 개발하기 위한 프레임워크입니다. 이 프레임워크는 AR 콘텐츠를 더욱 쉽게 제작하고 렌더링할 수 있도록 다양한 기능을 제공합니다. RealityKit은 ARKit과 함께 사용되며, 3D 객체, 애니메이션, 물리 효과, 그리고 실시간 렌더링과 같은 고급 기능을 지원하여 개발자들이 더욱 몰입감 있는 AR 경험을 제공할 수 있게 합니다. 즉, Vision Pro의 애플리케이션에 3D 객체를 넣기 위해서는 RealityKit을 꼭 사용해야 합니다.RealityKit은 3D Simulation과 rendering 기능을 제..