728x90

CS 188

24.11.17 CS

CSRDBMS VS NoSQL데이터 모델RDBMS데이터를 표 형태(테이블)로 저장한다.테이블 간에는 명확한 관계(키와 외래 키등)가 있으며, 구조화된 스키마를 따라야 한다.SQL을 사용하여 데이터를 관리한다.NoSQL데이터 모델링에 유연성을 제공한다. 관계형 데이터베이스처럼 고정된 스키마가 없고, 여러 가지 데이터 저장 방식을 지원한다.스키마RDBMS고정된 스키마를 가지고 있다.데이터가 정규화되어 있다.스키마를 미리 정의해야 한다.데이터는 테이블의 각 열에 맞춰 엄격하게 구조화되어야 한다.NoSQL동적 스키마 또는 스키마가 없을 수 있다.데이터 구조가 각 레코드마다 다를 수 있어, 유연하게 데이터 형태를 변경할 수 있다.확장성RDBMS수직 확장에 더 적합하다.더 큰 서버로 교체하거나 하드웨어 성능을 높여..

24.11.16 CS

추상 팩토리(Abstract Factory)추상 팩토리 패턴은 연관성이 있는 객체 군이 여러개 있을 경우 이들을 묶어 추상화하고, 어떤 구체적인 상황이 주어지면 팩토리 객체에서 집합으로 묶은 객체 군을 구현화 하는 생성 패턴이다. 클라이언트에서 특정 객체를 사용할 때 팩토리 클래스만을 참조하여 특정 객체에 대한 구현부를 감추어 역할과 구현을 분리시킬 수 있다.즉, 추상 팩토리의 핵심은 제품군 집합을 타입 별로 찍어낼 수 있다는 점이 포인트이다. 복잡하게 묶이는 제품군들을 관리와 확장하기 용이하게 패턴화 한 것이 추상 팩토리이다.추상 팩토리 패턴 구조AbstractFactory최상위 공장 클래스. 여러개의 제품들을 생성하는 여러 메소드들을 추상화 한다.ConcreteFactory서브 공장 클래스들은 타입에..

24.11.15 Unity

UnityUnity Addressables는 Unity에서 리소스(assets)를 더 효율적으로 관리하고 로드하기 위한 강력한 시스템이다. Addressables을 사용하면 동적 콘텐츠 관리, 메모리 최적화, 게임의 로딩 시간 감소와 같은 기능을 쉽게 구현할 수 있다.1. Addressables이란?Unity Addressables 시스템은 게임 리소스(텍스처, 사운드, 모델, 애니메이션 등)를 어드레서블(Addressable)하게 만드는 기능을 제공한다.리소스에 주소를 부여하고, 이 주소를 사용하여 해당 리소스를 필요할 때 로드하거나 언로드할 수 있다. 이 방식은 리소스를 다루는 전통적인 Unity의 Resources 폴더 및 Asset Bundles의 한계를 극복하기 위해 설계되었다.2. Addres..

24.11.13 CS

CS이것이 컴퓨터 과학이다.CPU 성능클럭이란 컴퓨터의 부품을 일사불란하게 움직일 수 있게 하는 시간의 단위이다. 클럭속도는 헤르츠 단위로 측정되는데, 이는 클럭이 1초에 몇 번 반복되는지를 나타낸다. 이런 점에서 클럭 속도는 CPU의 속도 단위로 간주되기도 한다.코어란 CPU내에서 명령어를 읽어들이고, 해석하고, 실행하는 부품을 의미한다스레드란 하드웨어적인 스레드와 소프트웨어적인 스레드로 나누어 기억하면 좋다. 하드웨어 스레드는 하나의 코어가 동시에 처리하는 명령어의 단위를 의미한다. 같은 의미로 하나의 코어로 여러 명령어를 동시에 처리하는 CPU를 멀티스레드 프로세서, 혹은 멀티스레드 CPU라고 한다. 하드웨어 스레드를 논리 프로세서 라고 부르기도 한다.소프트웨어 스레드란 하나의 프로그램에서 독립적으..

24.11.12 CS, C++

CSTCP/UDPTCP연결 지향형 서비스(reliable service)와 신뢰적 데이터 전송 서비스(data integrity)를 포함한다.Reliable ServiceTCP는 메시지 전송 전에 클라이언트와 서버가 서로 전송 제어 정보를 교환하도록 한다. 즉, 패킷이 전송될것을 미리 알려준다.Data integrityTCP는 데이터를 오류 없이 올바른 순서로 전달하는 것을 보장한다.Congestion control(혼잡제어)TCP의 congestion control은 네트워크가 혼잡상태에 이르면 프로세스의 속도를 낮춘다.즉, 프로세스가 우선이 아니라 네트워크의 안정성 향상을 우선한다.Flow control(흐름제어)TCP는 receiver의 buffer가 꽉 차서 데이터가 손실되지 않도록 sender의..

