0 떼기 정수로 이루어진 문자열 n_str이 주어질 때, n_str의 가장 왼쪽에 처음으로 등장하는 0들을 뗀 문자열을 return하도록 solution 함수를 완성해주세요. ex) "001203" -> "1203" n_str 값으로 "00998"을 넣을 경우, "998"이 return 된다. 더 간단한 풀이 suffix 함수를 이용하여 문자를 조합한 값을 return 시켜주었다. Coding Test
ATS와 HTTP / HTTPS에 대하여... ATS (App Transport Security) 앱과 웹 서비스 사이에 통신 시 보안 향상을 위한 기능으로 iOS 9부터 도입된 보안 기능이다. ATS가 나타나게 된 등장 배경은 다음과 같다. 다양한 종류의 앱이 개인의 여러 가지 정보를 다루게 되면서 사용자 정보보호에 대한 중요성이 한층 부각되었고, 기존의 보안 / 암호 기술은 오래되었지만 컴퓨터 성능이 발전함에 따라 새롭게 등장하는 네트워크 공격이 강력해지자 이에 대응하기 위하여 ATS를 도입하게 되었다. iOS에서는 URLSession, CFURL 그리고 NSURLConnection API를 이용해서 데이터를 주고받을 때 ATS 기능을 기본적으로 사용하게 된다. HTTP / HTTPS HTTP와 HTTPS는 간단하게 살펴보자면, HTTP는 암호.. iOS
글씨체(font)가 적용이 안될 때 해결하는 방법! 내가 SCDream7.otf이라는 글씨체를 글씨체를 Fonts 폴더에 넣은 후 Fonts provided by application에 파일명 그대로 추가해준다. 그리고 내가 적용하고 싶은 Label의 글씨체로 설정해준다. 이제, 이러면 글씨체가 잘 적용되서 화면에 보여질 것이다. ?! 내가 가져온 글씨체가 적용되지 않고 기본 글씨체가 적용이 되었다. 어떤 게 문제인지 찾아본 결과, font에는 파일명을 그대로 적용하는 것이 아니라 진짜 파일명이 따로 있다는 것을 알게 되었다. 그러면 진짜 파일명을 알 수 있는 방법은 무엇이냐 UIFont.familyNames.sorted().forEach { familyName in print("*** \(familyName) ***") UIFont.fontNames(f.. Trouble Shooting
JSON 파일을 직접 만들고 가져오는 방법? 일단 JSON 데이터를 직접 만든다. https://app.quicktype.io/ Instantly parse JSON in any language | quicktype app.quicktype.io 위의 사이트에 들어가서, JSON 데이터를 입력하면, 해당 데이터 맞는 Model을 알 수 있다. 그리고, 파일을 불러오는 함수를 작성한다. 불러올 파일 이름과 확장자 이름을 입력해준 후, 입력된 파일 위치를 데이터로 초기화 시킨다. JSON 문을 불러올 데이터 Model을 생성 Codable은 Encodable + Decodable 두 속성 모두 가지고 있는 타입 Encodable은 Swift의 구조체 구조의 객체를 JSON 형식으로 변환하는 것 Decodable은 JSON 형식을 객체로 변환하는 것 따.. iOS
배열 비교하기 이 문제에서 두 정수 배열의 대소관계를 다음과 같이 정의합니다. - 두 배열의 길이가 다르다면, 배열의 길이가 긴 쪽이 더 큽니다. - 배열의 길이가 같다면 각 배열에 있는 모든 원소의 합과 비교하여 다르다면, 더 큰 쪽이 크고, 같다면 같습니다. 두 정수 배열 arr1과 arr2이 주어질 때, 위에서 정의한 배열의 대소관계에 대하여 arr2가 크다면 -1, arr1이 크다면 1, 두 배열이 같다면 0을 return 하는 solution 함수를 작성해 주세요. if문을 사용하여 arr1의 개수와 arr2의 개수가 같을 경우, 다를 경우를 나누어 분기처리 하였다. 하지만, 이는 문제를 풀어낼 수 있는 코드이지만, 간결한 코드는 아니다. 더 축약이 가능하다. 배열 내의 멤버들의 합을 비교할 때에는, arr1.. Coding Test
7의 개수 머쓱이는 행운의 숫자 7을 가장 좋아합니다. 정수 배열 array가 매개변수로 주어질 때, 7이 총 몇개 있는지 return 하도록 solution 함수를 완성해보세요. 이게 한 달전 쯤 풀었던 풀이였고, 오늘(5.4)에 다시금 문제를 풀어 코드를 축약시켰다. 과정을 많이 축약시켰고, 변수 sevenCount는 array에서 7만을 담은 배열의 개수를 count한 Int 값이다. 예시로, solution([1, 7, 7, 11, 7, 7, 7])을 입력하면 7이 5개이므로 5가 출력되게 된다. 따라서, 바로 밑 줄에 해당 값을 return 해주면 된다. Coding Test
flag에 따라 다른 값 반환하기 두 정수 a, b와 boolean 변수 flag가 매개변수로 주어질 때, flag가 true면 a + b를 false면 a - b를 return 하는 solution 함수를 작성해 주세요. 삼항 연산자를 사용하여 풀이를 하였다. true일 경우, a + b를 return false일 경우, a-b를 return 베리굿👍 Coding Test
nil 병합 연산자(nil coalescing operator)란? 먼저, Optional에 대해서 간단하게 알아보자. wrapping 된 값이 있거나 값이 없음을 나타내는 type이다. 예시를 보면, 각각의 타입이 둘 다 Optioanl Int 타입을 가지지만, 하나는 Int 타입인 값을 가지므로 10을 출력할 수 있지만, 다른 하나는 값이 없는 nil이므로 nil을 출력하게 된다. 출력된 10은 Optional Int 타입이므로 Optional(10)의 형태로 출력되게 되고, unwrap을 해주기 위해선 여러가지 방법이 있다고 공식 문서에 적혀있다. 여러가지 방법이 적혀있었고 nil coalescing operator도 찾아볼 수 있었다. nil coalescing operator 공식 문서를 먼저 보자. nil coalescing operator을 수행하여 인스턴스.. iOS
Code로 CollectionView를 만드는 방법 (Storyboard X) 1. Storyboard 삭제 (1) Xcode 옆의 관리창에서 Storyboard 아이콘 삭제 (2) 위의 파란색 프로젝트 아이콘을 클릭 -> Targets의 파란색 프로젝트 아이콘 클릭 -> Info -> Main Storyboard File Base Name (Value에는 "Main") 삭제 (3) Info.plist에 들어가서 Application Scene Manifest 부분에 마우스를 갖다 대면 Item 0 버튼이 나오는데, 계속 확장해서 펼친다. Storyboard Name을 확장해서 키 부분을 삭제한다. 이때, 삭제는 - 버튼을 눌러서 삭제하면 된다. (4) Scene Delegate에 들어가서 willConnectTo 함수 안에 해당 코드를 추가 guard let windowScene.. iOS
JIRA 사용법 먼저, JIRA란 무엇인가? 아틀라시안 개발한 이슈를 추적하는 소프트 웨어로 버그 추적, 이슈 추적, 프로젝트 관리 기능을 제공한다. 지라(JIRA)라는 소프트웨어로 이름은 "고지라"라는 너무나도 유명한 괴수 이름에서 따왔다고 한다. 에자일 방식의 프로젝트 관리를 하며 개인 및 사무용 업무관리를 하는데에 쓰인다. Jira 내에서 사용되는 개체들을 상위부터 하위순으로 나열해 보자면, Project > Epic > Task > SubTask 1. 진행할 수 있는 카드가 있는지 확인한다. 작업해도 되는 카드 : BackLog, Ready To Develop, ReOpened 작업 상태를 확인한 후, 위의 세 상태임이 확인되면 작업을 개시할 수 있다. Ready To Develop 카드가 있다면 먼저 진행하자... iOS