IT강의 97

게임의 정의와 요소

이번 시간에는 게임을 정의해보고 그 요소가 어떤 것이 있는지 살펴보겠습니다. 우선 게임을 정의하면 아래와 같습니다. 게임의 정의 - 좁은 의미: '놀이' 그 자체 - 넓은 의미: 재미를 보장하는지에 관계 없이 '놀이'에 속하는 모든 것 컴퓨터(모바일, 콘솔) 게임의 정의 - 일정한 규칙 아래 상호간의 경쟁을 통하여 승부를 낼 수 있는 것 - 플레이 수단이 컴퓨터인지, 모바일인지, 콘솔기기인지의 차이만 있음 그렇다면 게임의 요소는 어떤 것들이 있을까요? 본격적으로 살펴보겠습니다. (1) 재미 (Pleasure) - 게임을 통해 즐거움과 만족을 얻을 수 있고 자발적으로 참여할 수 있습니다. - 스트레스에서 벗어나 기분을 전환하거나 정신적인 피로를 풀 수 있습니다. - 레크리에이션 활동을 대신할 수 있다고도 ..

네트워크의 구성 형태

이번 시간에는 네트워크의 구성 형태에 대해 살펴보겠습니다. 네트워크는 아래와 같이 5개의 형태로 구성할 수 있습니다. (1) 성형 (스타형, Star Type) - 중앙에 호스트 컴퓨터가 있고 이를 중심으로 여러 컴퓨터가 연결된 형태입니다. - 통신망의 제어가 간단하고 구축 비용도 저렴합니다. - 서브 컴퓨터는 아무리 고장나도 전체 네트워크에 영향을 주지 않지만 중앙 컴퓨터가 고장나면 전체 네트워크가 마비됩니다. (2) 링형 (Ring Type) - 단방향 점 대 점으로 연결된 링 형태입니다. - 컴퓨터의 추가나 제거가 어렵습니다. - 컴퓨터 한 대가 고장이 나면 전체 네트워크에 영향을 줍니다. (3) 버스형 (Bus Type) - 하나의 고속 회선에 여러 컴퓨터가 연결된 형태입니다. - 회선 하나를 공..

래스터 그래픽과 벡터 그래픽의 차이

이번 시간에는 래스터 그래픽과 벡터 그래픽의 차이를 살펴보겠습니다. (1) 래스터 그래픽 - 픽셀단위로 저장하는 방식입니다. - 화면을 확대할 때 화질이 떨어집니다. (계단 현상) - 파일의 크기가 해상도에 비례합니다. - 해당 포맷: JPEG, TIFF, GIF, BMP, PNG, PSD, PICT, TGA 등 - 해당 프로그램: 포토샵, 페인터, 코렐 포토 페인터 등 (2) 벡터 그래픽 - 점, 선, 곡선, 원등의 기하적 객체로 표현하는 방식입니다. - 화면을 확대해도 화질이 변하지 않습니다. - 파일의 크기가 해상도에 비례하지 않고 래스터 그래픽에 비해 작은 편입니다. - 해당 포맷: SVG. PCB, CGM, AI, CDR, EPS 등 - 해당 프로그램: 일러스트레이터, CAD, 코렐 드로우 등 ..

IT강의/(Others) 2021.05.10

폴링과 인터럽트의 차이

이번 시간에는 폴링 방식과 인터럽트 방식의 차이를 알아보겠습니다. (1) 폴링 (Polling) - 정해진 시간 또는 순번에 상태를 확인해서 상태 변화가 있는지 없는지를 체크하는 방식입니다. - 주기적으로 값을 확인하는 거라고 이해하시면 됩니다. (2) 인터럽트 (Interrupt) - 외부의 핀에 신호가 들어오면 즉각적으로 하고 있는 모든 task를 멈추고 서비스 루틴을 실행한 다음 다시 작업하던 곳으로 복귀한 후 수행하는 방식입니다. - 바깥에서 신호를 보내면 하는 일을 잠시 멈추고 밖으로 나온다고 이해하시면 됩니다. - 폴링 교사: (수업을 진행하다가 일정 시간 간격으로) A학생, 질문 있어요? A학생: 아니오. 없습니다. 교사: B학생, 질문 있어요? B학생: 예. 있습니다. (질문을 함) 교사:..

게임 엔진의 정의 및 종류

