Swift 기초 (7): 에러 처리 (Error Handling)

에러 처리 자바의 예외 처리처럼 스위프트도 프로그램 내에서 발생한 에러들을 처리하는 기능이 있습니다. 여러 키워드들이 사용되는데, Error, throws, throw, do ~ catch, try 등이 사용됩니다.   프린터 출력 프로그램을 작성한다고 가정합니다. 먼저 프린트 출력 시 발생할 수 있는 에러의 경우를 Enum 형태로 나열해 보겠습니다. 이 때 Error라는 키워드를 추가해 정의합니다. 더보기…

Swift 기초 (6): 프로토콜 (Protocol)

프로토콜 프로토콜은 메소드, 속성 그리고 다른 특정 작업 또는 기능의 부분에 맞는 요구 사항의 청사진을 정의합니다. 자바의 Interface와 유사한 개념이며, 클래스, 열거형(Enumeration), 구조체(Structure) 모두에 프로토콜을 사용할 수 있습니다.   다음은 프로토콜의 기본 형태입니다. protocol ExampleProtocol { var simpleDescription: String { get } var author: String { get set } mutating func 더보기…

Swift 기초 (3): 함수 (function)

함수 (func) Swift의 함수는 자바스크립트의 함수와 개념적으로 매우 비슷합니다. 키워드로 func를 시용합니다. func 함수이름(파라미터1: 자료형, 파라미터2: 자료형…) -> 리턴시자료형 {….return xxx….}   아래 예제는 함수의 기초 사용 형태입니다. func greet(name: String, day: String) -> String { return “안녕하세요. \(name)씨, 오늘은 \(day)요일입니다.” } print (greet(name: “박똑딱”, day: “화”)) 안녕하세요. 박똑딱씨, 오늘은 화요일입니다. 더보기…

Swift 기초 (2): if 문, for ~ in 문, while 문, switch 문

if 문 (if…else, if…else i…else) if문은 조건에 따라 해야 될 작업을 분기할 때 사용합니다. 참고로 조건문에 괄호를 붙이지 않습니다. var myScore = 56 if myScore >= 50 { print(“\(myScore)점: 합격”) } else { print(“\(myScore)점: 불합격”) }   복수의 조건에 따라 분기하고자 할 때는 else if 문을 추가합니다. if myScore >= 더보기…

Swift 기초 (1): 상수, 변수, 배열, 사전

기초 지식 스위프트의 모든 코드 맨 윗줄에는 특정 라이브러리 등을 불러오는 import가 필수입니다. 사용목적에 따라 Foundation이나 UIKit등을 불러올 수 있는데 이하 코드에서는 생략된 경우도 있으니 참고 부탁드립니다. 기초 코드는 xcode의 Playground에서 시작하는 것이 효율적입니다. xcode 프로그램을 실행하면 처음에 프로젝트 또는 플레이그라운드를 선택하는 창이 나오는데 Start Playground를 선택하고 blank를 선택해서 시작합니다. 더보기…

자바스크립트 lodash: debounce와 throttle을 이용하여 함수의 실행 횟수 제한

lodash 홈페이지: https://lodash.com/ debounce, throttle은 생소한 기능인데요 간단히 요약하면 이벤트의 반복 실행시 콜백 함수의 불필요한 실행을 줄이는 역할을 합니다. 이로 인해 클라이언트가 혜택을 볼 수도 있거나 혹은 서버 측에 불필요한 리퀘스트를 줄일 수도 있습니다. debounce: 동일 이벤트가 반복적으로 시행되는 경우 마지막 이벤트가 실행되고 나서 일정 시간(밀리세컨드)동안 해당 이벤트가 다시 실행되지 않으면 더보기…

자바 예제: 한글 검색 SQL 만들기 (자음 초성 검색 포함)

한글 유니코드와 관련된 내용은 이 글을 참고하세요: Java 예제: 한글 초성 중성 종성 분리 (자모분리)   만들고자 하는 SQL(mariadb)은 다음과 같습니다. SELECT `id`, `keyword`, `date`, count(keyword) as kcount FROM `recent_search_keyword` WHERE keyword >= ‘가’ and keyword <= ‘깋’ group by keyword order by keyword 자바(또는 Spring)에서 입력된 키워드를 분석해서 위 SQL의 더보기…

자바스크립트 예제: 루비 문자 변환기

루비 문자 변환기 바로가기 루비 문자는 글자 위에 첨자가 붙는 것으로서 아래와 같은 것들을 루비 문자라고 합니다. 모든 문자 및 언어에서 사용되는 것이지만 주로 일본어 등에서 볼 수 있습니다. (나무위키 루비 문자)  振ふり仮が名な HTML으로 이 루비 문자를 입력할 수 있는데, 매번 태그를 입력하는 것이 귀찮기 때문에 변환기를 만들었습니다. 사용법은 루비 더보기…