본문 바로가기

개발자_뉴비일지

내일배움캠프 Unity 14일차 TIL - 생각하는 사람

string keyword="생각하는 사람";

오늘부터 9시-10시까지는 알고리즘 문제를 푸는 시간이다.

그 후 4시까지는 개인학습 후 팀프로젝트 작업!

 

1. 알고리즘 코드 카타

 

<나의 솔루션>

굉장히 간단해 보이지만, 저 코드에 도달하기까지 고민과 실패의 시간이 있었다ㅠㅠ

if문의 조건을 간단히 만들어 보고 싶었는데

-50000<=num1<=50000이 안돼서 길어졌다. 어케하누..

 

2. 오버로딩

저번에도 배웠지만 다시 리마인드 차원에서 복습하던 중 한가지 응용법을 알게 되었다.

ex) 데미지 타입이 물리/불/물 등이 있을 때

public void Damage(int _Damage, int _Type)
{

}
public void Damage(int _Damage)
{

}
public void Damage(float _Damage)
{
 
}

>>Damage라는 같은 이름의 함수가 있지만 다 잘 동작을 한다.

이유는 괄호 안의 인자가 다 다르기 때문!

이것을 활용해서 여러가지 데미지 함수를 활용할 수 있다.

 

3. TeamProject

 

>>기본적인 상태창을 보여줄 class를 완성했다.

추후 아이템 착용으로 인한 스텟변동, HP변동 등을 어떻게 구현할 것인지 고민해봐야겠다.

>>Console.ReadKey를 활용한 메뉴선택창.

상태보기창에 선택할 수 있는 번호는 0번밖에 없지만 나중에 메뉴가 추가될 것을 생각해서 switch로 나누어 주었다.

그리고 while문을 통해 0이외의 키를 누르면 다시선택해달라는 메뉴가 반복해서 뜬다.

이걸 if문을 써서 0일땐 XX, 0이 아니면 YY 이렇게 작동하도록 구분해줄 필요가 없다! 갓 ReadKey!!

0을 눌렀을때 시작메뉴로 가게 하려면 return해줘야 하는데, 함수를 void로 만들어서 메소드같은 걸론 return이 안된다ㅠㅠ

어떻게 해결해야 할 지도 내일부터 고민해봐야겠다.

 

마무리

완성(?)된 코드를 보면 간단하지만 무려 3시간 동안의  수많은 고민과 시행착오가...또르르

그래서 매우 피곤하다.

내일도 개인학습으로 개념을 계속 잡아가면서 팀과제도 열심히 고민해봐야겠다!

코딩하는 시간의 90%는 고뇌하는 시간이 아닐까..?

그 유명한 '생각하는 사람'의 형상화된 모습이 바로 나였구나.

 

.

.

.

with 요비