| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- rxswift
- Clean Code
- Observable
- Protocol
- Refactoring
- SWIFT
- collectionview
- MVVM
- Xcode
- UITextView
- 스위프트
- map
- swiftUI
- swift documentation
- RxCocoa
- combine
- clean architecture
- tableView
- 클로드코드
- HIG
- uiscrollview
- 리펙토링
- UICollectionView
- 애니메이션
- 리팩토링
- Human interface guide
- uitableview
- 클린 코드
- ios
- claude code
- Today
- Total
목록ios (1162)
김종권의 iOS 앱 개발 알아가기
macOS 특정 버전 업데이트보통은 시스템 설정 > 일반 메뉴 > 소프트웨어 업데이트 메뉴 확인이 가능하지만 특정 버전으로 업뎃이 어려움특정 버전으로 업데이트 하려면 아래처럼 커맨드를 통해 가능만약 macOS 26.6으로 업데이트 하려면 터미널에 아래 명령어를 입력% softwareupdate --fetch-full-installer --full-installer-version 26.6명령어 의미softwareupdate: 소프트웨어 업데이트를 관리하는 macOS의 내장 명령어 도구--fetch-full-installer: Apple 서버로부터 운영체제 전체 설치 관리자 파일(InstallAssistant.pkg)을 다운로드하겠다는 옵션--full-installer-version 26.6: 다운로드할 설..
1. Skill이란?반복적으로 설명해야 하는 절차·규칙·컨텍스트를 한 번 문서화해서 재사용하는 것이 핵심. 매번 프롬프트에 장황하게 다시 설명할 필요 없음. ❌ Bad매 대화마다 사용자가 직접 반복 입력:"우리 커밋 메시지는 티켓 번호 접두사 붙이고, 제목은 72자 이내, 본문은 한글로, 브랜치명은 정해진 형식으로 써야 해..." ✅ GoodSKILL.md 파일 하나로 규칙 고정:---name: commit-writerdescription: 커밋 메시지 작성 시 사용. 티켓 번호 접두사 + 컨벤션 자동 적용---변경된 파일 확인브랜치명에서 티켓 번호 추출 [플랫폼] 형식으로 작성한 번 만들어두면 이후 대화에서는 "커밋해줘"만 입력해도 규칙이 자동 적용됨.2. 짧고 명확하게, 한 가지 목적만하나의 Ski..
지난 글 복습class Counter { var n = 0 func bump() { n += 1 }}let c = Counter()Task { c.bump() }Task { c.bump() }n += 1은 읽기 → 더하기 → 쓰기 3단계 → 두 스레드가 겹치면 한쪽 작업이 사라짐 (데이터 레이스)문제는 재현이 안 됨: 99번 잘 돌다가 사용자 기기에서만 터짐. Swift 5는 이걸 막아주지 않았음Swift 6는 이런 코드를 컴파일 에러로 만들어버림핵심 아이디어 = 격리 구역(isolation domain)코드는 항상 어느 구역엔가 속함: actor 인스턴스마다 구역 하나, @MainActor 구역, 또는 아무 데도 안 속한 nonisolated같은 구역 안 = 안전 (동시 접근 없음)구역 경계..
swift6 세팅swift6는 xcode16부터 지원Xcode > targets > Build Settings > swift compiler - Language에서 swift6 선택swfit6는 옵트인 모드패키지/모듈 단위로 swift6를 적용할 수 있음아래처럼 swiftLanguageMode(.v6)으로 적용 가능모듈별 점진적 마이그레이션이 설계 의도// Package.swift.target(name: "MyLib", swiftSettings: [.swiftLanguageMode(.v6)])데이터 레이스란? 두 개 이상의 스레드가 동시에 동일한 메모리 공간에 접근할 때 발생하며, 다음 조건이 모두 충족되는 상태를 의미 동시성: 둘 이상의 스레드가 동시에 메모리에 접근동일 메모리: 최소 하나의 작업이 해..
해당 글은 redis 창시자의 글을 정리한 글코드가 아닌 아이디어에 집중하기하루 수천 줄의 AI 코드를 직접 검토하는 것은 비효율적AI는 작은 함수 단위 같은 것은 잘하지만, 거시적 설계는 못함프로그래머는 코드 라인이 아닌 아키텍쳐, 디자인 모델(아이디어)를 통제하는데 집중해야함코드 리뷰 대신 '설계와 검증'생성 속도 불균형: 하루 5,000줄씩 쏟아지는 코드를 사람이 일일이 읽는 건 불가능함. 그 시간에 QA나 최적화 아이디어를 고민하는 게 이득.LLM의 한계: LLM은 함수 단위 작성엔 강하지만 거시적 설계(Architecture)엔 약함. 코드 훑을 시간에 원하는 설계를 지시하고 동작 원리를 질의·평가하는 게 훨씬 빠름.실전 검증: DwarfStar 프로젝트 경험상, GPU 커널을 직접 읽고 쓰기보..
1. [AI] Claude Code 병렬 처리로 효율 극대화하기 - git worktree 기본 개념2. [AI] Claude Code 병렬 처리로 효율 극대화하기 (claude --worktree)3. [AI] Claude Code 병렬 처리로 효율 극대화하기 - tmux 활용하기4. [AI] Claude Code 병렬 처리로 효율 극대화하기 - cmux 활용하기5. Claude Code 병렬 처리로 효율 극대화하기 - cmux, worktree, omc 병렬 처리하기 (.omc/handoffs, .omc/shared_memory.json) Ghostty 기반의 AI 전용 터미널 cmux, Claude Code의 --worktree 기능, 그리고 oh-my-claudecode(omc) 플러그인의 데이터..
1. [AI] Claude Code 병렬 처리로 효율 극대화하기 - git worktree 기본 개념2. [AI] Claude Code 병렬 처리로 효율 극대화하기 (claude --worktree)3. [AI] Claude Code 병렬 처리로 효율 극대화하기 - tmux 활용하기4. [AI] Claude Code 병렬 처리로 효율 극대화하기 - cmux 활용하기5. [AI] Claude Code 병렬 처리로 효율 극대화하기 - cmux, worktree, omc 병렬 처리하기 (.omc/handoffs, .omc/shared_memory.json)1. 왜 cmux인가?cmux는 단순한 터미널이 아니라 AI 에이전트(Claude Code, Aider 등)의 오케스트레이션을 위해 개발된 macOS 네이티..
1. [AI] Claude Code 병렬 처리로 효율 극대화하기 - git worktree 기본 개념2. [AI] Claude Code 병렬 처리로 효율 극대화하기 (claude --worktree)3. [AI] Claude Code 병렬 처리로 효율 극대화하기 - tmux 활용하기4. [AI] Claude Code 병렬 처리로 효율 극대화하기 - git worktree 기본 개념5. Claude Code 병렬 처리로 효율 극대화하기 - cmux, worktree, omc 병렬 처리하기 (.omc/handoffs, .omc/shared_memory.json)worktree가 왜 중요한가Claude Code나 GitHub Copilot CLI 같은 터미널 기반 AI 도구를 쓸 때 아쉬운 점이 있음.AI에게..