금요일, 3월 22, 2019

웹 개발 노트

웹 개발 노트.

Xcode의 Playground 자동 실행 막는 방법 및 단축키 설정

Xcode의 Playground의 실행 관련 기본 설정은 "Automatically Run"입니다. 즉, 코드가 조금이라도 변경되고 키보드 입력을 멈추는 순간 자동으로 구동되어 버립니다. Test 코드의 길이가 짧으면 크게 관련 없지만, 코드가 길어지거나 현재 메모리를 많이...

[Xcode] Build > Archive가 회색으로 클릭이 안되는 경우?

Build > Archive가 dimmed되어 클릭이 안되는 경우는 Running Target이 물리적 Device(아이폰 혹은 아이패드) 혹은 Generic iOS Device가 아니기 때문이다. Target만 수정해주면 아래와 같이 Archive 기능을 수행하실 수 있다. 문제 ) Simulator로 구동할 경우 해결...

[C] printf 함수에서 실수 소수점 자리 및 너비 지정하는 방법

printf 함수를 이용한 실수 출력 시, 소수점 자리 및 너비를 지정하는 방법에 대한 간단한 정리. 예제 코드 1 2 3 4 5 6 7 8 #include <stdio.h> #include <math.h> int main(int argc, const char * argv) {     for (int i = 1; i <= 200; i+=10)         printf("%3d = %10.7fn", i, sqrt((double) i)); } Colored by Color Scripter cs %d, 정수 출력 %3d는 공백을 포함하여 총 3의 길이를 갖는 정수를 출력합니다. 즉, 1을...

[Xcode / Swift] If let 구문은 어떻게 동작할까?| Optional Binding

Optional Binding Swift 언어에서 자주 보이는, 아래와 같은, If let 구문이 동작하는 흐름에 대한 설명. var optionalName: String? = "John Appleseed" var greeting = "Hello!" if let name = optionalName { greeting = "Hello,...

[macOS / C] Xcode 내 stdio.h의 경로는?

Command Line Tools 패키지를 설치하지 않은 경우 Terminal에서 아래 커맨드를 실행함으로써 위치를 확인할 수 있습니다. $ find /Applications/Xcode.app -name stdio.h 혹은, $ find /Applications/Xcode.app -path '*/usr/include/stdio.h' 실행 결과는 아래와 같습니다. Command Line Tools 패키지를 설치한 경우 Command Line...

[macOS / C] Xcode에서 C언어 개발 환경 구축하기

Xcode에서 C언어 개발 환경을 구축하는 방법에 관한 글입니다. 초기 설정부터 컴파일, 실행 과정까지만 간단하게 기록해두었습니다. 아래 목록 참고하시어 필요한 내용 확인하시기 바랍니다. gcc Complier 설치하기 먼저, C언어를 컴파일하기 위해 gcc 컴파일러를 설치해야 합니다....

[개발 자료]ASCII Table – 아스키 코드 테이블

ASCII (American Standard Code for Information Interchange, 미국 정보 교환 표준 부호) 아스키 코드는 미국에서 표준화한 정보교환용 7비트 부호체계이다. 000(0x00)부터 127(0x7F)까지 총 128개의 부호가 사용된다. 이는 영문 키보드로 입력할 수 있는 모든 기호들이 할당되어 있는 부호 체계이며,...

온라인 최소 공배수 계산기

UPDATE 2019-02-21 : 서버비 문제로 기존의 최소 공배수 페이지 운영을 종료합니다. 다른 최소 공배수 사이트를 링크해두니 이를 이용하시거나 'LCM Calculator' 키워드로 구글링하시기 바랍니다. 최소 공배수 사이트 1 : https://www.calculatorsoup.com/calculators/math/lcm.php 최소 공배수 사이트...

[Xcode / Swift] ViewController간 데이터 교환하기

ViewController간에 데이터를 보내는 방법이다. 시작 FirstViewController.swift 첫 화면은 아래와 같이 설정되었다(storyboard 왼쪽의 작은 화살표는 시작 화면을 의미). Class 이름은 미리 FirstViewController로 수정해놓았다. 혹 Class 이름을 변경하다 Outlet과 UI Element들의 연결이 끊어진 경우가 생겼다면 아래...

[Xcode / Swift] 열거형 rawValue과 암시적 맴버 표현으로 인한 생략(.)| Enumeration, rawValue

Enumeration은 열거형 자료형 표현으로 기타 다른 언어들에서도 쉽게 찾아볼 수 있는 친구이다. 뭐든 공식 문서를 찾아 보는 것이 좋으니, 아래 공식 문서의 정의를 살펴보자. "열거형은 관련된 값의 그룹에 대한 공통 유형을 정의하며...

[C] 백준 11718번 문제, 그대로 출력하기 | 공백 포함한 문자열 입력

BAEKJOON Online Judge - 11718번 문제, 그대로 출력하기 아래와 같은 조건을 주고, 문자 사이 공백을 포함하여야 하고 빈 줄은 주어지지 않으며, 입력 받은 대로 출력하는 문제입니다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자,...

[macOS / C] gcc를 활용한 c 컴파일 및 실행 방법

1) Terminal을 열고 아래 예제 파일을 작성합니다. #include int main() { printf("Hello Worldn"); } 2) 아래 커맨드를 실행합니다. -o a : Output으로 나올 파일의 이름이 a입니다. $ gcc -o a a.c 3) 아래 커맨드를...

