'분류 전체보기' 카테고리의 글 목록 — SH's Devlog

분류 전체보기

iOS/Swift

[iOS/Swift] 함수 (Functions)

함수 (Functions)는 특정 작업을 수행하는 코드 모음입니다. Swift의 통합 함수 구문은 파라미터 이름이 없는 단순한 C 스타일 함수에서 각 파라미터에 대한 이름과 인수가 있는 복잡한 Objective-C 스타일까지 모든 것을 표현할 수 있을 만큼 유연합니다. 파라미터는 함수 호출을 단순화하기 위해 기본 값을 제공하며, 함수가 실행을 완료하면 전달된 변수를 수정할 수 있는 in-out 파라미터를 전달할 수 있습니다. Swift의 함수에는 함수 파라미터 타입과 반환 타입으로 구성된 타입이 있습니다. Swift의 다른 타입과 마찬가지로 이 타입을 사용할 수 있으므로 함수를 파라미터로 다른 함수에 전달하고 함수에서 함수를 반환할 수 있습니다. 함수는 중첩된 함수 범위내에서 유용한 기능을 캡슐화하기 위..

iOS/Swift

[iOS/Swift] 제어 흐름 (Control Flow)

Swift는 다양한 제어 흐름(control flow) 구문을 제공합니다. 여러번 작업을 수행하는 for-in 루프, while 구문과 조건에 따라 다르게 실행되는 if, guard, switch 구문과 다른 포인트로 실행 포인트로 전달하는 break와 continue 문이 있습니다. 또한, Swift는 범위를 벗어났을 때 실행되는 코드인 defer 구문을 제공합니다. 또한, 복잡한 매칭 조건은 각 케이스에 대해 where 절로 표현할 수 있습니다.For-In 루프 (For-In Loops)배열에 아이템, 범위의 숫자, 또는 문자열에 문자와 같은 연속된 것에 대해 for-in 루프를 사용하여 반복할 수 있습니다. 아래 예제는 for-in 루프를 사용하여 배열의 아이템을 반복합니다.let names = [..

iOS/Swift

[iOS/Swift] 기본 연산자(Basic Operators)

대입 연산자 (Assignment Operator)= 연산자를 통해 초기화할 수 있습니다.let b = 10var a = 5a = b// a is now equal to 10 우항이 여러개의 값이 있는 튜플이라면 튜플의 요소는 여러개의 상수 또는 변수로 한번에 분해될 수 있습니다.let (x, y) = (1, 2)// x is equal to 1, and y is equal to 2 C와 Objective-C에서의 대입 연산자와 다르게 Swift의 대입 연산자는 값을 반환하지 않습니다. 즉, 아래의 예시는 유효하지 않습니다.if x = y { // This is not valid, because x = y does not return a value.}복합 대입 연산자 (Compound Assignm..

iOS/Swift

[iOS/Swift] Swift 기본 구문 (The Basics)

상수와 변수(Constants and Variables)상수와 변수는 이름과 특정 타입의 값을 연결합니다. 상수(Constant)의 값은 최초 지정 후 변경이 불가능하지만 변수(Variable)는 다른 값으로 변경이 가능합니다. 상수는 let 키워드로 선언하고, 변수는 var 키워드로 선언합니다. // 상수let str = "Constants"// 변수var str = "Hello Swift"str = "Variable" 타입 명시(Type Annotations)상수 또는 변수를 선언할 때 타입을 명확하게 하기 위해 타입 명시를 할 수 있습니다. 타입을 명시하는 방법은 상수 또는 변수의 이름 뒤에 콜론과 공백 한칸 뒤에 사용할 타입을 적으면 됩니다.var str: String = "Hello Swift"..

CS(Computer Science)/Database

[Database] 10. 트랜잭션, 장애와 회복, 병행 제어

이번 포스트에서는 데이터베이스의 트랜잭션, 장애와 회복, 병행 제어에 대해 알아보겠습니다.트랜잭션(Transaction)[ 트랜잭션의 개념 ]트랜잭션(Transaction)은 하나의 작업을 수행하기 위해 필요한 데이터베이스 연산들을 모아놓은 것으로, 논리적인 작업의 단위.트랜잭션은 데이터베이스에 장애가 발생했을 때 데이터를 복구하는 작업의 단위도 된다.데이터베이스의 연산은 SQL 문으로 표현되므로 트랜잭션을 작업 수행에 필요한 SQL 문들의 모임으로 이해해도 좋다.트랜잭션을 통해 데이터베이스가 항상 정확하고 일관된 상태를 유지할 수 있도록 다양한 기능을 제공할 수 있다.[ 트랜잭션의 특성 ]트랜잭션이 성공적으로 처리되어 데이터베이스의 무결성과 일관성이 보장되려면 트랜잭션의 네 가지 특성인 원자성, 일관성..

CS(Computer Science)/Database

[Database] 9. 이상현상(Anomaly), 정규화(Normalization)

이번 포스트에서는 이상현상(Anomaly), 정규화(Normalization)에 대해 알아보겠습니다.이상 현상(Anomaly)이상현상(Anomaly)은 불필요한 데이터의 중복으로 인해 발생하는 부작용들.함수 종속 관계 여러 개를 하나의 릴레이션으로 표현하는 경우에 주로 발생한다.이상 현상에는 삽입 이상(insertion anomaly), 갱신 이상(update anomaly), 삭제 이상(deletion anomaly)이 있다.  위 그림의 이벤트참여 릴레이션은 고객들이 이벤트에 참여한 결과를 저장하고 있는 릴레이션이다. 고객에 대한 정보인 고객아이디, 고객이름, 등급과 고객이 참여한 이벤트에 대한 정보인 이벤트번호, 당첨여부를 포함하고 있다. 한 고객이 여러 이벤트에 참여할 수 있으므로 고객아이디만으로..

CS(Computer Science)/Database

[Database] 8. 데이터베이스 설계

이번 포스트에서는 데이터베이스 설계에 대해 정리하겠습니다.데이터베이스 설계 단계데이터베이스 설계 단계는 사용자의 다양한 요구 사항을 고려하여 데이터베이스를 생성하는 과정.[ E-R 모델과 릴레이션 변환 규칙을 이용한 설계 ]관계 데이터 모델을 기반으로 두고 데이터베이스를 설계할 때는 두 가지 방법을 주로 사용한다. 1. E-R 모델과 릴레이션 변환 규칙을 이용한 데이터베이스 설계2. 정규화를 이용한 데이터베이스 설계 (이상 현상을 제거하면서 올바르게 설계해나가는 방법으로 다음 포스트에서 정리 예정) 아래와 같이 5단계로 진행된다.[ 1단계: 요구사항 분석 ]요구사항 분석 단계는 데이터베이스의 용도를 파악하고 요구사항을 수집한다.결과물: 요구 사항 명세서[ 2단계: 개념적 설계 ]개념적 설계 단계는 1단..

CS(Computer Science)/Database

[Database] 6. 관계 데이터 연산

이번 포스트에서는 관계 데이터 연산에 대해 정리하겠습니다.관계 데이터 연산의 개념[ 관계 데이터 모델 ]관계 데이터 모델 = 연산 + 데이터 구조 + 제약조건 으로 이루어진다.[ 관계 데이터 연산 ]연산은 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것. 데이터베이스 시스템의 구성 요소 중 데이터 언어의 역할을 한다.대표적인 관계 데이터 연산은 관계 대수와 관계 해석이 있다.관계 대수는 원하는 데이터를 얻기 위해 데이터의 처리 과정을 순서대로 기술하는 절차 언어(procedural language)관계 해석은 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어(nonprocedural language)관계 대수와 관계 해석은 능력이 동일함. -> 즉, 관..

CS(Computer Science)/Database

[Database] 5. 관계 데이터 모델

이번 포스트에서는 관계 데이터 모델에 대해 정리하겠습니다.관계 데이터 모델의 개념[ 관계 데이터 모델의 개념과 기본 용어 ]관계 데이터 모델 -> 개념적 구조를 논리적 구조로 표현하는 논리적 데이터 모델 중 하나다. 하나의 개체에 대한 데이터를 릴레이션 하나에 담아 데이터베이스에 저장한다.   릴레이션 -> 하나의 개체에 관한 데이터를 2차원 테이블의 구조로 저장한 것.속성(Attribute) -> 릴레이션의 열. ex) 고객아이디, 고객이름, 나이, 등급, 직업, 적립금이라는 속성튜플(Tuple) -> 릴레이션의 행. ex) 위의 표에서 고객 개체의 4개에 대한 인스턴스도메인 -> 하나의 속성이 가질 수 있는 값들의 집합. ex) 등급 속성의 값으로 vip, gold, silver, bronze 중 하..

반응형