개발 공부 블로그
close
프로필 배경
프로필 로고

개발 공부 블로그

  • 분류 전체보기 (58)
    • CS (18)
      • 언어 공통 (0)
      • C# (7)
      • C++ (11)
      • 디자인패턴 (0)
    • Unity (18)
      • Client (12)
      • Web Server (5)
      • 기술 (1)
    • Unreal Engine (4)
      • Unreal 문서 (3)
      • 이득우의 언리얼 프로그래밍 (1)
    • WEB (1)
    • 프로젝트 (2)
      • 식물대좀비 (2)
    • 코딩 테스트 (5)
      • 백준 (5)
    • 아무거나 (4)
    • 정보처리기사 (4)
  • 홈
  • 태그
  • 방명록

서버와 클라이언트

인터넷이 동작하기 위해 필요한 최소 컴퓨터 수는?2대다.1개는 Web Browser, 1개는 Web Server를 띄우고, 두 대의 컴퓨터는 인터넷으로 연결되어있다.그리고 Web Server를 띄운 컴퓨터는 http://info.cern.ch와 같은 주소를 가진다. 그리고 하드디스크를 가진다. 이 하드디스크에는 index.html 파일이 저장되어있다. 그래서 Web Browser를 가진 컴퓨터에서 http://info.cern.ch/index.html에 들어가면?http://info.cern.ch를 가진 컴퓨터에게 전기 신호를 보낸다. 그 신호 안에는 index.html 파일을 원한다는 내용이 있다. 그럼 info.cern.ch에 해당되는 컴퓨터에 설치된 Web Server 프로그램이 하드 디스크에서 ..

  • format_list_bulleted WEB
  • · 2026. 5. 1.
  • textsms

Unity에서의 에셋 관리와 Addressables

에셋 관리 1. 개발 초기에는 Resources.LoadAsync와 같이 많이 사용함.하지만 이 방법은 빌드 시간이 증가되고 에셋 관리가 힘듦 2. 진행이 어느정도 되면 AssetBundle을 사용AssetBudle.LoadFromFileAysnc이건 번들을 로컬 디스크에 저장해서 에셋을 불러오는 방법 3. 런칭에 가까워지면 서버에서 다운받도록UnityWebRequest.GetAssetBundle(bundleUrl); 사용번들을 서버에서 가져와서 디스크 저장하고, 디스크에서 다시 로드하는 방법 하지만 이 방법은 dependency 처리가 되어있지 않아서 사용하면 안 된다.에셋은 서로 dependency가 있다. ex) 오브젝트1이 다른 머티리얼, 셰이더를 참조한다.에셋번들은 다른 에셋번들에 종속성이 걸려..

  • format_list_bulleted Unity/기술
  • · 2026. 1. 5.
  • textsms

[Web Server] HTTP 서버통신 및 API 사용방법

* HTTP 통신이란?비동기적인 통신이다.ex) 온라인게임처럼 여러명이 실시간 소통하는 서버가 아니라,각각의 pc에서 필요한 정보만 웹서버에 요청하면, 웹서버에서 응답을 보내주는 비동기적인 서버통신이다. * 유니티에서 HTTP 통신을 하는 방법은 2가지가 있다.1. WWW 방식2. UnityWebRequest 방식 => 최신 방법이고, WWW 방식에서 사용할 수 있는 기능을 모두 사용할 수 있다. * HTTP 통신을 할 때 주의해야할 사항1. 코루틴을 사용해야한다. : 코루틴을 사용하지 않으면 요청을 보내고 처리하고 응답이 오는데까지 걸리는 시간동안 프로그램이 멈춘다.2. using문을 사용하는 경우가 있다. : 스크립트 상단에 네임스페이스 추가할 때 쓰는 using문 말하는 거 아니고, 스크립트 중..

  • format_list_bulleted Unity/Web Server
  • · 2025. 10. 15.
  • textsms

[Web Server] 섹션 3. 고급 C# 문법 - 12. LINQ #2

from 중첩해서 사용하기=> foreach를 2번 쓴 것과 같은 효과! // from 2번 쓰기var playerItems = from player in _players from item in player.Items where item grouping// groupingvar playersByLevel = from player in _players group player by player.Level into levelGroup orderby levelGroup.Key select new { levelGroup.Key, Players ..

  • format_list_bulleted Unity/Web Server
  • · 2025. 10. 9.
  • textsms

[Web Server] 섹션 3. 고급 C# 문법 - 12. LINQ #1

