분류 전체보기 110

[SwiftUI] SwiftUI에서 UserDefaults를 사용 -> @AppStorage

어플리케이션 설정을 저장하는데 쓰는 UserDefaults 객체이다 State가 바뀔때 State로 UserDefaults를 사용할 것이면 약간의 전처리가 필요하다. 1. UserDefaults propertyWrapper import Foundation import Combine @propertyWrapper struct UserDefault { let key: String let defaultValue: T init(_ key: String, defaultValue: T) { self.key = key self.defaultValue = defaultValue } var wrappedValue: T { get { return UserDefaults.standard.object(forKey: key) ..

IOS/SwiftUI 2022.06.16

[운영체제] 3. Process - 2 (Thread)

Thread(lightweight process) Thread란 프로세스의 내부의 CPU 실행 단위 / CPU 수행 단위이다. 동일한 작업을 하는 프로세스가 여러 개 인 경우 프로세스의 Address space는 하나만 생성하고 여러 개의 thread를 둠으로써 메모리의 낭비를 줄이고 프로세스마다 다른 부분의 코드를 실행할 수 있다. (lightweight process) Thread의 구성 program counter register set stack space thread가 동료 스레드와 공유하는 부분(=task) code section data section OS resources 전통적인 개념의 heavyweight process는 하나의 thread를 가지고 있는 task로 볼 수 있다. 다중 ..

CS/운영체제 2022.06.07

[HIG] Audio

Audio iPhone 및 iPad는 내부 또는 외부 스피커, 헤드폰을 통해 오디오를 재생할 수 있으며 Bluetooth 또는 AirPlay 지원 장치를 통해 무선으로 오디오를 재생할 수 있습니다. 사람들은 볼륨 버튼, 벨소리/무음 스위치, 헤드폰 컨트롤, 제어 센터 볼륨 슬라이더 및 타사 액세서리의 사운드 컨트롤을 포함하여 여러 유형의 컨트롤을 사용하여 장치의 사운드를 조작합니다. 사운드가 앱 경험의 주요 부분이든 장식이든, 앱 사운드가 어떻게 작동해야 하는지에 대한 사람들의 기대를 충족해야 합니다. Silence 사람들은 벨소리 및 수신 메시지 톤과 같은 예기치 않은 소리에 방해받지 않으려면 장치를 무음으로 전환합니다. 이 시나리오에서 그들은 또한 키보드 클릭, 음향 효과, 게임 사운드트랙 및 기타 ..

카테고리 없음 2022.06.06

[HIG] Apple Pencil and Scribble

Apple Pencil and Scribble Apple Pencil은 메모 작성, 스케치, 페인팅, 문서 표시 등을 할 때 픽셀 수준의 정밀도를 제공하는 iPad 앱을 위한 다재다능하고 직관적인 도구입니다. iPadOS 14 및 이후 모델에서 Scribble은 Apple Pencil을 사용하여 빠르고 개인적인 기기 내 필기 인식 을 통해 모든 텍스트 필드에 텍스트를 입력할 수 있습니다 . 예상되는 동작을 지원합니다. Apple Pencil은 그리기, 필기 및 마킹을 쉽고 자연스럽게 하도록 설계되었으며 포인터 또는 UI 상호 작용 도구로도 사용됩니다. 사람들이 기대하는 Apple Pencil 동작을 활성화하는 것 외에도 예기치 않은 상호 작용도 지원하는 것이 좋습니다. 예를 들어 앱에서 사람들이 문서 여..

IOS/HIG(UI,UX) 2022.06.06

[HIG] Accounts

Accounts 앱의 핵심 기능에 필요한 경우에만 사람들에게 계정을 만들도록 요청하십시오. 그렇지 않으면 사람들이 계정 생성 없이 앱을 즐길 수 있게 합니다. 앱에 계정이 필요한 경우 Apple로 로그인을 사용하여 사람들에게 신뢰할 수 있는 일관된 로그인 경험을 제공하고 여러 계정과 암호를 기억하지 않아도 되는 편리함을 고려하십시오. 계정 생성의 이점과 가입 방법을 설명합니다. 앱에 계정이 필요한 경우 요구 사항의 이유와 이점에 대한 간략하고 친근한 설명을 작성하고 로그인 화면에 이 메시지를 표시합니다. 로그인을 최대한 오래 미루세요. 사람들은 유용한 작업을 수행하기 전에 강제로 로그인해야 하는 경우 앱을 포기하는 경우가 많습니다. 이러한 상황을 방지하려면 사람들에게 앱에 대한 약속을 하도록 요청하기 전..

IOS/HIG(UI,UX) 2022.06.06

[HIG] 3D touch

3D Touch 지원되는 장치에서 사람들은 터치스크린에 다양한 수준의 압력을 가하여 추가 기능에 액세스할 수 있습니다. 앱은 상황에 맞는 표시 (또는 Peek 및 Pop 지원)하여 항목과 항목에 영향을 미치는 데 사용할 수 있는 작업을 표시하여 응답할 수 있습니다. iOS 13 이상을 실행하는 기기에서 사람들은 기기가 3D 터치를 지원하는지 여부에 관계없이 길게 터치 제스처를 사용하여 상황에 맞는 메뉴를 열 수 있습니다. 3D Touch 장치에서 제스처는 context 메뉴를 더 빨리 표시할 수 있습니다. Home Screen Interaction iOS 13 이상을 실행하는 기기의 홈 화면에서 사람들이 앱 아이콘을 길게 터치하면 앱이 컨텍스트 메뉴를 표시할 수 있습니다(3D Touch 기기에서는 아이콘..

IOS/HIG(UI,UX) 2022.06.05

[운영체제] 3. Process - 1

프로세스의 개념 "Process is a program in execution" 즉, 실행중인 프로그램을 의미 프로세스를 이해하려면 프로세스의 문맥을 이해해야 한다. 프로세스의 문맥 (context) 특정시점에서 프로세스가 어디까지 수행을 했는지에 대한 정보를 담고있다. 프로세스의 문맥은 프로그램 카운터가 어디를 가리키고 있는지(코드의 어디까지 실행했는가), 메모리에 담고있는정보, 스택정보 등을 담고있기때문에 현재시점에 프로세스의 진행상황을 알 수 있다. CPU 수행 상태를 나타내는 하드웨어 문맥 Program Counter가 가르키는 instruction의 위치 -> 어디까지 실행하였느가? 각종 register -> 어떤 정보가 담겨져 있는가? 프로세스의 주소공간(메모리와 관련) code, data, ..

CS/운영체제 2022.05.29

[운영체제] 1. 운영체제란?

운영체제란? 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 협의의 운영체제(커널) - 운영체제의 핵심부분으로 메모리에 상주하는 부분 커널은 컴퓨터 전원을 켠 다음 부팅이 일어난다음 항상 메모리에 상주하는 부분 광의의 운영체제 - 커널 뿐 아니라 각종 주변 시스템 유틸리티를 포함한 개념 윈도우를 설치하면 메모리에 상주하지 않는 별도의 프로그램들도 같이 설치가 되는데, 이들도 운영체제의 범주에는 포함된다. 운영체제의 목적 두개의 큰 목표를 가짐 하드웨어를 효율적으로 관리 사용자나 각종 소프트웨어가 컴퓨터 시스템을 편리하게 사용할 수 있는 환경을 제공 자원을 효율적으로 관리 컴퓨터 시스템의 자원(프로세서, 기억장치, 입출력 장치)을 효율적으로 관리한다..

CS/운영체제 2022.05.29

[HIG] Settings

일부 앱은 설정 또는 구성을 선택하는 방법을 제공해야 할 수 있지만 대부분의 앱은 그렇게 하는 것을 피하거나 지연할 수 있습니다. 성공적인 앱은 대부분의 사람들에게 즉시 잘 작동하는 동시에 경험을 조정할 수 있는 몇 가지 편리한 방법을 제공합니다. 대부분의 사람들이 기대하는 방식으로 앱이 작동하도록 디자인하면 설정의 필요성이 줄어듭니다. 시스템에서 무엇을 할 수 있는지 추론합니다. 사용자, 장치 또는 환경에 대한 정보가 필요한 경우 사용자에게 묻지 말고 가능하면 시스템에 쿼리하십시오. 예를 들어, 지역 옵션을 제시할 수 있도록 다른 사람에게 우편 번호를 입력하도록 요청하는 대신 현재 위치를 사용할 수 있는 권한을 요청하십시오. 사용자가 자신의 정보에 대한 액세스를 거부하는 경우 수동 입력으로 정상적으로 ..

IOS/HIG(UI,UX) 2022.05.29

[HIG] Navigation

Navigation 사람들은 그것이 그들의 기대를 충족시키기 전까지 앱의 네비게이션을 알아차리지 못한다. 개발자는 네비게이션에 주의를 끌지 않으면서 앱의 구조와 목적을 도와주는 방식으로 네비게이션을 구현해야한다. 계층적 네비게이션 (Hierarchical Navigation) 목적 화면에 도닥할 때 까지 한 화면 당 하나의 선택만 있도록 해라. 다른 목적지로 가기 위해서는 단계를 되돌리거나 처음부터 다시 시작하여 다른 선택을 해야한다. 설정 앱과 메일 앱은 계층적 네비게이션 스타일을 사용한다. 플랫 네비게이션 (Flat Navigation) 여러 콘텐츠 범위 사이에서 전환한다. 뮤직, 앱 스토어가 플랫 네비게이션 스타일을 이용한다. 컨텐츠 중심 혹은 경험 중심 네비게이션 컨텐츠 사이에서 자유롭게 움직이거..

IOS/HIG(UI,UX) 2022.05.29