요즘 게임 좋아하는 사람들 많죠? 저 역시 게임을 좋아하다보니 자연스럽게 이런 글을 쓰게 되는군요 ㅎㅎ 따라서 이번 시간에는 게임 엔진을 정의해보고 종류를 살펴보려고 합니다. 게임 엔진은 게임 소프트웨어의 구성에 필요한 소프트웨어 구성 요소를 재사용할 수 있게 만든 것입니다. 게임 엔진은 다음과 같은 특징을 갖고 있습니다. - 초보자들도 게임을 쉽게 만들 수 있도록 인터페이스를 제공합니다. - 새부적인 효과(애니메이션 효과, 충돌 시 반응 등)를 코딩 처리 하지 않아도 됩니다. - 게임 개발에 필요한 기능을 즉시 사용할 수 있도록 제공하여 개발의 단가와 복잡도를 줄여주고 제 일정에 복잡한 게임을 출시할 수 있게 해 줍니다. - 게임 제작 뿐만 아니라 홍보용 데모, 건축 시각화, 훈련 시뮬레이션, 모델링 ..

키의 종류 (슈퍼키, 후보키, 기본키, 대체키, 외래키)

이번 시간에는 키의 종류에 대해 알아보겠습니다. 인터넷에서 찾아보면 키의 개념을 설명해주는 글들이 나와있지만 설명이 어렵고 추상적인 것이 많아 처음 보는 사람들은 이해하기 어려울 것 같습니다. 그래서 이 게시글을 안 올릴 수가 없더라구요 ㅋㅋㅋ 그래서 키의 종류를 알아보고 쉽게 풀어서 설명해드릴려고 합니다. 우선 아래와 같이 테이블이 있다고 가정하고 설명하겠습니다. (1) 슈퍼키 (Super Key) - 각 행을 유일하게 식별할 수 있는 속성들의 집합입니다. - 서로 구분만 할 수 있다면 '슈퍼키'라고 할 수 있습니다. - 위의 테이블로 예시: - [학번] (O) : 학번만 가지고 학생들을 구분할 수 있으므로 슈퍼키가 맞습니다. - [주민등록번호] (O) : 주민등록번호만 가지고도 학생들을 구분할 수 있..

부서 별 최고 급여를 직원명과 함께 출력

1. 문제 정의 Employee(Id, Name, Salary, DepartmentId) Department(Id, Name) 위의 테이블에서 부서 별로 급여를 가장 많이 받는 직원을 부서명, 직원명, 최고급여 순으로 출력시키시오. 2. 문제 해결 방안 (1) 부서 ID로 그룹핑해서 부서 ID와 부서 별 최고 급여를 가진 테이블을 생성합니다. (2) 위의 테이블을 Employee 테이블의 급여와 부서ID로 조인합니다. 최고 급여를 가진 직원의 이름을 찾아야하기 때문입니다. (3) 추가로 Department 테이블의 ID하고도 조인합니다. 부서명을 찾아야하기 때문입니다. (4) 부서명, 직원명, 최고급여 순으로 출력시킵니다. 3. 소스 코드

세 번 연속적인 숫자 출력

1. 문제 정의 Logs(Id, Num) 테이블에서 세 번 연속적인 숫자들을 출력시키시오. 예를 들어 (1,4), (2,4), (3,4) 이면 Id가 1, 2, 3일 때 모두 Num이 4이므로 세 번 연속이니까 4를 출력시켜야 합니다. 2. 문제 해결 방안 (1) Logs 테이블 3개를 카티션 곱 합니다. (2) 숫자는 모두 같지만 ID는 1씩 증가하는 행을 골라냅니다. 세 번 연속이라는 것은 ID가 세 번 증가했음에도 숫자가 서로 같다는 뜻이기 때문입니다. (3) 숫자만 골라서 출력시킵니다. 3. 소스 코드

중복되는 메일 주소 출력

1. 문제 정의 Person(Id, Email) 테이블에서 2개 이상 중복되는 메일 주소를 모두 출력시키시오. 2. 문제 해결 방안 (1) Person 테이블끼리 카티션 곱을 합니다. (2) 메일 주소는 같지만 ID는 다른 행을 골라냅니다. 중복된다는 것은 서로 다른 사람인데 메일 주소가 같은 경우이기 때문입니다. (3) 메일 주소만 골라서 출력시킵니다. 3. 소스 코드

트랜잭션의 4가지 특징: ACID

트랜잭션은 데이터베이스의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미합니다. 이번 게시글에서는 트랜잭션의 4가지 특징에 대해 알아보겠습니다. 트랜잭션의 핵심적인 특징 이라고 하는데요. 줄여서 'ACID' 라고 부릅니다. 트랜잭션은 아래와 같이 4가지 특징을 가지고 있습니다. (1) 원자성 (Atomicity) - 트랜잭션과 관련된 작업들은 부분적으로 실행되다가 중단되지 않는 것을 보장한다는 의미입니다. - '완전히 실행되거나 또는 아예 실행되지 않는다' 라고 이해하시면 됩니다. - 예를 들어 계좌로 돈을 보내는 중에 연결이 끊겼다면 이 작업은 아예 철회되어야 합니다. (2) 일관성 (Consistency) - 트랜잭션이 실행을 ..

728x90
반응형
LIST