24.11.11 CS

CS이것이 컴퓨터 과학이다.컴퓨터가 이해하는 정보CPU는 기본적으로 0과 1만을 이해할 수 있다. 이것을 비트라고 한다. N 비트는 2^N개의 정보를 표현할 수 있다.워드란 CPU가 한 번에 처리할 수 있는 데이터의 크기를 의미한다. CPU는 프로그램을 워드 단위로 읽어 들이고 처리한다. 워드의 크기는 CPU마다 다르지만, 현대컴퓨터 대부분의 워드 크기는 32비트, 혹인 64비트이다.컴퓨터 내부에서는 소수점을 나타내기 위해 대표적으로 부동소수점 표현 방식을 이용한다. 하지만 이 방식은 정밀도에 한계가 있다. 부동소수점은 소수점이 고정되어 있지 않은 소수 표현 방식으로, 필요에 따라 소수점의 위치가 이동할 수 있고 유동적이라는 의미에서 부동소수점이라는 이름이 붙었다. 오늘날 컴퓨터는 2진수의 지수와 가수를..

24.11.07 CS, VV

CS이것이 컴퓨터 과학이다.개발자에게 필요한 역량은 근거를 설명하는 능력이다.특정 코드 혹은 프로그램이 어떻게 작동하며, 왜 특정 성능을 내는지에 대한 근거를 제시하고 설명하는 능력이야 말로 AI 도구에 종속되지 않는 진짜 역량이다. 코드와 프로그램의 근거를 설명하는 능력은 상당 부분 컴퓨터 과학에서 찾을 수 있다.CHAPTER 01 기술 면접과 실무를 위한 컴퓨터 과학프로그램 개발의 목적은 일단 작동하게 만드는 것을 넘어 제대로 작동하게 만드는 것이다.프로그래밍 언어의 기초 문법이나 프레임워크/라이브러리의 기초 사용법은 단순한 프로그램을 개발하기에는 충분한 지식이지만, 그를 확장/유지보수 하거나 실행의 전 과정을 이해하는 데에는 충분하지 않은 경우가 많기 때문이다. 내가 작성한 코드의 실행 과정을 나조..

24.10.17 CS, UE5

CS모던 객체 지향 설계 원칙유지보수와 유연함, 확장성 향상을 위한 객체 지향 프로그래밍 원칙(SOLID)Single responsibility principle하나의 클래스는 하나의 책임만 가져야 한다.Open/closed principle클래스 설계를 변경하지 않고 동작을 확장할 수 있어야 한다.Liskov subsititution principle작고 명확한 인터페이스들로 분리해 관리해야 한다.Dependency inversion principle구현을 배제시킨 상위 정책을 바라보며 설계해야 한다.상위 언어의 기능인터페이스(interface)객체 설계의 틀을 제공하는 추상 클래스리플렉선(Reflection)런타임에서 객체의 구조를 파악하고 객체에 메타데이터를 부여한다.델리게이트(Delegate)프로..

24.10.08 UE5, CS

UE5언리얼 에디터 개요언리얼 엔진의 핵심 도구는 언리얼 에디터(Unreal Editor)이다. 에디터는 다음과 같은 주요 구성 요소로 이루어져 있다.뷰포트(Viewport)게임 세계를 실시간으로 볼 수 있는 창이다. 사용자는 이곳에서 오브젝트를 배치하고, 이동시키고, 회전하거나 크기를 조절할 수 있다.아웃라이너(Outliner)현재 레벨에 있는 모든 오브젝트의 계층 구조를 보여준다. 사용자는 오브젝트를 선택하거나 계층 구조를 변경할 수 있다.디테일 패턴(Details Panel)선택한 오브젝트의 속성(properties)을 수정할 수 있는 패널이다.콘텐츠 브라우저(Content Browser)프로젝트 내 모든 에섯(asset)을 관리할 수 있는 창이다. 여기에서 텍스처, 모델, 사운드, 블루프린트 등을..

24.09.25 Unity, CS

언리얼 시작.. 내일부터는 언리얼을 정리 해보도록 하겠다 크악..UnityUnity Addressables는 Unity에서 리소스(assets)를 더 효율적으로 관리하고 로드하기 위한 강력한 시스템이다. Addressables을 사용하면 동적 콘텐츠 관리, 메모리 최적화, 게임의 로딩 시간 감소와 같은 기능을 쉽게 구현할 수 있다.1. Addressables이란?Unity Addressables 시스템은 게임 리소스(텍스처, 사운드, 모델, 애니메이션 등)를 어드레서블(Addressable)하게 만드는 기능을 제공한다.리소스에 주소를 부여하고, 이 주소를 사용하여 해당 리소스를 필요할 때 로드하거나 언로드할 수 있다. 이 방식은 리소스를 다루는 전통적인 Unity의 Resources 폴더 및 Asset ..

728x90