Fastlane (2) 출시 및 배포
·
CI-CD
👋 들어가기 전 https://hamp.tistory.com/182 이전 시간에는 설치와 테스트를 진행해 봤다.이번 포스팅에서는 출시와 배포를 한번 fastlane을 통해 진행해보자. 📦 Release🔑 cert 배포 인증서를 fastlane을 통해 만들 수 있다.필요한 재료는 단지 appleID와 applePassword만 알려주면된다.fastlane cert 위 명령어를 입력한 후, 언급한 2가지 정보를 넣어주면 짜잔 2월 12일 현재 Distribution Certificate가 생성됐다.🛸 extract ipaipa 파일 추출desc "extract lane" lane :extract_app do gym( project: "CI-CD-Practice.xcodeproj", ..
Fastlane (1) 설치 및 테스트
·
CI-CD
👋 들어가기 전iOS 프로젝트의 CI/CD를 도와주는 대표적인 tool인 Fastlane의 사용법을이번 포스팅부터 차례대로 알아보자. Fastlane의 위와 같은 대표적인 기능을 재공한다고한다.자동 스크린샷베타 배포 자동 배포코드 사이닝 이번 포스팅은 설치와 간단한 테스트팅 기능을 이용해보자.✊ 세팅설치brew install fastlane # 설치fastlane env # 버전 및 환경설정 확인초기화fastlane init 초기화가 끝나면 아래와 같이 fastlane/ 폴더안에 2개의 파일이 생긴다.Appfile공통 설정을 명시하는 파일애플 개발 계정앱 ID팀 ID ...FastfileCI / CD 파이프라인을 정의하는 핵심파일빌드테스트배포...🧪 테스트이전에 gitAction으로 작성했던걸 그대로..
xcodebuild
·
CI-CD
👋 들어가기 전어제 면접을 맞치고 돌아온 후, 결과 발표전까지 무엇을 할까고민중, 과제를 하면서 swift와 UIKit은 한번 점검을 했으니 xcodebuild 커맨드를 한번정리하고 가면 좋을 것 같다고 생각이 들었다.🧹 clean⭐️ 역할기존 빌드 결과물을 삭제하여 깨끗한 상태에서 다시 빌드할 수 있게 만들어준다.🤖 사용xcodebuild clean [clean 후 실형될 명령어]  보통 위와 같이 어떤 명령어를 실행하기 전 앞에서 clean을 해준다.🧪 test⭐️ 역할테스트를 실행한다.🤖 사용xcodebuild test \[-workspace ] \[-project ] \-scheme \-destination \[-only-testing:] \[-skip-testing:]xcodebui..
lazy
·
Programing Langauge/swift
👋 들어가기 전뜬금없이 왠 lazy?  lazy 키워드를 많이 썼지만 장점만 바라보고 썼지어떤 단점과 위험성이 있는 지 생각해본적이 없었던 것 같다. 이번에 한번 정리해보자.✊Lazy란정의lazy는 지연 저장 프로퍼티라 불리며 처음 사용되기 전까지 메모리에 올라가지 않는다.왜 var만 가능할까?let은 선언과 동시에 값이 있어야한다. 하지만 lazy는 객체 선언 당시에 값이 없고 객체가 할당되고 그 값이 사용될 때 초기화되기 때문에정의에서 애초에 위배된다. 장단점✅ 장점최초 사용전까지 메모리에 오르지 않기 때문에 초기화 시점에 최적화가 가능하다.자주 사용하지 않는 객체일 경우 자원을 효율적으로 쓸 수 있다.❌ 단점치명적인 단점은 Thread Safe하지 않다.동기화 작업을 하기위해서는 별도의 작업이 더..
RESTful 이란
·
CS/Network
👋 들어가기 전서버가 있는 프로젝트를 할 때 많이 나오는 키워드REST, RESTful, REST API 차이가 무엇일까 ?? 대강 아는 는낌으로 넘겼던 과거를 반성하고 이번에 깔끔하게 정리하고 가자 ✊REST먼저 RESTful, REST API를 알아보기 위해 공통적으로 언급되는 REST가 무엇인지 알아보자. Representational State Transfer의 줄임말이다.조금의 의역이 필요하지만 자원의 이름을 통해 자원의 상태를 전달받는 것을 의미한다. 📦 구성요소1. 자원(Resource) URI많은 자원은 서버에 있고 원하는 자원을 얻기위해서는 URI(Uniform Resource Identifier)를통해 서버에게 원하는 자원의 상태를 요청한다.2. 행위(Verb) HTTP Method..
Decode Ways
·
PS/LeetCode
문제https://leetcode.com/problems/decode-ways/description/입력1 결과ans: Int = 주어진 s를 알파벳으로 디코딩할 수 있는 경우의 수해석동전 문제와 비슷하게 해석할 수 있다.여기서 제약조건은 알파벳은 1 ~ 26까지 대응되며,  01 , 02 같은 형태는 없는 형태이다. 코드extension String { subscript(_ index: Int) -> String { return String(self[self.index(self.startIndex, offsetBy: index)]) }}class Solution { func numDecodings(_ s: String) -> Int { guard !s.isEmpty..