스파르타 코딩클럽.. 정말 스파르타네요
이전에 독학하면서 한번도 제대로 본 적 없던 문법 부분까지 이제 겨우 2주차에 머리에 집어넣는 중입니다.
4개월 동안 이런 페이스의 학습 내용을 따라갈 수 있다면 얼마나 많이 성장할지 벌써부터 기대가 되네요.
이전에 잘못 알고 쓰던 구문도 많았다는 사실도 깨닫고 학습하였으며
배웠으나 사용하지 않던 문법들도 다시 한번 리마인드했습니다.
이에 따라,
지금까지 익숙하게 쓰던 구문들이 아닌
새로 배운 내용들을 적극 활용하여
과제 프로젝트 구조를 만들고 있습니다.
1. 클래스
1) 상속 연습
공통적인 부분만 부모에 빼고 다른 점은 자식 클래스에서 쓰기
2) 객체 초기화에 대한 잘못된 이해 정정
생성자
public 클래스이름(매개변수들)
>> 매개변수로 받는 값들을 프라이빗 데이터들에 써주면서 클래스 객체를 생성하며 바로 초기화 가능!
한번만 초기화하고 더 이상 덮어쓸 일이 없는 값들은
get 프로퍼티 혹은 메서드를 이용해 읽기만 하면
예전에 쓰던 주먹구구식 방법보다 훨씬 안전!
클래스 객체 생성 이후 초기화 때 Null Reference 에러를 자주 마주쳤었는데,
이번에 제대로 개념을 배우면서 그 원인을 알았습니다.
앞으로 다시는 클래스 객체 생성으로 인한 해당 에러를 볼 일이 없을 것 같습니다.
// 아이템 공통적인 부분만
public class Item
{
// 이름, 정보
protected string name;
protected string info;
public string GetName { get { return name; } }
public string GetInfo { get { return info; } }
}
///////////////////////////////////////////////////////////////////////////
public class Item_equip : Item
{
statusSort statusSort;
int statusAmount;
public Item_equip(string _name, string _info, statusSort _statusSort, int _amount)
{
name = _name;
info = _info;
statusSort = _statusSort;
statusAmount = _amount;
}
public statusSort GetStatusSort { get { return statusSort; } }
public int GetStatusAmount { get { return statusAmount; } }
}
2. 자동 정렬하는 자료형
SortedSet, SortedList, SortedDictionary
// 중복 요소는 들어가지 않는 해시세트 + 자동 오름차순 정렬
SortedSet<int> equipIndex;
// SortedList<T> : 자동으로 정렬하는 리스트
// SortedDictionary<T> : 자동으로 정렬하는 딕셔너리
// 리스트는 값, 딕셔너리는 Key값을 기준으로 오름차순(기본) 정렬
// 내림차순은 비교자의 람다식 a,b 순서를 바꿔주어 오름차순의 역순으로 정렬
// 예시) var descendingSet = new SortedSet<int>(Comparer<int>.Create((a, b) => b.CompareTo(a)))
3. 특정 값이 나올 때까지 중단점 건너뛰기
오늘 튜터님의 강의에서 이걸 듣고 기절하는 줄 알았습니다.
이때까지 루프 돌면서 원하는 값이 필요하면 나올 때까지 계속 다음 다음 눌러줬는데
앞으로는 원하는 조건에 진입할 때만 멈추게끔 할 수 있게 되었습니다.
중단점 우클릭 >> 조건 >> 우리가 보통 쓰는 비교문을 활용한 조건식을 알맞게 기입
'스파르타코딩클럽_Unity개발과정' 카테고리의 다른 글
3주차 팀 프로젝트 (텍스트 턴제 RPG) - 퀘스트 (0) | 2025.04.22 |
---|---|
string 강의 + 3주차 팀 프로젝트 시작! (0) | 2025.04.21 |
C# 문법 강의 2주차 (0) | 2025.04.16 |
C# 강의 2주차 과제 - 숫자 맞추기 게임, 틱택토 (0) | 2025.04.15 |
코딩테스트 Day4 (0) | 2025.04.15 |