728x90

분류 전체보기 116

[Swift] 연산 시간 측정

이번 글에서는 함수의 연산 시간 측정을 간단히 진행해 보는 법에 대해 알아보겠습니다. 개발을 진행하다가 보면 어디서 시간이 많이 소요되는지 확인하고 최적화를 시키기 위해 수정하고 수정하고 수정해나아가는데 간단하게 얼만큼 시간이 소요가 되는지 체크해볼 수 있는 것이 바로 'CFAbsoluteTimeGetCurrent' 입니다. 1. 사용해보기 CFAbsoluteTimeGetCurrent 의 사용법은 매우매우매우 간단합니다. 측정 시작 부위에 CFAbsoluteTimeGetCurrent 를 생성하고 종료 시점에 시작 지점에서 생성했던 값을 빼주면 간단히 어느정도인치 측정이 됩니다!! (0_0) var checkTime = CFAbsoluteTimeGetCurrent() for index in 0...100 ..

Swift/학습 2021.12.27

모바일 APP 개발 종류에 대해서

이번에는 모바일 App 개발에 앞서 개발 종류에 대해 알아보겠습니다. 이번 글에서는 모바일의 App 개발을 크게 3가지로 분류하였습니다. (웹앱과 같은 경우는 이번 글에서 제외시켰습니다.) 1. 네이티브 앱 네이티브 앱은 외적인 지원 없이 특정 하드웨어 및 OS에서 그대로 실행하는 앱을 뜻합니다. 각각의 운영체제에서 각각의 언어를 사용하여 개발합니다. 대표적으로 Google의 android, Apple 의 iOS 가 있습니다. android 2007년 구글에서 개발 Android Studio 개발 툴 사용 개발 언어 - JAVA, Kotlin iOS 2007년 애플에서 개발 Xcode 개발 툴 사용 개발 언어 - Objective-C, Swift 장점 모바일 개발에서의 중요한 감성을 그대로 표현할 수 있..

IT/지식 공유 2021.12.23

[Swift] Realm 복수 쿼리로 데이터 추출하기

