반응형

전체 글 201

Swift | Optional(value) 원론적으로 왜 출력될까?

Swift | Optional에 관하여안녕하세요!오늘은 타언어에서는 보지 못한 옵셔널에 대해서 알아보고자 합니다 옵셔널 옵셔널은 값을 반환하는 과정에서 오류가 발생하는 상황이 많기 때문에안정성을 높이고자 사용합니다ios2080dev.tistory.com 옵셔널 이전 정리를 보면optional은 열거형으로 이루어져 있으며case가 some, none으로 이루어져 있습니다  일반 자료형보다 큰 범위의 자료형이라고 보면 됩니다  왜 Optional(3)으로 출력이 되는지 동작 과정에 대해서 알아보고자 합니다 우선 Optional은 case some / none으로 이루어져있는 코드에 대해서 알아보고자 합니다 optioanl type을 정의하고 있으며 복사 불가능한 타입(~Copyable)과 관련된 제한을 포함..

Swift 2024.07.01

SSOT | 단일 진실 공급원(Single Source Of Truth)

단일 진실 공급원(Single Source Of Truth) 데이터가 만들어지고 수정되는 작업이 여러 곳에서 일어나는것이 아니라 한 곳에서 발생하면 좋다고 합니다만약 여러 곳에서 일어나게되면 디버깅할 때 값의 흐름을 추적하는 것이 귀찮고 어려운 작업이 되면서 유지보수할 때 많이 힘들어집니다 정보시스템, 데이터관리 및 소프트웨어 개발에서 사용되는 개념이며 조직 내 모든 사람들이 동일한 데이터를 기반으로 결정을 내리도록 보장하는 것입니다 SSOT(Single Source Of Truth) / SPOT(Single Point Of Truth)모든 데이터 요소가 편집(마스터) 되도록 정보 및 모델 관련 데이터 스키마를 구성하는 관행입니다한 곳에서만 정규 형식 데이터를 제공합니다SSOT 요소데이터 일관성동일한 데..

서적 2024.06.28

Lv1 | Swift - 약수의 개수와 덧셈

문제 설명문제 설명두 정수 left와 right가 매개변수로 주어집니다. left부터 right까지의 모든 수들 중에서, 약수의 개수가 짝수인 수는 더하고, 약수의 개수가 홀수인 수는 뺀 수를 return 하도록 solution 함수를 완성해주세요.제한사항1 ≤ left ≤ right ≤ 1,000입출력 예leftrightresult131743242752입출력 예 설명입출력 예 #1다음 표는 13부터 17까지의 수들의 약수를 모두 나타낸 것입니다.수약수약수의 개수131, 132141, 2, 7, 144151, 3, 5, 154161, 2, 4, 8, 165171, 172따라서, 13 + 14 + 15 - 16 + 17 = 43을 return 해야 합니다.입출력 예 #2다음 표는 24부터 27까지의 수들의..

Programmers/LV1. 2024.06.28

Lv1 | Swift -내적

문제 설명길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)제한사항a, b의 길이는 1 이상 1,000 이하입니다.a, b의 모든 수는 -1,000 이상 1,000 이하입니다.입출력 예abresult[1,2,3,4][-3,-1,0,2]3[-1,0,1][1,0,-1]-2입출력 예 설명입출력 예 #1a와 b의 내적은 1*(-3) + 2*(-1) + 3*0 + 4*2 = 3 입니다.입출력 예 #2a와 b의 내적은 (-1)*1 + 0*0 + 1*(-1) = -2 입니다.나의 풀이impor..

Programmers/LV1. 2024.06.27

Lv1 | Swift -제일 작은 수 제거하기

문제 설명길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.제한 조건n은 길이 10,000이하인 자연수입니다.입출력 예nreturn3"수박수"4"수박수박"나의 문제 풀이func solution(_ n:Int) -> String { var result = "" for i in 1...n { result += (i % 2 == 1) ? "수" : "박" } return result} 단순 반복문 for를 사용하여하나씩 추가하는 방법을 사용하였다 다른 사람 풀이func solution(_ n:Int) -> Str..

