일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- String
- Unicode
- 스위프트
- 디자인패턴
- 이니셜라이저
- property
- interpace
- 코딩테스트
- extension
- tuist
- url
- Foundation
- enum
- UIKit
- Terminal
- optional
- type
- Protocol
- delegate
- initalizer
- initializer
- Git
- Xcode
- Swift
- Class
- Method
- IOS
- init
- struct
- instance
- Today
- Total
목록분류 전체보기 (78)
아리의 iOS 탐구생활
요즘 공부할 때 구글링 보다는 GPT를 활용해서 공부를 하고 있는데요.이번에 WWDC24가 발표되면서 회사 팀 내에서 스터디를 시작하게 되었습니다.그러면서 제가 효율적으로 공부하기 위한 방법을 찾다가... 발견한 꿀팁을 공유하기 위해 작성하게 되었습니다. 특정 세션 내용을 간단하게 정리된 내용을 추출해보고 싶다.세션 영상을 보기 전에 약간의 이해도가 있는 상태에서 영상을 보면 좀 더 이해하기 쉽지 않을까? 해서 고민하다가 아래와 같은 방법을 생각하게 되었습니다. 특정 세션의 WWDC 유튜브 영상을 진입한다.해당 영상의 영어 자막 파일을 .txt 파일로 추출한다.아래 링크로 진입해서 유튜브 영상 링크를 붙여넣어 다운로드 버튼을 누르면 자막 파일을 만들어준다.https://downsub.com/GP..
GitHub - sunshinejr/SwiftyUserDefaults: Modern Swift API for NSUserDefaults Modern Swift API for NSUserDefaults. Contribute to sunshinejr/SwiftyUserDefaults development by creating an account on GitHub. github.com SwiftyUserDefaults는 한 곳에서 키를 정의하고, 값 유형을 쉽게 사용할 수 있으며, 컴파일 시 안전성과 편의성을 높여주는 컴파일 타임 검사를 무료로 이용할 수 있다고 한다. 한마디로 UserDefaults를 사용할 때, 타입 안전성과 코드의 간결성을 동시에 얻을 수 있는 아주 편리한 라이브러리다. Generic, ..
최근에 웹뷰 관련된 작업을 진행했는데, 웹뷰에서 보내는 메시지를 전달받아 화면을 이동하거나 띄우는 동작을 구현하였다. 사실 뭣도 모르고 기존 프로젝트에 작성되어있던 코드를 참고하여 작업을 완료하였기 때문에... 그냥 넘어가기 굉장히 찝찝하고 이해가 부족하다고 느껴서 정확히 이해하고 넘어가고 싶어서 정리하게 되었다. 내가 알아볼 키워드는 다음과 같다. WKScriptMessageHandler WKWebView evaluateJavaScript iOS에서 웹뷰를 사용할 때 양방향 통신을 하는 방법 WKScriptMessageHandler | Apple Developer Documentation An interface for receiving messages from JavaScript code running..
안녕하세요. 요즘에 취업 이후 글이 뜸해진 것 같아... 반성하고 다시 돌아온 아리입니다. 직장생활 뿐만 아니라... 어쩌다가 갑자기 강아지를 키우게 되어서 육아하느라고 정신이 없었습니다. (TMI) 취업에 성공하고 개발자로 회사생활을 시작한지 5개월이 다 되어가네요. 울집 강쥐도 태어난지 5개월이 되었어요.🥹 강아지와 함께 살게되면서 생각해야할 것과 할일이 많아져서 너무 바쁘지만 그래도 덕분에 행복하고 즐거운 생활을 하고 있답니다. 이번 글에서는 제가 회사 프로젝트에 Tuist를 적용하게 되었는데, 그 중 템플릿을 만들어 모듈 생성을 자동화하는 방법을 기록해보려고 합니다. 시작하기 전에 저희집 귀염둥이 사진 먼저 투척하고 시작하겠습니다. 💁🏻♀️ # tuist scafflod 해당 명령어를 사용해서 ..
피그마 이용하면서 활용하면 유용한 단축키, 꿀팁들을 알아봅시다. # 피그마 단축키 도우미 우측 하단 ? 버튼 > Keyboard shortcuts를 클릭. 섹션별로 탭이 나누어져 있는데, 단축키를 누르면 아래 그림처럼 파란색으로 채워진다. 모두 누르면 탭 자체가 하늘색으로 바뀐다. (개발자는 단축키를 애용해야 제맛이지 😝) 개인적으로 디자인 가이드 볼 때, Tools, Zoom 쪽 단축키들이 가장 유용했다. ex) 코멘트 달 때 c 누르면 코멘트 커서로 바뀐다. (Tools) # 컬러 코드 확인하기 위 내용과 이어지는 내용인데, i 버튼을 누르면 자동으로 pick color 툴로 커서가 변하면서 아래처럼 컬러코드를 확인할 수 있다. 또다른 방법은 이미지 요소를 선택한 후 우측 inspect 를 확인해서 ..
YAPP 후원을 통해 얻은 인프런 수강권으로 피그마 강의를 듣고, 스터디를 진행하며 작성하게 된 후기입니다. # 피그마 스터디를 시작하게된 계기 이번 YAPP 21기 기수에서는 인프런과 연계하여 수강권을 제공해 주었고, 그중 피그마 강의를 선택하게 되었다. 이유는 iOS 개발자로서 디자이너와 협업하다 보면 Figma라는 툴을 많이 사용하게 되는데, 이 툴을 좀더 잘 활용할 수 있다면[?] 협업하는 데 있어서 도움이 되지 않을까 싶어서 배워보고 싶어졌고, 수강하게 되었다. # 스터디 진행 주마다 정해진 강의 범위를 함께 정하고, 스터디 시간에는 강의를 보면서 어려웠던 점, 공유해주고 싶은 점들을 이야기하며 진행하였다. 스터디 도중에 회사 과제 전형을 마주하게 되었었는데, 그때 이 강의에서 배웠던 부분을 써..
YAPP 동아리 21기 iOS 2팀 핏프티 프로젝트를 진행하면서 겪었던 문제입니다. Tuist 4 버전부터는 발생하지 않으니 참고해주세요. # 문제 상황 먼저 dependencies에 Amplify 라이브러리 설치를 위해 SPM 목록에 아래와 같이 코드를 추가해주었다. import ProjectDescription import ProjectDescriptionHelpers let dependencies = Dependencies( carthage: [], swiftPackageManager: [ .remote( url: "https://github.com/kakao/kakao-ios-sdk", requirement: .upToNextMajor(from: "2.13.0") ), .remote( url: "..
다들 API KEY 관리를 어떻게 하시나요? 개발자마다 각각 방식이 다 다른 것 같아요. 이 글에서는 제가 협업하면서, 개인 프로젝트를 진행하면서 알게 된 관리 방법들을 적어보았습니다. 혹시 또 다른 방법이 있다면 공유해주세요. 😊🙏🏻 왜 API KEY를 숨겨야 할까? API Key를 숨기지 않고 깃허브에 그대로 올리면 다른 사람들도 API key를 볼 수 있어서 되돌릴 수 없는 일들이 벌어질 수도 있다. AWS 해킹당한 경험담 실제로 Github에 API KEY를 숨기지 않고 올려서 150만 원 정도 청구된 사례가 있다. 따라서 아무나 API 요청을 하지 못하도록, API KEY를 Github 레파지토리에 실수로라도 올리지 않도록 비밀스럽게 관리해주는 것이 중요하다. static 변수 활용하기 아래와 ..
YAPP 동아리 Dev. Camp 1차때 팀원들과 함께 해결한 문제이다. # 문제 상황 Tuist로 프로젝트 생성을 하였다. 생성을 하니, .xcworkspace 파일이 자동으로 생성된 .gitignore에 포함되어있었다. 아마 충돌을 대비해서 추가해둔 것 같다. 이후 Xcode Cloud 적용을 위해서 빌드를 시도했는데, .xcworkspace를 찾을 수 없다는 에러가 났다. Swift Package Dependencies Workspace Fitfty.xcworkspace does not exist at Fitfty/Fitfty.xcworkspace 이 문제를 해결하기 위해서 .gitignore에 등록되어있는 .xcworkspace를 제거하자니 매우 찝찝하였다. 협업 시 충돌 피하자고 등록해둔 것 같..
이번에 동아리 활동을 시작하게 되면서 프로젝트를 모듈화하여 관리해보자는 의견이 나와 Tuist를 사용해보게 되었다. 어떤 녀석인지 한번 알아보자!!! Tuist는 Xcode 프로젝트와의 생성, 유지 관리 및 상호 작용을 용이하게 하는 것을 목표로 하는 커맨드 라인 인터페이스(CLI, 명령줄 도구, 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식)이다. 바이너리로 배포되므로 종속성을 관리하기 위해 다른 도구에 의존하지 않고도 쉽게 설치하고 사용할 수 있다. 모듈화의 이점 모듈화로 나누어져 있으면 빌드 시 변경된 부분만 빌드하면 되기 때문에 빌드 속도가 향상된다는 장점이 있다. 모듈간 결합도는 낮추고 응집도를 높이는 형태 .pbxproj에 UUID의 conflict을 줄일 수 있다는 장점도 가지고 있다...