[Xcode / Swift] Type Casting(형변환) 관련 | is, as, as?, as! 차이점

형변환은 Instance의 타입을 확인하거나, Instance를 superclass 혹은 subclass로 취급하여 처리하기 위해 필요한 작업. Type casting is a way to check the type of an instance, or to treat that instance as a different...

[Xcode / Swift] tableView의 DataSource ViewController와 연결하기

TableView와 ViewController을 연결하는 과정에서 아래와 같은 오류 메세지가 나오면서 TableView가 ViewController와 연결되지 않은 문제가 있어 이 글을 씀. '-: unrecognized selector sent to instance 0x7fe601d20650' 오류의 문제점 필자의 경우, delegate 부분을 제외하고 dataSource만 View...

Laravel 다국어 사이트 Routing하기

Laravel 중 서브 도메인을 이용하지 않고, 저렴하게(?) 다국어 사이트를 구현하는 내용입니다. 개인적으로 참고할 목적으로 만든 글이라 디테일한 설명 대신 제 작업 흐름만 기록해두었습니다. 부족한 내용은 https://laravel.com/docs/5.4/localization을 참고하시면서 진행하시면 됩니다. routes/web.php 'web.php' 파일을 아래와...

[C] Doubly Linked List 구현

Doubly Linked List는 단방향(Head -> Tail) 탐색만이 가능한 Singly Linked List의 탐색 기능을 개선한 자료구조입니다. 사진 출처 - GeeksforGeeks Doubly Linked List의 연산은 '이전 노드'를 처리하기 위한 구현이 추가 될 뿐, Singly Linked...

[Xcode / Swift] libpd, PdDispatcher를 활용한 Pure Data Listener 구현

Pd-0.48-1(Vanilla)를 사용하여 아래와 같이 구현된 click 사운드 2의 Sequence와 Count를 받는 방법. Listener를 구현하여 받는 방법이고, 아래 코드는 cheetomoskeeto Youtube Page를 참조. PdDispatcher를 활용하여 Message를 받으려면 아래와 같은 작업을 요한다. libpd 헤더 파일과 본인의...

[Xcode / Swift] Could not insert new outlet connection 해결

문제 Class 이름이 정확하게 명시 되었음에도 불구하고 아래와 같은 오류 메세지와 함께 Outlet이 삽입되지 않는 경우. Could not insert new outlet connection: Could not find any information for the class named 원인 정확한 원인이 무엇인지...

[Xcode / Swift] 연산자 우선 순위 및 몇가지 연산자

연산자 우선 순위 Swift에 있는 연산자들의 우선 순위는 다음과 같다. 위에서부터 아래로, 왼쪽에서부터 오른쪽으로  (), , . , -> sizeof, &, *, +, -, ~, !  *, /, % +, – <<,...

Swift에서 쓰이는 쌍따옴표 안 변수/상수 호출 “()” 단축키 만들어서 사용하기

"" 안에서 변수 값을 호출하는 코드 작성 시, 쓰이는 () 표현은 아주 빈번하게 사용되는 표현입니다. 필자는 매번 쓸 때마다 , shift + 9, shift + 0 을 하기가 짜증나서 단축키를 만들어서...