| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- collectionview
- Clean Code
- map
- ribs
- tableView
- ios
- HIG
- Refactoring
- uitableview
- clean architecture
- rxswift
- UICollectionView
- Observable
- RxCocoa
- Protocol
- scrollview
- swiftUI
- Xcode
- UITextView
- 클린 코드
- 스위프트
- uiscrollview
- SWIFT
- 리펙토링
- MVVM
- 애니메이션
- 리팩토링
- swift documentation
- Human interface guide
- combine
- Today
- Total
목록SWIFT (976)
김종권의 iOS 앱 개발 알아가기
스킬이란?클로드코드를 사용할 때 skills 하위 폴더 안에 skill이름을 넣고 md파일을 작성하면 `하나의 기능`으로 사용할 수 있는 것폴더 위치는 스콥에따라 3가지로 분류개인~/.claude/skills//SKILL.md모든 프로젝트프로젝트.claude/skills//SKILL.md이 프로젝트만플러그인/skills//SKILL.md플러그인이 활성화된 위치.claude/commands/ 안에 정의된 것들보다도 skill이 더욱 우선순위가 높음클로드코드 쓰임 예시skill-name: gen-test-cases: 특정 컴포넌트나 함수에 대한 단위 테스트(Unit Test) 코드 자동 생성.write-read-me: 폴더 구조와 코드를 읽고 README.md 초안 작성.실행 원리저렇게 skill을 명시해놓..
변경된 앱 아이콘 컨셉예전에는 맥북, 아이폰, 애플워치 마다 같은 성격의 설정 앱이라도 이미지가 미세하게 달랐었음하지만 이제는 매우 심플하게 처리맥북, 아이폰: 네모난 배경애플워치: 동그란 배경이렇게 처리하게된 배경에는 `foreground layer`, `background layer`, `.icon`과 관련된 개념이 생겨나서 부터 확립Icon Composer (layer와 .icon)애플에서는 앱 아이콘을 정의할때 layer(*층)라는 것을 두어서 이것을 사용하여 앱 아이콘을 표현함층을 두어서 입체적으로 표현하려는것이 목적층(layer)들을 합쳐놓은(Composer)것을 Icon Composer라고 지칭이 개념에 의해, 이제 여러가지의 앱 아이콘 제작이 없이, 단순히 각 layer를 표현하는 이미지만..
탭했을 때 키보드 내리기다른 제스처도 동시에 동작하게끔 하기 위해 보통 아래처럼 simultaneousGesture를 사용하여 tapGesture 이벤트를 얻어서 isFocused = false로 처리struct ContentView: View { @State private var text: String = "" @FocusState private var isFocused: Bool var body: some View { ScrollView { VStack(spacing: 16) { TextField("텍스트를 입력하세요", text: $text) .textFieldStyle(.roundedBor..
전체빌드 개념단어 그대로 캐싱 없이, a부터 z까지 모든 파일을 빌드하는 것 cf) 빌드란?소스 코드들을 실행 가능한 형태로 메모리에 올리는 것증분빌드 개념증분 빌드(Incremental Build)는 “변화가 영향을 미치는 범위만 찾아서 필요한 파일만 재컴파일”하는 방식Xcode는 이를 위해 “의존성 그래프(Dependency Graph)”와 “인터페이스 파일(.swiftinterface / .dia)”을 사용증분빌드 원리빌드 시스템은 파일마다 해시(hash) 또는 timestamp를 기록해 두고 있다가 사용FileA.swift → 해시값 0xA2B3 FileB.swift → 해시값 0xC883Swift는 모든 .swift 파일 내부의 타입, 프로토콜, extension 등을 분석해 파일 간의 의존성 ..
xcactivitylogXcode가 빌드/테스트/아카이브할 때 생성되는 빌드 로그의 원본 파일(= Xcode UI에서 보는 Build Log 화면(⌘ + 9)의 실제 데이터 파일)바이너리 파일은 아래 경로에 위치~/Library/Developer/Xcode/DerivedData//Logs/Build/얻어내는 법Xcode > Build > 오른쪽마우스 > Show in Finder 클릭Show in Finder 클릭 시 Logs/Launch에 들어가게됨여기서 Logs/Launch가 아닌, Logs/Build 경로에 가야하므로 Logs경로로 이동한 다음 Build 폴더로 이동마침내 UUID.xcactivitylog 파일 획득이 가능들어있는 정보들전체 빌드 타임라인각 빌드 단계별 duration컴파일러가 어떤..
.trace 파일Instruments를 통해 나오는 .trace 파일은 자주쓰는 xctrace export 옵션--listtrace 파일 내부에 어떤 데이터들이 들어있는지 전체 목록을 보여줌 (schema 이름들을 확인이 가능)xctrace export --input test1.trace --list예)time-samplesignpostprocessthread-statesystem-callsmemorycall-tree --tocTrace Table of Contents(Toc)를 XML로 바로 출력xctrace export --input test1.trace --toc 이걸 보면 전체 구조를 한눈에 확인 가능 --xpath특정 부분만 필터링하기 위한 고급 옵션ex) signpost 데이터만 추출: --x..
1. 검색 관련* 파일 탐색: cmd + P* 문자열 전체 탐색: cmd + shift + F* 파일 내 검색: cmd + shift + O* 다음/이전 검색 결과로 이동: cmd + G / shift + cmd + G* 검색된 상태에서 아래로 내려가기: cmd + ↓* 현재파일에서 바꾸기: opt + cmd + F* 전체파일에서 바꾸기: shift + cmd + H* 현재파일 심볼 이름 바꾸기: F2* 해당 폴더 안에서 검색: option + shift + F 2. 포커싱/탐색* 코파일럿 챗 오픈 & 포커싱: ctrl + cmd + i* 코파일럿 챗 클로즈 / 오픈: option + cmd + B* 코파일럿 챗 agent / ask 모드 선택: cmd + .* 커밋 그래프로 포커싱: ctrl + shi..
1. VScode에 깃헙 코파일럿 세팅 방법 (github copilot)2. VScode에 깃헙 코파일럿 활용 방법 (github copilot, Ask, Agent, Edit)3. VScode에 깃헙 코파일럿 활용 방법 (github copilot, 지침, 프롬프트)깃헙 코파일럿 기능 - context단위로 물어보기만약 mongodb 폴더에 관해 궁금한 경우?폴더 오른쪽 마우스 클릭 > Add Folder to Chat 클릭그럼 채팅에 mongosh 폴더 context가 들어가고 질문하면 완료코드 editor에서 수정요청 하기단축키 cmd + I 입력 > 인라인 채팅창이 보이면 여기에 필요한 요청을 적기결과)초록색으로 AI가 응답해주고, Accept을 누르면 적용됨코드 적용하기채팅에서 AI가 알려준 ..
