컴퓨터 구조 6

싱글톤 패턴

규모가 있는 식당을 떠올려보면 많은 직원들이 식당의 사장님에 의해 고용되어 근무합니다.그리고 그중에서는 지배인처럼 다른 직원들을 관리하는 직원이 존재합니다.일반적인 경우 지배인의 수는 그리 많지 않은 편입니다. 싱글턴은 식당에서의 지배인의 역할을 수행합니다.유일성이 보장되는 인스턴스로서 싱글턴은 주로 다른 데이터를 제어하거나 관리하는 역할을 수행합니다.이번 포스트에서는 싱글톤 패턴을 사용하는 방법을 예제를 통해 알아보겠습니다. - Unity를 통한 싱글톤 패턴의 구현제일 먼저 Player에게 붙어있을 Player 컴포넌트의 코드입니다.public class Player : MonoBehaviour{ private void Start() { Managers managers = Man..

컴퓨터 구조 2024.11.12

멀티쓰레드란?

게임의 서버를 구동하는 방식 중 하나인 멀티 쓰레드 방식에 대해 알아보겠습니다.이를 알기 위해선 우선 사전정보에 대해 알아두어야 할 필요가 있습니다. 1) 사전정보프로세스 다른 말로 프로그램이라하는 것은 서버나 클라이언트처첨 현재 실행중인 프로그램을 의미합니다.우리가 개발 언어를 통해 작성한 프로그램 역시 프로세스로서 작동하게 됩니다. 그리고 쓰레드는 실질적으로 프로세스를 실행시키는 주체를 의미합니다.따라서 프로세스는 절대 자체적으로 실행할 수 없고 반드시 쓰레드가 실행되어야만 실행할 수 있습니다. 마지막으로 CPU 코어 즉, 프로세서가 있습니다.프로세서는 쓰레드를 실행시키는 주체를 의미합니다. 정리하면, 다음과 같습니다. 우리가 알고있듯이 컴퓨터는 하나의 프로세스만 실행시키지 않습니다.메인 프로세스가 ..

컴퓨터 구조 2024.07.27

객체지향의 프로그래밍의 3요소 - 다형성

은닉성:https://monstrosite.tistory.com/18 객체지향의 프로그래밍의 3요소 - 은닉성상속성 : https://monstrosite.tistory.com/17 객체지향 프로그래밍의 3요소 - 상속성 객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다. 첫 번째 시작으로, 상monstrosite.tistory.com 저번 포스팅에서는 객체지향 프로그래밍의 3대 요소 중 하나인 은닉성에 대해 배워보았습니다.이번 포스팅에서는 마지막 요소인 다형성에 대해 알아보겠습니다. 1) 다형성이란?마이크로소프트 공식문서에서는 다형성에 관해 2가지 측면의 설명을 제시합니다.https://learn.microsoft.com/ko-..

컴퓨터 구조 2024.03.30

객체지향의 프로그래밍의 3요소 - 은닉성

상속성 : https://monstrosite.tistory.com/17 객체지향 프로그래밍의 3요소 - 상속성객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다. 첫 번째 시작으로, 상속성에 대해 알아보겠습니다. 위의 코드에서 Knight 클래스는 아주 간단하게monstrosite.tistory.com 저번 포스팅에서는 객체지향 프로그래밍의 3요소 중 하나인 상속성에 대해 배워보았습니다.이번 포스팅에서는 상속성에 이어 은닉성에 대해 배워보겠습니다.  1) 은닉성이란? 자동차를 구매했다고 생각해봅시다. 자동차를 운전하기 위해서는 기본적으로 핸들, 페달, 기어 등을 알아야 합니다.그런데 사실 자동차라는 것을 구성하는 것은 위에서 언급..

컴퓨터 구조 2024.03.30

객체지향 프로그래밍의 3요소 - 상속성

객체지향 프로그래밍(Object Oriented Programming) 줄여서 OOP의 3가지 요소에 대해 알아보고자 합니다.첫 번째 시작으로, 상속성에 대해 알아보겠습니다. 위의 코드에서 Knight 클래스는 아주 간단하게 체력과 공격력, 그리고 움직이고 공격하는 동작을 갖는 클래스입니다.그리고 Paladin 클래스는 Knight 클래스와 비슷하지만, 신성력을 갖고있다는 것이 차이입니다.문제없어 보이지만, 조금만 더 깊게 보면 문제가 있는 부분이 있습니다. 1)  코드를 재사용할 수 없다Knight 클래스와 Paladin 클래스는 하나를 제외하고 같은 특성을 갖고 있습니다.비슷한 특성들을 갖고 있음에도,  단 하나의 차이점으로 인해 클래스를 새로 만들고 멤버들을 다시 작성해주는 문제가 생깁니다.이건 매..

컴퓨터 구조 2024.03.29

프로그래밍 개론

1) 컴퓨터의 연산을 구성하는 요소들간단하게 얘기하자면 컴퓨터는 위와 같이 작동하게 된다.1) CPU : 연산 장치로써 연산을 수행한다2) RAM(주기억 장치) : 연산을 하는데 필요한 데이터들을 기억한다. 단, 전원이 꺼지면 데이터가 손실된다3) SSD(보조 기억 장치) : RAM을 보조하는 반영구적인 기억장치이다 위의 관계에서 볼 수 있듯이 필수적인 내용들을 SSD에 저장하고, 그 내용들을 필요로 할 때, RAM에서 불러와서 사용하게 된다  2) RAM의 구조RAM에서 데이터가 사용하는 공간은 간단하게 4개의 영역으로 분리가 가능하다. 1) 코드(텍스트) 영역 : 소스 코드가 저장되는 영역2) 데이터 영역 : 전역 변수나 정적 변수가 저장되는 영역3) 힙 영역 : 동적할당되는 요소들이 저장되는 영역4..

컴퓨터 구조 2024.02.18