목록iOS (58)
아요 개발 일기
안녕하세요~~이번 글에서는 UserDefaults 공식 문서를 참조하여 UserDefaults의 개념과 특징 및 주의 사항들에대해 알아보도록하겠습니다! 사용법이 조금 간단해서 글을 하나로 빼는게 애매하다는 생각을 했는데..그래도 중요하고, 자주 사용하기에!!(거의 모든 앱에서 필수로 사용하는 듯합니다) 혹시 데이터 저장 방식에대해 처음 접하거나, 전체적으로 한번 훑고 싶으신 분들은iOS 데이터 저장 방식 알아보기 - 개념?편 을 참고해주세요!UserDefaults앱이 시작할 때의 기본상태나 기본 동작을 결정하는데 사용되므로 UserDefaults라고 불립니다.앱이 다시 시작되더라도 데이터가 유지되며, 네트워크 연결이 필요하지 않아 사용이 매우 간편합니다.특징- 네트워크 연결이 필요하지 않고, 앱이 시작될..
안녕하세요!! 이번 글에서는 데이터 저장 방식에 대해 알아보려고 합니다 :) 회사에서 저장 관련 기능을 구현하게 되면서 이 기회에 전체적으로 정리해두면 좋을 것 같아서 적게되었습니다 다양한 상황에서 잘 활용할 수 있기를 !! 자주 사용하고 중요한 저장방식에대해서 자세히 다루기 위해 총 다섯 개의 글로 나눠서 정리하겠습니다! 1. 데이터 저장 방식 알아보기(여는 글) 2. UserDefaults 3. File System 4. Core Data 5. SwiftData 데이터 저장의 중요성 앱에서 데이터 저장과 관리는 사용자 경험과 성능을 향상시키는 데 매우 중요한 역할을 합니다. 적절한 데이터 저장으로 사용자 설정, 진행 상황, 계정 정보 등이 유지되며, 앱의 가용성과 신뢰성이 보장됩니다. 특히, 앱이 재..
안녕하세요!오랜만입니다 ㅎㅎ..이번에는 새로운 기술이 아닌 기초 개념들에대해서 가지고 왔어요.기초 개념에대해 제가 부족하다는 것을 느끼고 문서도 보고 GPT에도 물어보면서제 나름대로 정리해보았습니다. 급할수록 돌아가자 카테고리는제가 부족함을 느낄때마다 특정 부분의 개념들을 정리해서 올릴 것 같습니다.개념에대해 글로적어내는 과정에서 독자?분들이 보시기에 다소 엉뚱한 질문들이 있을 수 있습니다.부족함을 인정하고 스스로 해답을 찾으며 더 단단히 개념을 이해하려고 합니다. 때문에 개념들이 정말 기초적인 부분일 수 있습니다ㅎㅎ 이 글들이 저와 같은 고민을 하여 다시 처음으로 되돌아가는분들이 있거나,iOS 개발자 혹은 it 개발자로써 첫 걸음을 내딛는 분들에게 도움이 되었으면 좋겠습니다. 서론이 많이 길었네요ㅎㅎ아..
안녕하세요 @.@이번에는 Fastlane을 이용하여AppStoreConnect에 testFlight가 업데이트되었을때Slack에 알람이갈 수 있도록 해보겠습니다! 해당부분의 자세한 설명은 공식 사이트를 참고해주세요 :)https://docs.fastlane.tools/actions/slack/ slack - fastlane docsCreate an Incoming WebHook and export this as SLACK_URL. Can send a message to #channel (by default), a direct message to @username or a message to a private group group with success (green) or failure (red) stat..
안녕하세여'-'오늘은 fastlane을 설정해보겠습니다!fastlane은 앱의 베타 배포 및 릴리스를 자동화시켜주는 프로그램입니다 일반적으로 배포를 할때에는Xcode -> Archive -> Xcode Upload -> AppStoreConnect Metadata 정보 업데이트 ... 등여러가지 작업이 필요한데,이 긴 작업을 간단하게 코드 한 줄로 배포할 수 있도록 해줍니다 아주아주 간편하겠죠???같이 설정해봅시다! 자세한 설명은 아래 공식 사이트를 참고해주세요 :)https://docs.fastlane.tools/getting-started/ios/setup/ Fastlane 설치Fastlane을 설치하는 방법은 다양하게 있어요!가장 선호되는 방법은 Bundler을 통한 방법이고,macOS의 경우 H..
안녕하세요~ 이번에는 TextView에서 Placeholder 구현해보겠습니다! TextField에는 기본적으로 Placeholder 기능을 제공하지만, TextView에서는 제공하지 않아요ㅜㅜ 그래서 직접 만들어 주어야하는데요! 어렵지 않으니까 같이 만들어봅시다ㅎㅎㅎ 간단한 기능에 관련된 부분이기때문에 UI는 아래 이미지와 같이 만들어 보겠습니다 :) 우선 본격적으로 들어가기 전에, Placeholder는 어떤 역할을 하는지 한번 생각해 봅시다 사용자가 Text를 입력하기 전 즉, TextView 내부에 Text가 비어있을때 textColor가 회색인 안내문구가 나오도록 하는 기능이죠? 그럼 기본적으로 회색의 text가 나오도록 하고.. 사용자가 textView를 클릭했을때를 감지하여 회색의 안내문구를..
Lottie? Airbnb에서 개발한 Lottie는 모든 기본 앱에서 After Effects 애니메이션을 렌더링 하는 iOS, macOS, Android 및 React Native 라이브러리입니다. 쉽게 말해서, 아래와 같이 Json 형태로 변환된 일명 움짤이라고 불리는 .gif 파일이나 짧은 일러스트 동영상을 imageView에 뿌려주는 편리하고 자주쓰는 플렛폼입니다. 어렵지 않으니 위와 같이 만들어봅시다! :D 참고 사이트 Airbnb - Lottie Airbnb - lottie_guide 일단 터미널에서 프로젝트 위치로 이동한 후, 아래 명령어로 pod 파일을 만들어줍니다. pod init podfile을 열고 아래 pod를 추가해줍니다. pod 'lottie-ios' 이제 터미널로 돌아가서 po..
안녕하세요 :ㅇ GCD + DispatchQueue에대해 알아보겠습니다 :D 동기 & 비동기에 대해서 모르시는 분은 동기(Sync) / 비동기(Async)글을 참고하고 와주세요! Concurrency(동시성) 란? 쉽게 설명하자면, 한번에 여러개 수행하는 것을 말합니다. App은 한번에 여러개의 일을 수행해야 사용성이 좋겠죠?? 그렇다면 App이 하는일은 무엇일까요? - 사용자 인터랙션 처리 - 네트워킹 - 백그라운드에서 파일 다운로드 - 파일 저장하고 읽기 만약에 네트워킹하느라 사용자의 인터렉션을 처리하지 않는다면 어떻게 되나요? 앱의 로딩이 길어짐!! (사용성 저하) 동시성 늘리기위해서는 어떻게 해야할까요? 하나의 큰 작업을 여러가지 task로 나누어서 우선 순위를 정합니다. Main Thread에서..