Programmers/LV1. 2024.06.26

iOS/Siwft | XCode - SwiftLint 적용

Swift Lint협업시 code convention을 지키기 위해서불필요한 PR 리뷰 등이 없도록 하기 위해서 사용합니다필요한 영역에 다양하게 지원하기 때문에 유용합니다 하지만 혼자서 규칙을 만들고 하는데 시간이 너무 소요될 것같아규모가 큰 회사에서 사용하면 좋을것 같다라는 생각이 들었습니다 그래서 혼자 구현할 때 실제로 잘 사용하지 않는것 같다라는 생각이 들었습니다하지만 큰 규모의 회사에 들어가게 된다면 반드시 숙지해 놓으면 좋을것 같다라는 생각이 들었습니다    https://tngusmiso.tistory.com/59 [iOS/Swift] XCode 프로젝트에 SwiftLint 적용하기SwiftLint XCode 프로젝트에 Swift 코드 컨벤션을 잡아주는 SwiftLint를 적용하는 법을 알아보..

Swift 2024.06.25

Lv1 | Swift -제일 작은 수 제거하기

문제 설명단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.재한사항s는 길이가 1 이상, 100이하인 스트링입니다.입출력 예sreturn"abcde""c""qwer""we"나의 풀이func solution(_ s:String) -> String { return s.count % 2 == 0 ? String(Array(s)[s.count/2-1...s.count/2]) : String(Array(s)[s.count/2])}배열의 크기가 짝수인지 홀 수 있지 판별한 후 범위 연산자를 사용하여 결과 도출을 했습니다 다른 사람 풀이func solution(_ s:String) -> String { return String..

Programmers/LV1. 2024.06.25

Lv1 | Swift -제일 작은 수 제거하기

문제 설명정수를 저장한 배열, arr 에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴 하고, [10]면 [-1]을 리턴 합니다.제한 조건arr은 길이 1 이상인 배열입니다.인덱스 i, j에 대해 i ≠ j이면 arr[i] ≠ arr[j] 입니다.입출력 예arrreturn[4,3,2,1][4,3,2][10][-1]나의 풀이func solution(_ arr:[Int]) -> [Int] { if arr.count == 1 { return [-1] } var result = arr.sorted(by: result }..

Programmers/LV1. 2024.06.24

Lv1 | Swift - 핸드폰 번호 가리기

문제 설명프로그래머스 모바일은 개인정보 보호를 위해 고지서를 보낼 때 고객들의 전화번호의 일부를 가립니다.전화번호가 문자열 phone_number로 주어졌을 때, 전화번호의 뒷 4자리를 제외한 나머지 숫자를 전부 *으로 가린 문자열을 리턴하는 함수, solution을 완성해주세요.제한 조건phone_number는 길이 4 이상, 20이하인 문자열입니다.입출력 예phone_numberreturn"01033334444""*******4444""027778888""*****8888"나의 풀이func solution(_ phone_number:String) -> String { var cellPhoneNumber = phone_number.map { String($0) } let count =..

Programmers/LV1. 2024.06.21

Lv1 | Swift - 나누어 떨어지는 숫자 배열

나누어 떨어지는 숫자 배열문제 설명array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요.제한사항arr은 자연수를 담은 배열입니다.정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.divisor는 자연수입니다.array는 길이 1 이상인 배열입니다.입출력 예arrdivisorreturn[5, 9, 7, 10]5[5, 10][2, 36, 1, 3]1[1, 2, 3, 36][3,2,6]10[-1]입출력 예 설명입출력 예#1arr의 원소 중 5로 나누어 떨어지는 원소는 5와 10입니다. 따라서 [5, 10]..

Programmers/LV1. 2024.06.20
반응형