전체 글(158)
-
c# 코딩 작성할때 주의사항
1. 코드를 작성할때 나중에 기능을 추가하거나 코드를 수정해야 할경우 어렵다고 느껴지면 코드를 잘못짠거다. 2. 한 클래스에 300줄이 넘어가면 의심을 해야한다. 3. 객체지향적으로 코드를 작성하고있는지 확인하기. 4. 액션과 펑션을 잘 이용하면 간단한 클래스는 간편하게 사용할 수 있다. 5. static이 객체지향에서 위배되는게 많으나 유용한부분도 많기때문에 잘 사용해서 작성해야한다.
2024.10.04 -
인터페이스 상속받을때 클래스명
내가 사용하고 있는 Scene 인터페이스의 구조public interface Scene { int Start(); } Scene을 상속받을 클래스public class MainScene : Scene { private Display display; // 메인 신 시작 int Scene.Start() { display = new MainDisplay(); display.Display(); display.Select(); return 0; } } 인터페이스 상속을 받은 클래스에서 인터페이스 내에 있는 함수를 정의할때의 사용방법2가지1. int Scene.Start() ( 명시적 ) ( 함수를 직접 호출 ..
2024.10.02 -
c# 싱글톤 사용 이유 및 싱글톤 생성방법
싱글톤을 사용하는 이유1. 프로그램 내에서 단 하나의 인스턴스만 생성하기 위함이다.GameManager 클래스의 경우, 게임을 관리하는 객체가 여러 개 있으면 게임 로직이 꼬이거나 문제가 발생할 수 있기 때문에 하나의 인스턴스만을 생성해서 관리하기 위함이다. 2. 전역에서 접근 가능하게 만들기 위함이다.싱글톤 패턴을 사용하면 특정 클래스의 인스턴스를 어디서든 전역적으로 접근할 수 있기때문이다.GameManager.Instance 를 통해 프로그램 내 모든 곳에서 동일한 GameManager 인스턴스에 접근할 수 있습니다. 싱글톤을 만드는 3가지 방법첫번쨰 ( 싱글톤 인스턴스를 담을 상자하나 = 필드 ) ( 필드 접근제한자 private 밑 static으로 생성 )private static GameMana..
2024.10.02 -
콘솔창 총모음(커서 위치 설정, 콘솔창 지우기, 콘솔창 시간 지연시키기)
1. 콘솔창 커서 위치 설정하는 코드 ( Console.SetCursorPosition(n,n) )커서를 사용자가 설정한 위치 값에 위치 시키도록 해주는 코드기본창 x는 118이 마지막 번호, y는 29번째가 마지막2. 콘솔창 지우는 코드( Console.Clear() )콘솔창에 띄어져 있는 모든 것들이 지워진다.3. 콘솔창 시간 딜레이( Thread.Sleep(n) )n 시간만큼 시간 딜레이 시키기
2024.10.01 -
자식들에 공통으로 들어가는 필드값이 있을경우
밑에 코드와 같이 자식 객체들을 생성해줄때마다 공통적으로 문자열 타입의 name을 받아서 _Name이라는 필드에 값을 넣어주는데 그거를 부모에 생성자를 만들어 줘서 사용을 하면은 자식 타입의 또 다른 직업을 만들어줄때 따로 안넣어주고 그냥 : base(name)만 넣어주면 된다. 바꾸기 전 코드public Knight(string name){ _Lv = 1; _Name = name; _Job = "Knight"; _Atk = 5; _Def = 10; _Speed = 5; _Hp = 100; _Mp = 50; SkillListAdd(new Skill("알파 스트라이크", "공격력 * 2 로 하나의 적을 공격합니다.", 10, 2.0f, 1)..
2024.10.01 -
생성자 안에 생성자
시도Player안에 public List skills = new List();라는 리스트를 만들고 거기에 Knight가 생성될때 스킬의 목록들이 들어가도록 Knight에서 생성자 안에 생성자를 만들어서 사용을 했다.코드public class Knight : Player { public Knight(string name) //유저 이름 { _Lv = 1; _Name = name; _Job = "Knight"; _Atk = 5; _Def = 10; _Hp = 100; _Mp = 50; SkillListAdd(new Knight("알파 스트라이크", "공격력 * 2 로 하나의 적..
2024.10.01