전체 글
-
MIDI 2.0 이란 무엇인가?공부/멀티미디어 제작 2026. 2. 14. 16:35
MIDI(Musical Instrument Digital Interface) 2.0 이란 무엇일까요?MIDI 2.0은 1983년에 나온 MIDI 1.0의 대대적인 업그레이드 버전입니다. MIDI 1.0을 대체하는 게 아니라, 완벽한 하위 호환성을 유지하면서 훨씬 더 강력하고 세밀한 표현이 가능해진 확장 규격입니다.쉽게 말하면 “40년 넘게 잘 써온 MIDI를 21세기에 맞게 대폭 업그레이드한 버전”이라고 생각하면 됩니다.[참고] MIDI (Musical Instrument Digital Interface)란? (더보기 누르기)더보기MIDI(Musical Instrument Digital Interface)는 전자 악기, 컴퓨터, 관련 오디오 기기들이 서로 통신하고 데이터를 교환할 수 있게 해주는 업계 표..
-
Swift iOS: 이미지를 불러오는 Action Extension(액션 확장)에서 스크린샷 이미지를 인식하지 못하는 문제 해결 방법공부/Swift(프로그래밍 언어) 2026. 2. 8. 19:29
문제이미지를 불러오는 Action Extension 코드가 있음다른 경우는 전부 이미지를 불러올 수 있는데 특정 케이스에서는 이미지를 불러오지 못함 예) 스크린샷 직후 공유 메뉴를 실행했을 때기존 코드import UIKitimport SwiftUIimport MobileCoreServicesimport UniformTypeIdentifiersclass ActionViewController: UIViewController { // ... // private func handleInputImage() { guard let extensionItem = extensionContext?.inputItems.first as? NSExtensionItem else { return } guard let ..
-
SwiftUI TCA: Alert (경고창) 만드는 방법공부/Swift(프로그래밍 언어) 2026. 2. 5. 01:50
먼저, SwiftUI 와 TCA가 결합된 프로젝트에서는 경고창을 일반적인 방법으로 만들지 않고, AlertState라는 경고창을 위한 특수 상태를 활용합니다. AlertState를 사용하는 이유일반 Alert 대신 AlertState를 사용하는 이유는 아키텍처 일관성, 테스트 가능성, 상태 기반 UI 원칙과 직접적으로 관련되어 있습니다. 1. Alert를 “상태”로 다루기 위함TCA의 기본 철학은 UI는 상태의 함수라는 점입니다. 일반 SwiftUI Alert는 뷰 레벨에서 비교적 즉흥적으로 선언되는 반면, AlertState는 명확히 도메인 상태의 일부로 존재합니다. 경고창과 관련된 모든 사항이 State에 포함됩니다.Alert가 떠 있는지 여부Alert의 제목, 메시지어떤 버튼이 있고, 각 버튼이 어..
-
SwiftUI: 탭바가 있는 뷰(TabView) 만들기 (구버전, 신버전)공부/Swift(프로그래밍 언어) 2026. 2. 4. 15:13
위와 같은 형태의 탭 뷰를 만들고 싶다면 TabView를 사용해 만들 수 있습니다. 사전 작업탭 정보에 대한 Enum 추가먼저 각 탭에 대한 구분은 Bind? 을 통해 할 수 있습니다. 다양한 방법이 있는데, 여기서는 TabMenu이라는 사용자 정의 타입의 enum을 사용하여 탭 뷰에 사용할 페이지를 지정합니다. enum TabMenu: String, CaseIterable { case home = "홈" case tour = "투어" case gallery = "갤러리" case profile = "프로필" var systemImage: String { switch self { case .home: "house" case .tour: "ma..
-
음악 분야에서 생성형 AI의 대체 가능성과 한계읽을거리 2026. 2. 3. 19:16
최근 생성형 인공지능(Generative AI)의 발전은 음악 산업에 혁신적인 변화를 가져오고 있습니다. 이 글에서는 생성형 AI가 음악 분야에서 대체할 수 있는 영역과 그렇지 않은 영역을 분석해 보겠습니다. 이는 AI의 학습 기반 생성 원리와 음악의 창의적·기술적 특성을 바탕으로 한 논의입니다. 이제 본론으로 들어가 보겠습니다. 생성형 AI가 대체할 수 있는 영역1. 구성과 진행이 고착화된 대중음악 장르 및 배경 음악대중음악 장르, 특히 팝, 록, 힙합 등 이미 수많은 곡들이 축적되어 패턴이 예측 가능한 분야에서 생성형 AI의 역할이 두드러집니다. 이 영역은 AI가 효과적으로 대체할 수 있는 대표적 예입니다. 이유는 다음과 같습니다.먼저, AI의 편곡 기술이 이전과 비교할 수 없을 정도로 정교해졌습니다..
-
노션(메모앱)을 사용하지 않는 이유읽을거리 2026. 2. 1. 22:42
소개메모 앱 노션(Notion)은 전 세계적으로 많은 사용자를 보유한 메모 및 협업 도구입니다. 간단한 메모부터 데이터베이스, 프로젝트 관리, 협업 문서까지 하나의 앱 안에서 처리할 수 있다는 점이 가장 큰 특징입니다. 특히 팀 단위로 정보를 구조화하고 공유해야 하는 환경에서는 매우 강력한 도구로 평가받고 있습니다.다만 저는 협업 등 불가피한 상황을 제외하고는 개인적으로 노션을 거의 사용하지 않는 편입니다. (사실 '전혀'라는 표현을 사용해도 무방) 노션이 나쁘다기보다는, 제 사용 방식과 성향에는 다른 선택지가 더 잘 맞는다고 느끼기 때문입니다. 아래에서는 제가 개인 메모 용도로 노션을 선호하지 않는 이유를 정리해 보려고 합니다.참고: 노션(Notion)이라는 이름의 악보 사보 프로그램/앱도 있습니다. ..
-
SwiftUI TCA: 내비게이션 페이지 이동 (패스, 스택)공부/Swift(프로그래밍 언어) 2026. 1. 31. 00:52
PointTreeCo 의 공식 예제를 바탕으로 설명합니다.SwiftUI Case Studies: Navigation Stack swift-composable-architecture/Examples/CaseStudies/SwiftUICaseStudies/04-NavigationStack.swift at main · pointfreeco/swift-compA library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind. - pointfreeco/swift-composable-architecturegithub.com 구조맨 처음에 루트 뷰 (Navig..
-
SwiftUI: ‘appendInterpolation’ is deprecated 문제 해결하기공부/Swift(프로그래밍 언어) 2026. 1. 28. 23:57
Swift 6으로 업그레이드한 이후, SwiftUI에서 여러 개의 warning이 발생했습니다. 그중 대표적인 내용은 다음과 같습니다.'appendInterpolation' is deprecated: Localized string interpolation produces an unlocalized, debug description for this type of value. Use a type supported by LocalizedStringKey.StringInterpolation or initialize a LocalizedStringResource instead with an interpolated value that conforms to CustomLocalizedStringResourceConv..