전체 글 81

자원 전쟁 (서버) 프로젝트 - 용광로 만들기 1탄

작성 이유 이번 프로젝트에서 여러 담당을 맡았던 도중에 용광로 핸들러를 마무리 작업을 하던 도중에 문제가 생겼다.문제는 내가 설계한 대로 하면 클라랑 서버랑 계속 시간을 비교해서 동기화를 서로 해줘야하는 작업이 있어야한다.다시 말하자면 현재 값을 계속 클라한테 보내줘야 하는데 멀티 게임 특성상, 클라 끼리 계산을 해줄 수 있는걸 보내줬어야 한다.만약에 서버랑 클라랑 주기적으로 동일한 시간을 계산 할 수 있는 걸 받을 수 있다면 문제 없는 코드이지만 우리는 현재 클라에게 부담을 주지 않게 모든걸 계산해서 다 줘야한다.설계요약 설계 흐름 Furnace Class: 용광로의 상태와 진행도를 관리. Team Class: 각 팀마다 Furnace를 포함하여 용광로 상태를 관리. FurnaceSyncManager:..

TIL 2024.12.05

C# .csv파일 변환 방법과 예시

글의 목적  .csv 파일을 읽어서 데이터를 클래스나 다른 형태로 활용하는 방법은 다양한 언어와 라이브러리에서 가능합니다. 여기서는 C#에서 .csv 파일을 읽고 데이터를 클래스에 매핑하는 예제를 소개하겠습니다. 1. .csv 파일 분석ItemCode,Name,ItemType,Prefab# This file contains item data for the game# ItemType :# 0 = Material# 1 = Equipment# 2 = Junk1000,Wood,0,Wood1001,SolidWood,0,SolidWood1010,Iron,0,Iron1011,Steel,0,Steel1100,Garbage,2,Garbage각 줄의 역할:1번째 줄 (헤더):ItemCode, Name, ItemType, ..

TIL 2024.11.26

Class와 Structure의 차이점 및 사용 목적

1. 공통점Class와 Structure는 둘 다 데이터를 저장하고, 데이터를 처리하는 로직을 포함할 수 있는 프로그래밍 언어의 데이터 구조입니다.둘 다 멤버 변수(필드), 메서드, 생성자 등을 가질 수 있습니다.객체 지향 프로그래밍(OOP)에서 객체를 정의하기 위해 사용됩니다.2. 차이점타입classstructure기본 설계 목적참조형(Reference Type)값형(Value Type)메모리 할당 방식힙(Heap)스택(Stack) (일반적으로)상속상속 가능상속 불가기본 값 전달 방식참조 전달값 복사 전달기본 생성자 지원기본 생성자가 있음명시적으로 생성자 작성 필요디폴트 값null (참조 없음)초기화되지 않은 상태에서는 사용 불가GC의 영향가비지 컬렉터가 메모리 관리자동으로 스택에서 제거됨 3. 주요 ..

TIL 2024.11.26