
얼마 전에 처음으로 만든 앱을 앱 스토어에 출시했다. 우여곡절 끝에 첫 심사를 통과했단 메일을 받고 신나서 앱 스토어에 접속해보니 이게 웬 걸? 앱의 언어가 영어로 설정되어있었다. 분명 나는 앱 스토어에 올릴 때 언어가 한국어인 걸 확인했는데...?😢 당최 왜 한국어로 표시해줄 것도 아니면서 떡하니 한국어라고 적어놨는지는... 모르겠으나... 앱 스토어에 표시되는 언어를 바꿀 수 있는 방법을 구글링해서 찾아냈다. 앱 스토어 언어 표시 변경하기 Xcode로 만든 앱은 기본적으로 언어가 "영어"로 설정된다고 한다. 이 언어를 바꿔주자. 원하는 프로젝트를 열고 info.plist파일에 "Localization native development region"을 추가해 속성에 "Korea"를 추가해 준다. Str..

간혹 UITextField를 사용할 때 커서를 숨겨야 할 때가 있다. 대표적으로 UIPickerView나 UIDatePicker같은 PickerView를 사용해 사용자가 뭔가를 선택하고, 그 값을 UITextField에 입력하는 기능을 만드는 경우가 그렇다. 이때 UITextField에 사용자가 직접 입력값을 입력하지 않고 PickerView의 값이 입력되는데, 사용자가 입력 불가능한데도 불구하고 커서가 깜빡인다면 굉장히 어색할 것이다. 이럴 때를 위해 깜빡이는 커서를 숨기는 방법을 알아보자. 깜빡이는 커서 숨기기 기본적으로 UITextField를 터치하면 커서가 깜빡인다. 커서를 숨기기 위해 UITextField를 상속한 클래스를 하나 생성해주자. 그리고 다음과 같이 함수를 오버라이딩 해준다. clas..
('https://gets-better.tistory.com/'이하 '글닐기')은(는) 「개인정보 보호법」 제30조에 따라 정보주체의 개인정보를 보호하고 이와 관련한 고충을 신속하고 원활하게 처리할 수 있도록 하기 위하여 다음과 같이 개인정보 처리방침을 수립·공개합니다. ○ 이 개인정보처리방침은 2021년 12월 3부터 적용됩니다. 제1조(개인정보의 처리 목적) ('https://gets-better.tistory.com/'이하 '글닐기')은(는) 다음의 목적을 위하여 개인정보를 처리합니다. 처리하고 있는 개인정보는 다음의 목적 이외의 용도로는 이용되지 않으며 이용 목적이 변경되는 경우에는 「개인정보 보호법」 제18조에 따라 별도의 동의를 받는 등 필요한 조치를 이행할 예정입니다..
Optional 변수에 값이 있을 수도 있고 없을 수도 있음을 암시 '데이터가 아예 존재하지 않음'을 나타내는 nil(다른 언어에서는 null)의 가능성을 명시적으로 표현한다. nil의 가능성에 대해 문서화하여 전달하지 않아도 코드만 보고 알아챌 수 있기 때문에 효율적이다. 즉, 전달받은 값이 옵셔널 값이 아니라면 nil이 들어갈 수 없으므로 nil체크를 하지 않아도 안심하고 사용할 수 있다. (흔히 java에서 발생하는 NullPointerException이 발생하지 않는다.) Swift에서 강조하는 안전한 코딩이 가능하다! 옵셔널은 변수의 타입 뒤에 '?' 또는 '!'가 붙어 쉽게 파악할 수 있다. - '?'가 붙은 (일반) 옵셔널 var num: Int? // nil var num2: Int = n..

프로세스(Process) In computing, a process is the instance of a computer program that is being executed by one or many threads. 컴퓨터에서, 프로세스란 하나 또는 그 이상의 스레드에 의해 실행되고 있는 컴퓨터 프로그램의 인스턴스 프로세스를 이해하기 위해서는 프로그램을 먼저 이해해야 한다. 프로그램: 어떤 작업을 수행하기 위해 실행되는 일련의 동작을 모아놓은 파일 프로세스: 프로그램이 실행되면 생성되는 인스턴스. 메모리(Ram)에 적재되고, CPU 자원을 할당받아 프로그램이 실행되고 있는 상태 운영체제를 통해 이런 프로세스를 동시에 여러개 실행하고 관리하는 것을 '멀티태스킹'이라 한다. (사실 엄밀히 말하면 "동시에..
HTTP HyperText Transfer Protocol - HTTP란 Hypertext Transfer Protocol의 약자로, 텍스트를 기반으로 한 데이터를 주고 받기 위해 만들어진 통신 규약을 뜻한다. 프로토콜, 즉 규약을 정해두었기 때문에 사람들은 이 규약에 맞춰 개발하고, 그 덕분에 우리는 이 규약에 맞춰 서로 정보를 쉽게 교환할 수 있게 되었다. Hypertext: In computing, hypertext is a way of connecting pieces of text so that you can go quickly and directly from one to another. - HTTP 동작은 요청과 응답으로 이루어져있다. 요청(Request): 클라이언트(Client) -> 서버(..

스택(Stack) v. 쌓다, 포개다 n. 무더기 선형 자료구조의 일종으로, 그림처럼 입력할 때는 아래부터 차곡차곡 데이터를 쌓은 뒤, 출력할 때는 가장 위에서부터 데이터를 꺼낸다. 가장 늦게 입력된 데이터가 가장 먼저 출력되는 LIFO(Last In, First Out)구조. 큐(Queue) v. 줄을 서서 기다리다 n. 대기 행렬 선형 자료구조의 일종으로, 아래위가 뚫린 원통처럼 입력할 때 가장 먼저 들어간 데이터가 출력할 때 가장 먼저 사용된다. 가장 먼저 입력된 데이터가 가장 먼저 출력되는 FIFO(First In, First Out)구조. 배열(Array) v. 배치하다, 배열하다 n. 배열 배열이란, 논리적 저장 순서와 물리적 저장 순서가 일치하는 가장 기본적인 자료구조다. 배열은 인덱스와 인..
객체 지향 프로그래밍(Object Oriented Programming) 컴퓨터 프로그래밍 패러다임 중 하나로, 현실 세계를 프로그래밍으로 옮겨오는 과정에서 탄생한 인간 중심적인 프로그래밍 패러다임이다. 패러다임(Paradigm) 한 시대의 사람들의 견해나 사고를 근본적으로 규정하고 있는 인식의 체계. 또는, 사물에 대한 이론적인 틀이나 체계 객체 지향 프로그래밍은 프로그래밍에 필요한 것들을 '속성(Attribute)과 행위(Behavior)를 가진 객체(Object)'로 정의하며, 객체들 간의 상호작용을 통해 프로그램을 구현하는 프로그래밍 방식이다. 객체 지향 프로그래밍의 5가지 특징 1) 클래스(Class)와 인스턴스(Instance) 클래스란 객체를 정의하는 틀 또는 설계도를 의미한다. 클래스는 객..