데이터를 가공할 때 유용하게 쓸 수 있는 문법이다!SQL 문법과 비슷하고 가독성이 좋아 기능을 쉽게 파악할 수 있다는 것이 장점이다. 근데 유니티에서 LINQ 쓰면 오류날 수도 있어서...(특히 ios) 별로 추천하진 않는다고 한다...(초창기에 그랬다고 함)근데 LINQ를 기반으로 하는 기술들이 많아서, 공부할 가치가 있다 using System.Threading.Tasks;using System;namespace TaskPractice{ public enum ClassType { Knight, Archer, Mage, } public class Player { public ClassType ClassType { get; se..

  • format_list_bulleted Unity/Web Server
  • · 2025. 9. 28.
  • textsms

[Web Server] 섹션 3. 고급 C# 문법 - 11. Async, Await

async 이름만 봐도 비동기 프로그래밍 같지만비동기라고 꼭 멀티쓰레드는 아니다.동기와 다르게 하나가 끝날 때까지 기다리지 않아도 된다는 의미에서 비동기이고,꼭 멀티쓰레드 환경에서 실행되어야 한다는 보장은 없다.ex) 한 스레드 안에서 일을 분배해서 함(약간 코루틴 느낌~)참고로 coroutine은 싱글 스레드에서 동작한다! Task란?일감을 만들어서 보내준다~ 대충 이런 의미 using System.Threading.Tasks;using System;namespace TaskPractice{ class Program { static Task Test() { Console.WriteLine("Task start"); Task t..

  • format_list_bulleted Unity/Web Server
  • · 2025. 9. 7.
  • textsms

[Web Server] 섹션 2. 웹 기초 - 3. 환경 설정

OSI 7계층에서... Application layer에서 유저인터페이스, HTTP, FTP, DNS 전달Transport layer에서 전송 확인 / 오류 해결, TCP, UDP가 전달됨. HTTP는 내부적으로 TCP, UDP로 만들어져 있음. 게임서버는 보통 TCP 서버로 만들고 웹서버는 HTTP.이 둘은 다른 레이어에 있다.

  • format_list_bulleted Unity/Web Server
  • · 2025. 8. 24.
  • textsms

[Unity] OnBeginDrag 안되는 버그(IBeginDragHandler)

* 해결법IDragHandler도 상속받아서 OnDrag() 함수 구현하면 OnBeginDrag도 동작한다! 참고자료https://discussions.unity.com/t/ibegindraghandler-not-called-without-eventtrigger-component/568450/2

  • format_list_bulleted Unity/Client
  • · 2025. 8. 14.
  • textsms
[C#] Thread의 상태

[C#] Thread의 상태

* 스레드 상태 종류 Unstarted : 스레드 생성 후 Start() 메서드가 실행되기 전(스레드 시작하기 전) 상태Running : 스레드가 동작 중인 상태 Suspended : 스레드 일시 중지 상태. Thread.Rewume() 메소드 호출까지 대기 WaitSleepJoin : 스레드 일시 중지 상태. 특정 조건까지만 대기* Thread.Sleep()특정 ms 시간만큼 스레드가 대기하는 것 * Thread.Join()다른 스레드가 실행이 끝날 때까지 대기하는 것 Aborted : 강제 종료. 보이기에는 바로 종료되어 보이지만 근데 실제로는 바로 종료되는 게 아니라 일정 시간 후에 종료됨 포그라운드 스레드가 죽어버리면 해당 프로세스는 꺼진다.백그라운드 스레드는 죽어도 프로세스 수명에 영..

  • format_list_bulleted CS/C#
  • · 2025. 8. 13.
  • textsms
[C#] Thread

[C#] Thread

* 프로세스와 스레드- 프로세스는 반드시 하나 이상의 스레드로 구성되어진다.- 둘 이상의 스레드를 동시에 실행하면 멀티스레드라 한다. * 스레드- 운영체제가 CPU에 시간을 할당하는 (일을 시키는) 기본 단위- 운영체제가 명령어를 실행하기 위한 스케줄링 단위 * 멀티 스레드의 장점1. 동시에 여러 작업을 할 수 있다.2. 데이터 공유가 쉽다. * 유니티에서 코루틴을 쓰는 이유유니티는 게임 로직 쓰레드(메인 쓰레드) 1개에서만 게임 로직을 짤 수 있다. 스레드를 만들어 사용하면, 그 스레드에서는 유니티의 기능을 사용할 수없다. 그래서 코루틴을 사용해 병렬 처리(하지만 실제로는 동기로 작동)를 구현하는 것이다. ex)using System.Threading;using UnityEngine;public cla..

  • format_list_bulleted CS/C#
  • · 2025. 8. 13.
  • textsms

[C#] readonly

readonly List sessionItems = new List(); 위와 같이 List가 readonly인 경우, sessionItems에 새로운 List 인스턴스를 할당하는 건 안되지만,Add(), Remove(), Clear()같이 내부 요소를 수정하는 메소드는 사용이 가능하다! C#의 readonly 키워드와 불변성에 대해위 글에 따르면, readonly 키워드가 참조형의 내부 상태가 바뀌는 것까진 막아주지 못한다고 한다. 현업에서 쓰고있는 C# 5.0 ~ 7.3 기능 정리readonly List 에 관하여위 글도 다시 보고 참고하기

  • format_list_bulleted CS/C#
  • · 2025. 7. 21.
  • textsms

코드짤 때 실수하는 부분들!!!

1. for문의 탐색 인덱스(i)를 for문 내부에서 사용하는 경우(1)상황for (int i = 0; i 문제가 되는 이유for문 내부에서 walls[i+1]에 접근하기 때문에 for문의 조건을 i하지만 만약 walls 배열의 크기가 1인 경우, walls.Count() - 1 = 0이 되어버려 for문을 아예 돌지 않음i = walls.Count()일 경우의 IndexOutOfBounds는 고려했지만 정작 i = 0인 경우를 고려하지 못했음... 해결법차라리 for(int i=0; ii+1인덱스에 접근하는 while문에 i >= walls.Count() 조건을 걸어 IndexOutOfBounds를 체크하는 게 좋았을 것 같다 2. for문의 탐색 인덱스(i)를 for문 내부에서 사용하는 경우(2..

  • format_list_bulleted 아무거나
  • · 2025. 6. 20.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (58)
    • CS (18)
      • 언어 공통 (0)
      • C# (7)
      • C++ (11)
      • 디자인패턴 (0)
    • Unity (18)
      • Client (12)
      • Web Server (5)
      • 기술 (1)
    • Unreal Engine (4)
      • Unreal 문서 (3)
      • 이득우의 언리얼 프로그래밍 (1)
    • WEB (1)
    • 프로젝트 (2)
      • 식물대좀비 (2)
    • 코딩 테스트 (5)
      • 백준 (5)
    • 아무거나 (4)
    • 정보처리기사 (4)
최근 글
인기 글
최근 댓글
태그
  • #unity
  • #C#
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바