-
Notifications
You must be signed in to change notification settings - Fork 3
Boost‐SwiftUI‐2024.01.14(화).md
유정주 JeongJu Yu edited this page Jan 14, 2025
·
4 revisions
- 2025.01.14 Tue PM 9:08 ・ 64Minutes 29seconds
- 고병학 권승용 김대황 유정주 이창준 정종인 홍승현
- 클로버노트를 이용해 회의 내용을 기록하고, Claude를 이용해 요약, 편집했습니다.
- 앱 숏컷 프로바이더에 인텐트 타입을 정의하여 자동으로 단축어 연결
- 사용자가 시리에게 말할 수 있는 명령어 구문을 프레이즈로 정의
- 애플리케이션 네임은 시스템에서 자동 제공
- 파라미터는 enum 타입만 지원 (구조체나 기본 타입은 직접 매핑 불가)
- 숫자 값 처리의 한계
- Int 타입 파라미터의 경우 시리 음성 인식에서 제대로 처리되지 않는 문제
- Measurement 타입을 사용하여 해결 (예: 온도, 수치 입력)
- 값 범위 제한(Inclusive Range)은 Measurement 타입에서 직접 지원하지 않음
- 별도 validation 로직 필요
- 포그라운드 실행 제어
- OpenAppIntent의 openAppWhenRun 값으로 앱 실행 여부 결정
- ForegroudContinuableIntent 프로토콜로 동적 앱 실행 제어 가능
- perform 함수 내에서 에러를 throw하여 앱 실행 흐름 제어
- enum 타입 제약
- 도메인 모델의 enum을 앱 숏컷용 enum으로 직접 사용 불가
- 별도의 앱 숏컷용 enum 정의 및 변환 로직 필요
- 컴파일 타임에 정적으로 정의되어야 하는 제약 존재
- Observable 패턴 활용
- 타이머 기능 구현
- 실행/중지 기능
- 1초 단위 업데이트
- 실시간 업데이트의 제약
- 초 단위의 명확한 업데이트 어려움
- 이벤트 기반 업데이트 방식
- 1초마다 폴링으로 해결 가능한 케이스도 존재
- 보일러플레이트 코드 활용
- Live Activity 타겟 추가 시 자세한 주석과 함께 기본 코드 제공
- 시뮬레이터와 실기기 간 동작 차이 존재
- 빌드 시간 최적화
- 기존 3분에서 18초로 단축
- 변경사항이 있는 모듈만 빌드
- 프리뷰 빌드 속도 개선
- 피처 모듈화와 레이어 모듈화 적용
- 공통 기능은 Common Feature 모듈로 분리
- HealthKit 피처
- 배너 피처
- 웹 컨텐츠 피처 등
- Localizable 서비스를 활용한 체계적 관리 시스템 구축
- 기획자가 문자열 키와 각 언어별 문자열을 업로드
- 디자이너가 Figma의 디자인과 Localizable 키를 매핑하여 UI 대응
- 개발자가 4+1개 언어에 대한 구현 및 검증 진행
- 팀원 간 실시간 피드백으로 부자연스러운 부분 개선
- Figma와 Localizable 연동 기능
- 프리미엄 요금제 필요 (월 약 80만원)
- 현재는 비용 문제로 기획자가 수작업으로 키와 문자열 관리
- 디자이너와 개발자는 수동으로 동기화 작업 진행
- 클라이언트 단의 문자열 조합 지양
- 플랫폼별 문자열 처리 방식 차이로 인한 유지보수 어려움
- iOS, Android, Web에서 각각 다른 방식으로 문자열 처리
- 단순해 보이는 문자열 결합도 플랫폼별 차이로 복잡도 증가
- 완성된 문장 단위로 관리하는 것을 권장
- 매개변수가 필요한 경우 placeholders 활용
- String의 init을 사용하여 매개변수 처리
- 플랫폼별 문자열 처리 방식 차이로 인한 유지보수 어려움
- 일본어/중국어의 문장 부호 처리
- 일반 마침표가 아닌 특수 문자 사용
- 문자 자체에 포함된 여백으로 인한 레이아웃 이슈
- 해당 언어 사용자에게는 자연스러운 현상으로 판단하여 별도 예외 처리 하지 않음
- 동적 텍스트 크기 대응
- 언어별 텍스트 길이 차이를 고려한 레이아웃 설계
- 디자인 단계에서 동적 크기 변화 고려
- 디자이너와 개발자 간 긴밀한 협업 필요
- 영국 접근성 법적 요구사항 준수
- 텍스트 크기 100%에서 400%까지 지원
- 50% 단위로 증가하는 텍스트 크기 옵션
- 웹에서 먼저 적용 후 앱으로 확장 예정
- Objective-C 코드가 있는 경우의 제약
- Swift와 Objective-C 간 순환 참조 이슈
- SPM 내부에서 Swift와 Objective-C 코동 사용 불가
- 의존성 그래프 신중한 설계 필요
- 메서드 missing 크래시
- 재현이 어려운 케이스 존재
- 화면 전환 시점의 크래시
- init 메서드 관련 크래시
고병학 | 권승용 | 김대황 | 김인환 | 유정주 | 윤동주 | 이준복 | 이창준 | 정종인 | 홍승현 |
---|---|---|---|---|---|---|---|---|---|
bengHak | ericKwon95 | qwerty3345 | loinsir | jeongju9216 | yoondj98 | junbok97 | SwiftyJunnos | chongin12 | WhiteHyun |