[Swift] 싱글톤 패턴(Singleton Pattern)
·
iOS/Swift
안녕하세요 욱승입니다. 이 포스팅에선 싱글톤 패턴에 대해 알아보고 Swift예시를 보며 이해하는 시간을 가지겠습니다! 1. 싱글톤 패턴(Singleton Pattern) 이란? 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱글톤 패턴(Singleton Pattern)이라고 한다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다. 객체의 인스턴스가 오직 1개만 생성되는 패턴을 의미 !! 2. 싱글톤 패턴의 장단점 장..
[Swift] 구조체와 클래스 차이 (Difference between struct and class)
·
iOS/Swift
안녕하세요 욱승입니다. 오늘은 구조체와 클래스차이에 대해 알아보겠습니다. 요약 struct - 복사 개념 - 참조하는 값이 바꿔도 기존 값에는 영향이 없음 class - 공유 개념 - 참조하는 값이 바뀌면 기존 값도 영향을 받아 바뀜 class와 struct의 공통점 값을 저장하기 위한 프로퍼티를 정의할 수 있음 기능을 제공하기 위해 메소드를 정의할 수 있음 subscript 문법을 이용해 특정 값에 접근할 수 있음 생성자를 사용해 초기 상태를 설정할 수 있음 기본 구현에서 기능을 확장할 수 있음 Protocol을 채택하여 기능을 설정할 수있음 class(클래스) 참조 타입 ARC로 메모리 관리 같은 클래스 인스턴스를 여러 개 변수에 할당한 뒤 값을 변경시키면 할당한 모든 변수에 영향을 줌 상속 가능 타..
[Swift] 난수 생성
·
iOS/Swift
안녕하세요 욱승입니다. 오늘은 난수 생성을 알아보도록 하겠습니다. 코딩을 하다보면 난수를 생성할 일이 생기는데요. 보통 암호화나 알고리즘에 주로 쓰이죠 예시를 보시죠 var randomInts: [Int] = [Int]() // Int배열 선언 for _ in 0..
[Swift] 3항 연산자, 삼항 연산자
·
iOS/Swift
안녕하세요 욱승입니다. 오늘은 삼항 연산자에 대해 알아보겠습니다. 🧑🏻‍💻 삼항 연사자란? 물음표(?) 앞의 조건식에 따라 결괏값이 참(true)이면 반환값1을 반환하고, 결괏값이 거짓(false)이면 반환값2를 반환합니다. 이때 반환값에는 값뿐만 아니라 수식, 함수 호출 등 여러 가지 형태의 명령문이 올 수 있습니다. 🧑🏻‍💻삼항 연사자를 쓰는 이유? 이유는 간단합니다. if문, switch문, while문과 같이 조건절을 쓰지 않고도 코드를 간결하게 정리가 가능합니다. 즉, 보기가 편하다.. 이거죠 어디서 들은건데 남들이 볼때 한번에 이해할수있는 코드가 제일 좋은 코드라네요 허허.. 남들이 볼때 한번에 이해 == 클린코드 이렇게 글로만 풀어 봤을때는 감이 잘 안오실탠데요 var isBlack : Bo..
[Xcode] playground debugserver is x86_64 binary running in translation, attached failed..
·
Xcode/버그 및 이슈
회사에서 잘만되던 playground 디버깅이 안된다,, 보통 M1,2칩을 사용하는 Mac에서 발생하는 에러임 아주 한번에 되는 법이 없지 Xcode.. 🤬 방법은 나름 간단한데요 1. 열려있는 Xcode 닫기 2. Xcode 정보 가져오기 3. Rosetta를 사용하여 열기 '비'활성화 4. Xcode Derived Data 삭제 5. Xcode 재실행 말좀들어 Xcode..
[Xcode] 자주쓰는 Xcode 단축키 정리
·
Xcode/단축키
네비게이터 (좌측) ⌘ + 0 - 네이게이터 보이기 / 숨기기 ⌘ + 1 ~ 9 - 번호 순서대로 네비게이터 메뉴로 이동 인스펙터(우측) ⌘ + ⌥ + 0 - 인스펙터 보이기 / 숨기기 ⌘ + ⌥ + 1 ~ 4 - 번호 순서대로 인스펙터 이동 화면 제어 ⌃ + ⌘ + F - 전체화면 진입 / 나가기 ⇧ + ⌘ + Y - 디버그 창 숨기기 / 보이기 코드 편집 ⌘ + ⬅(방향키) - 줄의 맨 끝/처음 으로 이동하기 ⌘ + ⇧ + ⬅(방향키) - 줄 선택하기 ⌥ + ⬅(방향키) - 단어 단위로 이동하기 ⌃ + i - 인덴테이션 ⌘ + / - 주석처리 ⌥ + ⌘ + / - 메소드 설명추가 ⌘ + ‘-’ - 줌아웃 ⌘ + ‘+’ - 줌인 ⌘ + ⌃ + 0 - 줌리셋 ⌘ + ⇧ + A - 액션 메뉴 보이기(⌘ +..
욱승