내일배움캠프 10일차 TIL 개인과제 마무리
int.ToString("00") 이렇게 사용하면 2자리수로 보여준다. 01, 02, 이런식으로 바꿔서 보여준다.
개인과제 해설영상을 보던중 조건식의 결과에 따라 두개의 값을 설정할때 3항연산자를 자주 사용하셨다.
변수 = 조건 ? 참일경우 : 거짓일경우;
이런식으로 사용 하셨는데 생각해보니 내가 했던 코드에 if else문을 남발하기만 했지 3항 연산자를 사용할 생각을 못했다.
그렇기에 나중이 이걸 계기로 if문을 간략화 하고 가독성과 활용성을 넓히기 위해 사용할 것 같다.
List.Contains(내용)
리스트에 해당 내용이 있는지 확인하는 리스트 키워드이다.
class 사용시 main에 static이 붙어있었는데 이것이 불편할 경우
class를 생성하고 class에 메서드를 생성한 후 main안에 해당 클래스를 선언한 후 메서드를 불러오면
해당 메서드가 main처럼 작동 할 수있다.
아래는 예시이다.
static void Main(string[] args)
{
GameManager gm = new GameManager();
gm.MainScreen();
}
class GameManager
{
public void MainScreen()
{
}
}
그냥 클래스는 인스턴스화 즉 객체화를 new로 해야한다.
그러나 static 클래스는 인스턴스 화 즉 선언을 하지 않아도 " 클래스명.메서드()"를 통해 바로 사용이 가능하다.
아래는 예시이다.
static class AB
{
public static void ABSF()
{
}
}
class BC
{
AB.ABSF();
}
위 코드를 보면 ABSF 스태틱 메서드를 만들어 주고 다른 클래스 BC에서 사용할때
AB ab = new AB();
ab.ABSF();
이런식으로 인스턴스화를 시키지 않아도
AB.ABSF();
입력으로 불러올 수 있다.
그리고 static 메서드를 일반 class에서 선언을 할 수 있지만 일반 메서드는 static class에서 선언이 불가능하다.
개인과제를 마무리하며..
과제를 하면서 너무 메서드로만 구현을 해서 뭔가 답답한 느낌이 있었는데 해설영상에서 class로 나누어서 사용하는 것을 보고 뭔가 개안한 느낌? 그리고 내 자신에 대해 좀 돌아보는 계기였다. 좀더 찾아보고 과제를 해야겠다 라는 생각도 들고 구현을 하기 전 기능별 설계도 중요하게 생각하는 계기가 되었다. 각각의 공통점들을 잘 찾고 그것을 코드화 시키는게 중요하다고 생각했고 이번 개인과제에서는 캡슐화 이 부분이 많이 부족했던 것 같다. 캡슐화 시키지 못하고 거의 서로 연결되어있듯이 작동을하고 있어서 그 부분에 대해서는 스스로도 아쉽다. 좀더 노력이 부족했던 것 같다. 다음에는 부족하다고 생각하는 부분들과 모르는게 있다면 더욱 적극적으로 튜터님들에게 질문을 하고 내 스스로 더 좋은 방향으로 나아가야겠다는 생각이 든다.