일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- MVVM
- IOS
- SwiftUI
- LGTM
- print 단점
- 함수형 코딩
- os_log
- swift github action
- Firebase
- combine
- Swift thread
- auto_assign
- 액션과 계산 데이터
- XCTest
- SwiftUI VStack
- Swift
- Apple Developer Academy @ POSTECH
- 쏙쏙 들어오는 함수형 코딩
- 2기화이팅
- github
- 하드디스크 삭제 원리
- firestore
- CI
- 함수형 프로그래밍
- swift CI 적용
- flutter
- ChatGPT
- xcode
- unittest
- 오픈소스
- Today
- Total
목록xcode (4)
개발공방
이번에 PR을 날리면 자동으로 빌드를 돌려서 develop이 박살나는지 확인해주는 CI를 적용해보았다. 적용해보면서 겪은 문제들과, 구글링해도 나오지 않던 바보같은 실수를 다른사람들은 하지 않았으면 하는 마음에 작성해본다. 우선은 특정 브랜치를 생성해서 진행한 게 아니라 develop 브랜치에서 진행했다. 그 이유는 develop에 들어갈 때 적용이 되는데, 새로 브랜치를 만들면 CI 추가 작업하고(한번에 된다는 보장이 없음. 분명 실수를 하기 때문에), develop에 PR날리고, 그 PR이 develop에 merge가 되어야 그 때부터 테스트를 할 수 있기 때문에 번거로워서 develop에서 작업했다. 우리팀 규칙으론 develop에서 작업은 원칙적으로 금지였지만, CI관련 작업이었고, 현재 앱 심사..
현재는 간단하게 제목과 닉네임을 받아볼 예정이다 Firebase에서 FirestoreDatabase 탭을 선택한다 위치는 asia-northeast3가 대한민국 서울이다 (참고 : https://firebase.google.com/docs/firestore/locations?hl=ko) Firestore의 구조는 Collection -> Document -> Field or Collection 이다 ex) freeboard -> NDV8FGEUcp7mt5R892bM -> title: "첫 번째 게시물", nickname: "chemi" Collection이 DB의 이름이고, Document가 개별적인 저장공간의 이름이고, Field가 저장되는 값이라 생각하면 이해가 편할 것 같다 Cloud가 생성되면 컬..
Firebase를 아예 처음 접하는 사람들을 위해, swift로는 연동을 해본적이 없기에 여러모로 도움이 되고자 글을 쓴다 https://console.firebase.google.com/?hl=ko 로그인 - Google 계정 하나의 계정으로 모든 Google 서비스를 Google 계정으로 로그인 accounts.google.com google 로그인 이후 firebase 콘솔로 이동해서 프로젝트 생성 클릭 Analytics는 사용 설정해도되고 안해도 되는데, 실제 출시할 앱이면 사용하는 게 좋지만 지금은 연결방법정도만 알아보는 과정이기 때문에 설정을 하지 않았다. (사용 설정해도 상관 X) 프로젝트 만들기를 누르면 프로젝트가 생성된다 (1분정도 소요) Xcode project를 생성한다 현재는 iOS..
Xcode에 기본적으로 import 되어있는 library를 제외하고 외부적으로 import를 해야하는 상황이 있다. 누군가 만든 library를 사용할 때 import하는 방법이다. 1. 해당 GitHub Repo로 들어간 후 클론코드를 복사한다 2. Xcode Project -> File -> Add Packages 3. 오른쪽 검색창에 URL을 입력한다. 4. 해당 library를 선택 후 Add Package 5. 해당 library가 추가된걸 확인할 수 있다. 6. 사용하고픈 위치에서 선언 후 사용하면 된다.