개발하면서 Realm 하나의 객체에서 여러가지 조건으로 데이터를 추출하고자 할때 NSPredicate 를 사용하여 길게 길게 작성하면서 해보려고 했는데 너무 비효율적이고 지저분해져서 깔끔하게 할 수 있는 방법이 없나 찾아보다가 좋은 방법이 있어 글을 작성해 기록해 보기로 하였습니다. 1. NSPredicate를 배열로... 우선은 복수의 쿼리를 작성하기 위해 NSPredicate 를 배열로 선언하였습니다. var queryArray: [NSPredicate] = [] 2. 복수의 쿼리 작성 한 객체에서 여러가지 조건으로 데이터를 추출할 쿼리를 만들어 배열에 넣어줍니다 for item in itemList { let predicate = """ 쿼리 작성 조건의 변경이 상황에 따라 필요하다면 조건식을 넣어..

Swift/이슈 대응 2021.12.22

[SQLite] UNION 에 대해 알아보자!

UNION 은 복수의 쿼리문을 하나로 합친 결과를 추출하기 위한 속성입니다. UNION: 중복 요소 제거하여 합친 결과 추출 UNION ALL: 전체 합친 결과 추출 UNION 과 UNION ALL 은 데이터의 중복 여부라는 차이점이 있기 때문에 상황에 맞추어 사용하면 됩니다. 1. UNION? a. 상품1 테이블 ID 상품명 가격 1 오렌지 1000 2 레몬 500 b. 상품2 테이블 ID 상품명 가격 1 오이 500 2 레몬 500 ex) UNION ALL SELECT 상품명 FROM 상품1 UNION ALL SELECT 상품명 FROM 상품2 상품명 오렌지 레몬 오이 레몬 ex) UNION SELECT 상품명 FROM 상품1 UNION ALL SELECT 상품명 FROM 상품2 상품명 오렌지 레몬 ..

SQLite/학습 2021.12.21

[SQLite] DISTINCT 에 대해 알아보자!

DISTINCT는 SELECT문에서 중복을 제거한 데이터를 추출하기 위한 속성입니다. ALL: 전체 DISTINCT: 중복 요소 제거 ALL 같은 경우는 Default 요소이기 때문에 따로 설정하지 않으면 ALL로 설정됩니다. 1. DISTINCT? tempTable에서 최대값이 100 미만인 값을 추출하는데 중복값은 제거한다. SELECT DISTINCT maxValue FROM tempTable WHERE maxValue < 100 환경 Xcode 13.1 SQLite

SQLite/학습 2021.12.20

[Xcode] 13.2 Missing Package Description Module 오류

한창 근무 중에 Xcode 최신 버전 업데이트를 요구하는 알림이 와서 13.2 버전으로 업데이트를 진행한 순간! 여기저기서 빨간 불이 생기기 시작했다. 분명히 전에 빌드 진행했을 때는 문제가 없었는데... 왜 그런지 찾아본 순간! SPM을 사용하고 있던 프로젝트에서 SPM 데이터가 전부 로드가 되질 않았다! 1. 오류 발생 코드 적인 문제가 아니라는 것을 파악 후 SPM을 다시 재로드 해보았는데 이번엔 아래와 같이 Preparing to validate... 상태에서 더 이상 진행되지 않았다. 해당 오류는 아무래도 Xcode 문제인 것 같다... https://developer.apple.com/forums/thread/696504 Xcode 13.2 - Internal error : Miss… | Ap..

iOS/이슈 대응 2021.12.20

[프로그래머스] 없는 숫자 더하기

1. 문제 0부터 9까지의 숫자 중 일부가 들어있는 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. 2. 나의 답 func solution(_ numbers:[Int]) -> Int { let sumValue = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 var inputValue = 0 numbers.forEach { value in inputValue += value } return sumValue - inputValue } 3. 다른 방법 func solution(_ numbers:[Int]) -> Int { let sumValue = 1 + 2 + 3..

알고리즘/해결 2021.12.08

[Swift] discardableResult 에 대해 알아보자!

개발을 하다 보면 여러가지 함수를 만들게 되는데 한 함수에 대해서 상황에 따라 쓰게되면 return 값이 필요한 경우가 있고 또 필요 없느 경우가 있습니다. 그럴때 Swift 에서 주로 사용하는 방법이 변수를 설정하지 않거나 @discardableResult 를 사용해서 해결하곤 합니다. 이번 글은 그 중에 discardableResult에 대해 간단히 알아보고자 합니다. 1. 변수를 설정하지 않고 사용해보기 우선 간단한 함수를 만들어 보겠습니다. 단순히 10과 20을 더하는 함수입니다. let a = 10 let b = 20 func sum() -> Int { return a+b } 여기서 함수만을 반환값을 받지 않고 함수 내부만 실행하고 싶을 경우 아래와 같이 사용하실 수 있습니다. let _ = s..

Swift/학습 2021.12.08

B2B & B2C 에 대해 알아보자!

이번글에서는 기업에서 업무나 거래 도중 간혹 나오는 B2B, B2C의 용어에 대해 간단히 알아보겠습니다. B2B, B2C 는 전자상거래의 비즈니스 모델입니다. BtoB, BtoC 라고 하며 to의 발음이 2(Two) 와 같기 때문에 B2B, B2C 라고도 합니다. 이외에는 B2G, C2C, G2C 도 있습니다. 1. B2B (Business to Business) B2B 는 기업과 기업 간의 거래를 말합니다. 판매자와 구매자가 기업 단위이고 기업에 알맞는 서비스와 물품을 거래합니다. 2. B2C (Business to Consumer) B2C 는 기업과 소비자 간의 거래를 말합니다. 기업이 소비자에서 서비스 및 물품을 판매합니다. 대표적으로 인터넷 쇼핑몰이 있습니다. 3. B2G (Business to ..

IT/지식 공유 2021.12.07

클라우드 서비스에 대해서 알아보자! (IaaS, PaaS, SaaS)

재직 중인 회사에서 클라우드 서비스 SaaS를 제공함으로서 클라우드 서비스가 궁금해져 한 번 알아보고자 합니다. 클라우드 서비스에서는 크게 아래와 같이 3가지 서비스로 나뉜다고 합니다. 1. IaaS (Infrastructure as a Service) - 해당 기업의 서버, 스토리지 등 하드웨어적인 인프라를 클라우드 서비스로 제공 2. PaaS (Platform as a Service) - 소프트웨어 개발에 도움을 주는 모듈 및 라이브러리 등 플랫폼을 클라우드 서비스로 제공 3. SaaS (Software as a Service) - 해당 기업의 소프트웨어와 데이터를 클라우드 서비스로 제공 1. 각각 어떤 것을 제공할까? 2. 예시 1. IaaS AWS 아마존 웹 서비스 Microsoft Azure G..

IT/지식 공유 2021.12.06
728x90