일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 푸켓여행
- 지팍스페인
- 러브스플리트
- 스페인여행
- 강릉
- Cocoapods #PrivateRepo #SpecRepo
- 괌 자유여행
- 그라나다
- 스페인광장
- cocoapod
- 대한항공
- swiftUI
- Swift #Concurrency #쓰레드
- Device 등록
- 세비야
- 스플리트
- 시밀란
- 러브자그레브
- 연금저축펀드
- 리브어보드
- 스쿠버다이빙
- 아시아나
- 크로아티아
- Concurrency #Swift #Combine
- 도심공항
- xcode
- SwiftUI #Skeleton #데이터갱신
- Gradle
- 라이브러리
- 공기먹는다이버스
- Today
- Total
목록Development (68)
JEP's Diary
Networking Configuration 네트워킹 클라이언트는 Sign, Auth 및 Chat SDK에 대한 전송 계층을 제공합니다. 한 번 구성하면 모든 SDK가 동일한 네트워킹 클라이언트 인스턴스를 통해 전송 프로토콜 메시지를 전송하며, 하나의 WebSocket 연결만 열리게 됩니다. Sign 또는 Auth SDK를 사용하기 전에는, WalletConnect Cloud에서 프로젝트를 시작할 때 생성된 프로젝트 ID와 SocketFactory 인스턴스를 구성하는 것이 필요합니다. Networking.configure(projectId: , socketFactory: SocketFactory()) Pair Configuration 페어링 API는 피어간 암호화된, 프로토콜에 중립적인 통신 계층을 설정..
지금까지 개발자 일을 하면서 배포날, 데모날, 행사날에 하나씩 이슈가 터졌던 경험이 있었는데... 이번 이슈는 처음 경험했던 거라 기록해본다. 다음에 또 이런일이 발생하지 않기 위해! 이슈의 원인은 각 앱에서 개발한 시간 기준이 달랐던 것. 정상 시나리오 앱A 와 앱B 가 있고 이는 서로 연동된다. 앱A에서 만료시간을 만들어서 QR 코드를 띄워주면 앱B에서 이를 읽고 데이터를 파싱하여 만료시간을 읽어낸다. 앱B가 만료시간을 읽어내는 과정은 QR 코드에 심어져 있는 만료시간 데이터가 long 값이어서 long 값을 다시 시간 타임스탬프로 변경해야 한다. 이때 앱A에서 만든 만료시간과 앱B에서 읽어낸 만료시간이 서로 같아야 하는데 개발하고 테스트하는 단계에서 문제없이 잘 동작했던 부분이다. 이슈 발생 행사가..
오늘 개발팀 회의에서 얘기가 나왔던 Copilot! GitHub Copilot 이란? 깃허브 코파일럿(GitHub Copilot)은 2021년 GitHub에서 출시한 자동 코드 완성 인공지능이다. OpenAI의 GPT-3 모델을 이용하여 깃허브의 수많은 레포지토리들을 학습시키는 방식으로 개발되었다. 주석이나 함수 이름에 담긴 의미를 파악하여 코드를 자동 완성해, 단순하고 번거로운 작업을 자동화한다는 점이 특징이다. 현재시점으로 두달 무료사용이 가능하다. 아이폰 앱 개발할때 copilot을 사용하고싶다면 VS Code를 사용할것! 간단한 세팅 절차는? 요기에서 Visual Studio Code에서 GitHub Copilot 시작하기 - GitHub Docs GitHub Copilot 사용해 보기 GitHu..
작년에는 회사에서 앱을 개발하는데 시간을 다 보낸 것 같다. 상반기에는 안드로이드 앱. 하반기에는 아이폰 앱. 앱을 출시한 후에는 추가 기능 개발 하는데 집중하면서 리팩토링이나 더 디벨롭하거나 자동화 같은 것들은 시간을 핑계로 쌓아두게만 되었다. 그래서 올해는 CI/CD 를 구축해놓는 걸 목표로 한다. CI/CD (Continuous Integration/Continuous Delivery)는 자동화하여 앱을 더욱 짧은 주기로 고객에게 제공하는 방법이고 CI/CD의 기본 개념은 지속적인 통합, 지속적인 배포이다. 작년 하반기에 아이폰 앱을 만들면서 쭉 아이폰 앱 추가 개발을 맡고 있었기 때문에 아이폰 앱의 빌드,필수 테스트 통과,자동화 배포 구축할 것이다. 특히나 우리 앱은 자산 이동을 할 수 있기 때문..
오늘 얘기가 나왔던 내용인데, 팀 내에서 해보고자 하는 git flow 전략을 정리해본다. 정리하면서도 100% 이해가 된 상태가 아니라서 직접해보고 수정할 부분이 생긴다면 수정하는걸로~! 브랜치 역할 및 사용 방법 main 릴리즈 배포 브랜치 release 다음 릴리즈 배포할 버전을 준비하는 브랜치 main 에서 1.0.0이 배포되면 다음 배포버전인 1.1.0을 준비하는 브랜치이다. develop에서 배포할 기능을 release에 rebase하여 배포할 버전을 준비한후 배포할때 main브랜치로 머지한다. QA 에서 나온 이슈들을 이 브랜치에서 수정하고 이 부분들을 develop에도 머지해주어야 한다. develop 다음 출시할 버전을 개발하는 브랜치. feature에서 개발이 완료된 작업들을 PR을 통..
소스코드 contract Multicall { struct Call { address target; bytes callData; } function aggregate(Call[] memory calls) public returns (uint256 blockNumber, bytes[] memory returnData) { blockNumber = block.number; returnData = new bytes[](calls.length); for(uint256 i = 0; i < calls.length; i++) { (bool success, bytes memory ret) = calls[i].target.call(calls[i].callData); require(success); returnData[i..
Compose Phases 1.Composition : 어떠한 UI를 그릴지 2.Layout : UI를 측정하고 어디에 그릴지 3.Drawing : UI를 렌더링 Recomposition 이미 수행한 Compose Phases를 다시 1번 Composition 부터 다시 수행하는 것 https://getstream.io/blog/jetpack-compose-guidelines/ 6 Jetpack Compose Guidelines to Optimize Your App Performance In this article, you’ll learn how to optimize your app performance following Stream’s top six Jetpack Compose guidelines. g..
상태 호이스팅 구성 가능한 함수에서 여러 함수가 읽거나 수정하는 상태는 공통의 상위 항목에 위치해야 합니다. 이 프로세스를 상태 호이스팅이라고 합니다. 호이스팅이란 들어 올린다 또는 끌어올린다라는 의미입니다. 상태를 호이스팅할 수 있게 만들면 상태가 중복되지 않고 버그가 발생하는 것을 방지할 수 있으며 컴포저블을 재사용할 수 있고 훨씬 쉽게 테스트할 수 있습니다. 이에 반하여, 컴포저블의 상위 요소에서 제어할 필요가 없는 상태는 호이스팅되면 안 됩니다. 정보 소스는 상태를 생성하고 관리하는 대상에 속합니다. 슬롯 기반 레이아웃 슬롯 기반 레이아웃은 개발자가 원하는 대로 채울 수 있도록 UI에 빈 공간을 남겨 둡니다. 슬롯 기반 레이아웃을 사용하면 보다 유연한 레이아웃을 만들 수 있습니다. https://..
Polygon은 이더리움 메인넷과 병렬로 실행되는 이더리움 확장 솔루션의 한 유형인 사이드체인입니다. Polygon은 메인넷에 비해 트랜잭션 속도와 비용을 향상시켜 이더리움 개발자에게 탁월한 솔루션입니다. 원래 Matic 네트워크로 알려진 Jaynti Kanani, Sandeep Nailwal 및 Anurag Arjun은 2017년 말에 Polygon을 설립했습니다. 폴리곤(Polygon)은 느린 거래 처리 속도 및 제한된 확장성 등 이더리움 블록체인의 한계점을 개선하여 확장성과 보안성을 높이고자 개발된 암호화폐이다. 이를 위해 이더리움과 연동된 별도의 사이드체인을 구축하여 거래 처리, 검증 및 기록은 폴리곤의 사이드체인에서 진행하고 최종 결과만 이더리움 블록체인에 기록하여 확장성을 개선한다. Polyg..
web3swift 2.6.6 사용중에 type encode 관련 이슈가 있었기도 했고 그 다음 버전이 3.0.4까지 나와있는 상황이라 적용을 검토했다. 라이브러리 변경 후 빌드 에러를 없애기 위해 3시간 정도 소요했고, 그 이후에는 라이브러리를 가져다가 사용하는 기능들은 테스트 코드에서 모두 확인해보려 했다. ReadOperation 먼저 klay, token 잔액 조회는 성공! 두개의 케이스는 ReadOperation을 이용한다. WriteOperation 그 다음에 klay, token 전송 테스트 코드를 작성했는데, 자꾸 Web3Error.dataError를 만났다. 아직 web3swift document가 공사중인 상태라서, 처음에는 web3 세팅 provider 세팅 parameter 값들 세팅..