전체 글 114

[C# 개인과제] TextRPG

https://github.com/phw97123/LegendofSparta.git GitHub - phw97123/LegendofSparta: TextRPG TextRPG. Contribute to phw97123/LegendofSparta development by creating an account on GitHub. github.com 개발 과정 처음 개인 과제를 받고 시작하기에 앞서 이전에 어떻게 시작하면 좋을지 분석한 내용을 바탕으로 진행하였다 1. 기본 세팅 - 필수구현의 메인 메뉴 화면, 상태창 화면, 인벤토리 화면을 구상하여 디자인 해보기 - 필수로 있어야 하는 Player, GameManger(게임 메인 메뉴 화면 관련), Item 등 더 깊게 생각해보면 나는 나중에 몬스터도 만들 생각..

개발일지 2023.08.23

[TIL] 내일배움캠프_Unity 개인과제 버그

개인과제 버그 오늘은 딱히 새로 배운 개념은 없는 것 같다 그래도 오늘 버그를 해결한 내용에 대해서 작성해보려 한다 Console.SetWindowSize() 를 이용해서 콘솔창의 크기를 변경하려고 시도를 계속 했는데 절대 바뀌는 일이 없었다 구글링을 해도 보이지 않아서 튜터님한테 물어봐야겠다 라고 생각했었는데 그 전에 딱 한번만 더 찾아보자 라는 생각으로 다시 찾기 시작했다 영어로 된 페이지에서 번역을 해가며 찾던 도중 윈도우11 을 사용하면 그렇다는 내용이 있어 그쪽으로 검색을 다시 하니까 방법을 찾았다 ! 컴퓨터의 설정 -> 개인 정보 보호 및 보안-> 개발자용 -> 터미널에서 콘솔을 기본 터미널로 설정하면 된다 그리고 역슬래시( \ ) 가 원화 표시로 나오는 경우였는데 이스케이프 시퀀스로 인식을 ..

TIL 2023.08.22

[TIL] 내일배움캠프_Unity 개인과제, 문자열 포맷, 정렬, 입력 경고 메세지

개인과제로 TextRPG를 만들게 되었다 예전에 c++로 만든적이 있는데 확실히 문법에 대해 익숙해지는 경험이었는데 C#도 그럴 기회가 생겼다! 그래서 나는 요새 개인과제에 푹 빠져있다 오늘 배운것들도 다 개인과제 하면서 배웠다 문자열 포맷 인벤토리를 서식에 맞춰서 출력하기 위해 찾아보다가 시도해본 방법이 Console.WriteLine("{0},-10}", name); name을 10개의 문자가 들어갈 공간을 만들어주고 채워넣는다, 부호는 왼쪽/오른쪽 맞춤에 사용된다 PadLeft("문자를 붙인 후 문자열 전체 길이 수 ", 문자열에 붙이고 싶은 문자); PadRight("문자를 붙인 후 문자열 전체 길이 수", 문자열에 붙이고 싶은 문자); 문자열에 붙이고 싶은 문자를 띄어쓰기로 넣어주면 위와 같이 ..

TIL 2023.08.21

[TIL] 내일배움캠프 _Unity static, 코딩 팁, 컴퓨터구조&운영체제, 코드컨벤션 특강, 코드리뷰

static 팀원분께서 잘 모르시는 부분에 대해 튜터님에게 질문하고 오셔서 배운 정보를 가르쳐 주셨는데 설명하시다가 조금 헷갈리는 부분이 있어서 팀원들 다같이 튜터님에게 방문을 하여 설명을 듣는 시간을 가지게 되었다 문제는 main함수에서 선언된 변수는 다른 함수에서 사용할 수 없었고 main에서는 그 함수를 사용하지 못하였는데 이유는 c#은 main 함수가 staic이라서 다른 함수도 staic을 맞춰줘야 한다는 것이었다 static은 스태틱 영역에 하나만 존재하기 때문 그러나 static을 많이 사용하는 것은 메모리를 너무 잡아먹기 때문에 클래스를 만들어서 사용하는게 더 좋다 또한 static 필드는 프로그램 실행 후 처음으로 사용될 때 한번 초기화 되어 계속 동일한 메모리를 사용한다 추가로 더 궁금..

TIL 2023.08.18

[컴퓨터구조 + 운영체제] 3일차 명령어

저급언어 기계어: 0과1로 이루어진 명령어로 구성된 저급 언어 어셈블리어: 0과 1로 이루어진 기계어를 읽기 편한 형태로 번역한 저급언어 고급언어 컴파일 언어; 컴파일 언어로 작성된 소스코드는 컴파일러에 의해 저급언어로 변환되고(이 과정을 컴파일) 컴파일 결과로 저급 언어인 목적코드가 생성됨 인터프리트 언어: 인터프리터에 의해 한줄씩 실행되고 소스 코드 전체가 저급언어로 변환되기까지 기다릴 필요가 있다 *컴파일은 전체적으로 살펴보고 통째로 저급언어로 변환 명령어의 구조 수행할 연산 + 연산에 사용될 데이터 혹은 연산에 사용될 데이터가 저장된 위치 (연산 코드 + 오퍼랜드) -연산코드 1. 데이터 전송 2.산술/논리연산 3.제어흐름변경 4.입출력 제어 (데이터 전송 명령어들을 보면 github에서 자주 쓰..

[TIL] 내일배움캠프_Unity C# 문법 종합반 3주차 과제 복습, 게임 로직 관련, 학습법 특강(feat.ChatGPT)

3주차 과제 코드 복습 과제에는 내가 직접 작성하지 않고 구글링이나 ChatGPT에게 물어보며 만든 코드도 있고 강의자료의 참고 코드도 있어서 다시 한번 코드를 읽어보고 더 자세하게 보며 내 코드로 만들 시간이 필요하다고 생각하여 복습을 진행하였다 그 중 헷갈리거나 새로 알게되엇던 부분에 대해서 메모를 해보면 List Remove(value) : 제거할 값을 인자로 받아 찾고 제거, 값이 여러개가 들어있다면 첫번째로 발견된 요소만 제거 RemoveAt(index) : 제거할 인덱스를 인자로 받아 찾고 제거 Console Console.CursorTop : 콘솔창의 현재 커서 위치의 세로(행) 좌표를 나타냄 0부터 순차적으로 증가 ex) 현재 3번째 행에 있다면 값은 2가 된다 Console.WindowW..

TIL 2023.08.17

[C# 문법 종합반] 3주차 과제 - 스네이크 게임, 블랙잭

스네이크 게임 코드 더보기 SnakeGame.cs namespace TimspartaBasic { internal class SnakeGame { public class Position // x,y 좌표를 표현하는 클래스 { public int X { get; set; } public int Y { get; set; } public Position(int x, int y) { X = x; Y = y; } } public class Snake { List body; public Position direction { get; set; } public Snake(int x, int y) { body = new List { new Position(x, y), new Position(x-1,y), new Posi..

개발일지 2023.08.17

[TIL] 내일배움캠프_Unity C# 문법 종합반 3주차, 고민해결

오늘은 어제 들었던 3주차 강의를 복습하고 과제 2개를 완료하는 것을 목표로 진행하였다 원래 계획대로라면 개발일지까지 써야하지만 생각보다 과제가 어려워서 늦게 끝나서 내일로 미뤄졌다 오늘 하루종일 과제에 집중하다보니 적을 내용이 없어 고민 했던 내용과 해결 내용에 대해서 적었다 (이 내용 또한 잊지 말아야 하기 때문에) 과제를 하면서 제일 어려웠던 점은 게임 로직을 구성하는 것이었다 부분적인 기능들은 머리속에 그려지는데 전체적인 틀을 잡고 어떤 순서로 구현하면 좋을지에 대해 생각하는게 어려웠다 그러다보니 과제를 보면 막막하기만 할 뿐 손이 가지 않고 생각이 뒤죽박죽 섞인다 또 기능 구현을 하다가 모르겠는 기능들은 chatGPT나 구글링을 하는데 내 머리속에서 온전히 나온 코드가 아니다보니 죄책감이 온다 ..

TIL 2023.08.16

[TIL] 내일배움캠프_Unity C# 문법 종합반 2주차 복습, 3주차 완강

캠프가 쉬는 날이지만 하루 패턴이 깨지지 않게 일어나는 시간, 공부를 시작하는 시간, 밥 먹는 시간을 맞춰서 생활하였다 자는 시간도 맞춰서 할 예정! (그렇기 때문에 평소보다는 공부한 내용이 많지는 않지만 TIL도 작성하는것!) 2주차 복습 관련 개념들을 한번 읽어보았다 딱히 어렵거나 이해가 안 가는 개념은 없었지만 중요한 개념 하나만 적자면 오버로딩은 동일한 이름의 메서드를 매개변수의 개수, 타입, 순서에 따라 다르게 호출 해준다 그리고 과제에서 꽤 생각이 필요했던 부분들과 구글링의 힘을 빌렸던 부분들을 다시 살펴보고 내 코드가 되기 위해 다시 구현해보았다 - 소수 구하기에서 입력 받은 숫자가 홀수라면 그 숫자의 제곱근 까지 검사하여 약수가 있다면 소수가 아니다 라는 알고리즘을 사용했는데 이 부분은 생..

TIL 2023.08.15

[C#문법종합반] 2주차 과제 - 틱택토 (feat.Console명령어)

//2-6 틱택토 static void DrawBoard() //보드판 그림 { Console.WriteLine($" | | "); Console.WriteLine($" {boardNum[0]} | {boardNum[1]} | {boardNum[2]} "); Console.WriteLine($" | | "); Console.WriteLine($"-----+-----+-----"); Console.WriteLine($" | | "); Console.WriteLine($" {boardNum[3]} | {boardNum[4]} | {boardNum[5]} "); Console.WriteLine($" | | "); Console.WriteLine($"-----+-----+-----"); Console.Write..

개발일지 2023.08.15