3주차 과제 코드 복습
과제에는 내가 직접 작성하지 않고 구글링이나 ChatGPT에게 물어보며 만든 코드도 있고 강의자료의 참고 코드도 있어서 다시 한번 코드를 읽어보고 더 자세하게 보며 내 코드로 만들 시간이 필요하다고 생각하여 복습을 진행하였다
그 중 헷갈리거나 새로 알게되엇던 부분에 대해서 메모를 해보면
List
Remove(value) : 제거할 값을 인자로 받아 찾고 제거, 값이 여러개가 들어있다면 첫번째로 발견된 요소만 제거
RemoveAt(index) : 제거할 인덱스를 인자로 받아 찾고 제거
Console
Console.CursorTop : 콘솔창의 현재 커서 위치의 세로(행) 좌표를 나타냄 0부터 순차적으로 증가
ex) 현재 3번째 행에 있다면 값은 2가 된다
Console.WindowWidth : 콘솔창의 가로(열) 크기를 나타낸다, 이 값은 콘솔 창의 한 행의 최대 문자수를 나열
( 위 두개의 Console 명령어를 사용하여 화면에 글씨를 나타냈다가 지웠다)
스네이크 게임의 흐름
좌표를 표현하는 Position 클래스를 구현하여 Snake, FoodCreator 에 가지고 있다 라는 뜻으로 has-a (A는 B를 가지고 있다)를 이용하여 구현하였다
* 강의 자료에서는 A가 B다 라는 is-a를 사용하였다
게임 로직
요새 내 최근 게시물들을 살펴보면 어떻게 게임 로직을 짜야할지 모르겠다, 구상을 하고 코드를 짜려고 보면 그냥 막막하다 , 뒤죽박죽이다 라는 말들을 많이 해왔고 조금씩 나아가는 해결방법을 튜터님에게 조언을 듣기도 하였다
그 중 유니티 강의자료를 보면 게임 만드는 순서도 나와있으니 참고하면 좋다고 하셨었는데 그것을 보고 분석하여 어떤 순서로 이어지는가에 대해 분석을 해보았다
1. 기본 세팅 (게임을 구성하는 거 만들기)
ex) 메인 화면, player 등
2. 기본적으로 있어야 하는 기능 구현
ex) 이동, 선택 등 기본 요소
3. 게임 추가 기능 구현
ex) 로직에 맞게 기본 요소들로 무언가 했을 때 일어나는 기능들
4. 게임 종료
ex) 레벨업, 승패 판별
게임의 흐름대로 없으면 안되는 당연한 것들 부터 차근차근 구현을 했었다
이 분석대로 블랙잭 게임을 만들어 본다면 ?
1. 기본 세팅
-> 게임 화면 구성, 딜러, 플레이어, 카드, 덱 만들기
2. 기본적으로 있어야 하는 기능 구현
-> 카드 섞기, 카드 뽑을지 안 뽑을지 ,카드 출력하기
3. 게임 추가 기능 구현
-> 카드를 뽑았다면 ? , 카드를 뽑지 않았다면 ? ,점수 계산하기
4. 게임 종료
-> 누가 이겼는지 승패 판별하기
이렇게 될 것 같다 내가 분석한 틀 바탕으로 게임을 만들어보며 나만의 구조, 형식을 만들어 보는 경험을 쌓아나가면 될 것 같다
학습법 특강
들으면서 가장 유익했던 부분들을 정리해보았다
- 기술적 고민을 잘하려면
로직과 코드에 대한 의도 생각하기
구현하는 기술, 스택에 목적과 근거 가지기
더 좋은 방법이 있는지 고민하기
왜 이 부분이 좋았냐면 평소에 내가 그냥 무시하고 지나갈 때가 대부분이다
내가 보통 코딩을 할 때 어떻게 작동을 하는지에 대해서만 생각을 했지 왜? 라는 생각을 해본적은 거의 없다
왜냐하면 내가 알고 있는 지식은 한정적이기 때문에 보통 어떤 구현을 하기 위해서는 여러가지 방법을 떠올리지 못하고 한가지 방법만 떠오르기 때문이다
그래서 이 부분을 돌파? 하기 위해 더 좋은 방법은 없는지 다른 방법은 없는지 다른 사람의 코드를 보거나 구글링 등을 비교하여 왜 이런 방법을 사용했고 어떤 방법이 더 유용한지 분석하면 생각이 들었다 그럼 나도 언젠가는 지식이 늘어 여러가지 방법을 떠올릴 수 있을것이다
또 요새 내 블로그 글에서는 구글링이나 ChatGPT에 대한 이야기들을 찾아볼 수 있다
이 부분에 대해서도 언급을 하셨는데
"ChatGPT로 나를 대체하지 말고 활용을 해라", "기술적인 고민을 ChatGPT가 하게 하지 마라"
라고 하셨다
다행히 나는 활용을 하고 있다고 생각한다 아직 고민은 내가 하고 모르는 개념들이나 코드들에 대해서 질문하기 바쁘니까 ...
'TIL' 카테고리의 다른 글
[TIL] 내일배움캠프_Unity 개인과제, 문자열 포맷, 정렬, 입력 경고 메세지 (0) | 2023.08.21 |
---|---|
[TIL] 내일배움캠프 _Unity static, 코딩 팁, 컴퓨터구조&운영체제, 코드컨벤션 특강, 코드리뷰 (0) | 2023.08.18 |
[TIL] 내일배움캠프_Unity C# 문법 종합반 3주차, 고민해결 (0) | 2023.08.16 |
[TIL] 내일배움캠프_Unity C# 문법 종합반 2주차 복습, 3주차 완강 (0) | 2023.08.15 |
[TIL] 내일배움캠프_Unity 6일차 C#문법 종합반 1,2주차 ,GitHubDesktop (0) | 2023.08.14 |