[Swift] convenience init - 1
0. 서론 지난 10월…사이드 프로젝트를 하면서 앱 브랜드 색상을 편리하게 사용하고 싶어 UIColor를 통해 편리하게 사용할 수 있도록 코딩을 하였다. extension UIColor {
0. 서론 지난 10월…사이드 프로젝트를 하면서 앱 브랜드 색상을 편리하게 사용하고 싶어 UIColor를 통해 편리하게 사용할 수 있도록 코딩을 하였다. extension UIColor {
0. 서론 지난 GCD - 2 글에서 DispatchQueue에 대해 알아보았다. 그렇다면 이번엔 DispatchQueue에서 제공하는 main, global queue를 어떻게 사용할 수 있을지 알아보도록 하자! (sync/async, serial/concurrent가 구분이 안...
0. 서론 지난 GCD - 1 글에서 GCD는 무엇이고 왜 생겨났는지 알아보았다. 이어서 이번엔 GCD가 어떠한 특징을 가지고 있고 DispatchQueue는 어떻게 이루어져 있는지 알아보자!
0. 서론 지난 게시글 중, 애플 디벨로퍼 아카데미의 멘토, Young에게 개인 프로젝트에 대한 간단한 코멘트를 받던 중, 멀티쓰레드 관리에 대한 코멘트트를 받았었다. ‘멀티 쓰레드… 관리…?’ 어지럽다. GCD와 DispatchQueue에 대해서 정말 간단하게만 보고 지나갔는데,...
0. 서론 iOS 면접질문을 찾던 중이였던가… 그냥 공부중이였나… 기억은 확실이 나지 않지만 어제 ‘Copy On Write’라는 키워드를 보고 처음 보는 키워드여서 궁금해서 찾아보게 되었다.
1. 클로저에서 값을 캡쳐한다는 것은… 클로저의 기본 개념부터 보면… Closure란 내부 함수와 내부 함수에 영향을 미치는 주변 환경을 모두 포함한 객채이다.
1. 트레일링 클로저(Trailing Closure) 트레일링 클로저란? 함수의 마지막 파라미터가 클로저일 때, 이를 파라미터 값 형식이 아닌 함수 뒤에 붙여 작성하는 문법. 이때, Argument Label은 생략된다. 어렵지만 중요한것 두가지, 마지막 파라미터가 클로저! Arg...
1. 클로저도 함수 클로저도 함수이기 때문에 일급 객체 함수의 특성을 모두 가지고 있다. 클로저 또한 자료형을 갖고 있다.
1. ARC ARC (Automatic Reference Counting) Swift는 ARC를 사용하여 앱의 메모리 사용량을 추적하고 관리한다. ARC는 어떠한 클래스 인스턴스가 더 이상 필요하지 않을 때 클래스 인스턴스에 할당된 메모리를 자동으로 해제한다. ARC는 메모리...
1. Subscript란? Subscript란 class, struct, enum에서(collection, array 등등) 각 sequence의 요소에 접근하기 위한 단축키이다. Subscript를 사용하여 설정 및 검색을 위한 별도의 메서드 없이 인덱스 별로 값을 설정하고 검...
0. Unicode in swift 유니코드는 다른 쓰기 시스템에서 텍스트를 인코딩, 표현 및 처리하는 국제 표준이다. 모든 언어의 거의 모든 문자를 표준화된 형태로 표현하고, 텍스트 파일이나 웹 페이지와 같은 외부 소스에서 해당 문자를 읽고 쓸 수 있다. Swift의 Stri...
0. Swift에서의 switch문 fallthrough를 알아보기 전, Swift에서의 switch문과 C에서의 switch문의 차이를 알아보자. C에서의 switch문은 각 case 마다 끝에 break문을 삽입하지 않으면 모든 case를 실행하게 된다. 하지만 Swift에...
0. 서론 볼 때 마다 헷갈려서 결국 정리해서 포스팅하는 frame vs bounds 오늘 이후로는 안헷갈리고 확실히 알아갔으면 좋겠다.
0. Dispose, DisposeBag 이번 포스팅에선 메모리 누수방지를 위해 무조건 필요한 dispose를 먼저 알아보고, 이후에 남은 생성 operator들을 알아보도록 하겠다. 1. Dispose 지난 포스팅에서 Observable은 구독(subscribe)하지 않으면 어떠...
지난 포스팅을 통해 Observable을 알아보았으니 Observable의 이벤트를 처리할 수 있는 다양한 연산자 중, 생성 Operator(연산자)를 알아보도록 하자.
1. Observable 이란
1. Reactive X
1. UITextView 사용 인스타그램 유사 앱의 게시물 업로드를 구현하면서 게시물의 이미지를 선택한 후 텍스트를 작성하는 화면을 만들었다 하지만 화면 상으로 TextView가 있는지 없는지 알아채기 어렵기 때문에, 확인할 수 있게끔 표시를 해주도록 하자.
1. 사진앱을 사용해야 할 때 sns 업로드, 카톡 전송 등등 앱을 사용하면서 다양한 경우에 사진을 사용할 때가 있다. 그럴 경우 아이폰 자체 앱인 사진앱에 접근해 사진을 선택해야 한다. 이러한 사진앱에 대한 접근이 필요할 때 사용하는 UIImagePickerController...
1. 더보기(또는 기타설정) 버튼을 만들 때 인스타그램 유사 앱의 프로필 화면을 구현하면서 네이게이션 바 우측버튼으로 더보기 버튼을 만들었다. 이 버튼을 클릭하면 하단에 프로필 관련 설정을 할 수 있는 actionSheet를 만들기 위해 구현해보자.
1. custom UIView를 사용할 때 인스타그램 유사 앱의 프로필 화면을 구현하는 중, 다음과 같은 화면을 구성하려 했다. 프로필 화면에서 게시물, 팔로우, 팔로잉이 나타나는 부분은 각각의 게시물, 팔로우, 팔로잉의 텍스트 라벨로 나타내고 각 숫자 또한 텍스트 라벨로 나...
1. SF Symbol이란? SF Symbol은 애플에서 개발한 샌프란시스코 폰트(San Francisco font)와 자연스럽게 이용할 수 있게 만든 이미지이다. 자세한 내용은 아래를 참고 https://developer.apple.com/design/human-interfa...
1. 시작하며
시작하며 [백준 단계별 문제풀기 - while문] 단계의 문제들 중, 더하기 사이클 문제가 가장 껄끄러운 문제였다. 어떤점이 어려웠고 문제를 풀면서 놓치지 말아야 할지 알아보고 repeat-while문과 while문의 차이점 또한 알아보자.
시작하며 [백준 단계별 문제풀기 - for문] 에서 껄끄러웠던 문제 중 두번째인 X보다 작은 수 문제를 풀어보도록 하겠다.
시작하며 한동안 멈췄던 포스팅을 다시 시작하며 [백준 단계별 문제풀기 - for문] 에서 껄끄러웠던 문제 중 첫번째인 별찍기-2 문제를 풀어보도록 하겠다.
시작하며 지난 문제를 통해 배운 Escape sequence를 이용해 고양이를 그린것 처럼, 이번 문제인 개를 그리는 것도 동일하다. 하지만 이번엔 Escape sequence를 이용하지 않고 다른 방법으로 특수문자를 출력하는 방법을 배워보자.
시작하며 스위프트의 print문으로 여러 줄을 출력하는 것은 매우 쉬운 일이다. 쉬운 일인 만큼 print문으로 고양이를 그려보자….고양이를 그리라고?
시작하며 만리장성도 벽돌 하나부터 쌓았듯, Swift를 배우기 위해 print함수를 배웠다. 이제 첫번째 벽돌을 쌓았으니 두번째 벽돌을 쌓으러 가자.
시작하며 당당하게 swift를 배워 문법과 알고리즘을 마스터하고 iOS 개발을 맘먹은 나. 문법공부를 위해 [백준 - 단계별 풀어보기]를 시작하지만… 플레이그라운드를 여는 것부터 문법내용까지 모르는게 산더미다. 하지만 만리장성도 돌 하나부터 쌓았듯이 나의 코딩공부도 문법 하나부터 ...
한글 가독성을 테스트 하기 위해서 이 글을 작성합니다.
깃허브 블로그 테스트 글입니다.
1. 시작하며
1. 재귀함수란?
0. HIG란? HIG란 Human Interface Guidelines의 약자로, Apple 플랫폼과 원활하게 통일성을 지닌 앱을 설계하기 위한 심층적인 정보와 UI 리소스를 제공하는 문서를 뜻한다. 나는 iOS 개발자가 될 예정이므로, 앱을 개발하고 디자인하는데 있어 다양한 ...
0. 서론 Swift에서 사용하는 protocol의 목적이 궁금해 다형성(Polymorphism)에 대한 공부를 하던 중,
0. 서론 공부를 위해 만들었던 프로젝트에 대해 코드리뷰를 받은 후 (Young 감사합니다!) 해당 내용에 대해 리팩토링을 하는 중이였다. 구조체 내의 프로퍼티들을 private 설정하고 캡슐화를 작업하려고 하는데 의문이 들었다. // 캡슐화를 진행하던 모델 //TODO: pr...
0. 서론 면접질문 중, ‘Array와 List의 차이는 무엇인가요?’