본문 바로가기

C#

(36)
구조체 [구조체]struct 키워드를 사용하여 여러 개의 데이터를 묶어서 하나의 사용자 정의 형식으로 만들기 위한 방법구조체는 변수를 선언하여 사용할 수 있음구조체의 멤버에는 접근할 때 . 연산자를 사용 함스태틱에 넣어야 하므로 자료형 앞에 퍼블릭을 넣어야 오류가 발생하지 않는다
메서드 [ 메서드 ] 일련의 코드 블록으로 메서드를 활용해서 코드를 줄일 수 있음메소드와 함수는 유사한 개념이지만, 프로그래밍 언어의 패러다임에 따라 약간의 차이가 있음객체 지향 프로그래밍에서는 주로 메소드를 사용절차 지향 프로그래밍이나 함수형 프로그래밍에서는 함수를 사용 하지만 이 둘을 동일하게 취급할 수도 있음 [ 메서드 구조 ] 접근제한자   메서드에 접근할수 있는 범위를 지정리턴타입   메서드가 반환하는 값의 타입을 고려해야만 한다. 반환 값이 없을 경우 void를 사용메서드명   호출하기 위해 사용하는 이름파라미터    매개변수는 메서드 선언부에 지정되며 메서드가 호출될 때 전달되는 값을 받아들이기 위한 역할 이를 통해 메서드는 호출될 때마다 다양한 입력 값을 받아들이고, 해당 값들을 기반으로 작업을 ..
우주의나라 우주의나라 넥슨사 바람의나라의 데이터를 응용하여 간단한 프로그램 작업을 진행해 보았다구현한 시스템은 로그인, 상태창 확인, 인상점 및 NPC 구현, 인벤토리 및 장착 시 옵션 반영 등등이 있다. [ 작업을 진행하면서 어려웠던 점 및 해결 과정 ]ⓐ 로그인 시스템일단 로그인 시스템을 만들 때 전반적인 베이스로 반복문을 사용해야 겠다고 느꼈다.그 이유는 아이디 혹은 비밀번호가 일치하지 않으면 다시 접속하도록 유도해야 했기 때문이다.그래서 채택한 문법이 While문이었고 이 것은 조건식에 부합할 때 까지 무한루프로 돌릴  수 있기 때문이다. while의 조건식으로 플레이어가 입력한 아이디값 = 패스워드값 을 설정하고 진행해보려 했지만 생각해보니 아이디와 비밀번호를 입력하라..
배열과 컬렉션 [ 배열 ]동일한 자료형의 값들이 연속적으로 저장되는 자료 구조 구버전 메이플스토리 캐릭터 생성 시 랜덤 주사위 시스템을 생각하고 로직을 작성해 보자( 단, 스탯의 합산 값은 고려하지 않는다 )주사위 스탯최솟값 = 4       최댓값 = 13  다차원 배열주어진 코드에서 Console.WriteLine(array);를 사용하여 배열을 출력하려고 시도하였지만,이렇게 하면 배열의 주소가 출력되는 것이 기본 동작이다.배열을 원하는 형태로 출력하려면 배열의 각 요소를 개별적으로 접근하여 출력해야 한다.따라서, 배열의 각 요소를 개별적으로 출력하는 방법을 사용해야 한다. foreach조건식을 쓰지 않고 해당 배열을 처음부터 끝까지 반복할때 사용 [ 컬렉션 ]자료를 모아 놓은 데이터 구조 List 가변적인 크기를..
반복문 [ 반복문 ]일련의 명령문을 반복해서 실행하는 제어문 ① for 문 ② while 문 for  vs  While ③ do-while 문 ④ foreach 문 ⑤ 중첩 반복문 ⑥ break / continue [ 반복문 심화 과정 ]ex ) 랜덤 뽑기 시스템
조건문 [ 조건문 ]주어진 조건식의 결과에 따라 프로그램의 제어 흐름을 변경하는 제어문 ① if 문 / else if 문 / else 문바람의나라를 예로 들어 로직을 작성현철중검의 요구 스탯은 힘 40이다 ② 중첩 조건문하나의 조건문 안에 또 다른 조건문이 포함된 형태의 조건문사실 현철중검은 전사만 착용할 수 있음을 활용하여 로직을 작성 ③ switch 문식의 결과에 따라 다른 코드 블록을 실행하는 제어문 ④ 3항 연산자조건식의 결과에 따라 두 값을 선택하는 연산자 [ 조건문 심화 과정 ]ex ) 로그인 시스템 ex ) 랭크 시스템 [ 조건부 논리 연산자 ] && (And 연산자) 사실 현철중검은 전사만 착용할 수 있다.그러므로 전사이면서 힘 요구치를 만족시켜야만 착용할 수 있다는 이야기이다.교집합을 생각해보면..
연산자와 문자열 처리 [ 연산자 종류 ] [ 문자열 처리 기능 및 메서드 ]
변수와 자료형 새로 만든 프로젝트에 모든 내용을 지운다.그다음에 "Hi"; 와 2024; 를 입력해 보았다.우리가 입력한 숫자와 문자를 데이터 라고 표현하겠다. F5를 눌러 실행시킨 결과 빨간줄이 생겼다. 에러가 발생한 것을 확인할 수 있다.빨간줄이 나온 이유는 형식에 맞지않아서 발생한 문제라고 볼 수 있다.우리는 앞으로 이 것을 자주 보게 될 것이다.작성한 “Hi” 라는 문자는 코딩영역에서 혼자 살아남을 수 없는 친구이다.코딩영역에 데이터를 추가를 하면 지금처럼 에러가 발생한다.하지만 이전 코딩을 보면 Console.Write(); 안에서는 에러가 발생하지 않았다.이 부분이 바로 데이터가 안전하게 있을 수 있는 공간이다.하지만 Console.Write(); 의 본래 목적은 프로그램에 표시를 해주는 기능이다.그러므로 ..
프로그래밍 기본 요소 [ Hello World 구조 확인 ]using은 C#에서 기본적으로 제공하는 네임스페이스(System 네임스페이스)를 사용하기 위한 코드이며,Console 클래스를 사용하기 위해 필요함namespace는 코드를 구성하는 데 사용되며, 클래스 및 기타 네임스페이스의 컨테이너class 는 C# 클래스를 정의하는 키워드이며, 클래스 이름은 Program로 지정static void Main()은 C#의 진입점(entry point)Main 메서드는 프로그램이 시작할 때 자동으로 호출되는 메서드Main 메서드는 프로그램 실행에 필수적Console.WriteLine("Hello World");는 콘솔에 출력할 내용을 지정하는 코드WriteLine 메서드는 새 줄을 시작하고 출력할 문자열을 인자로 받음..
C# 소개 및 개발환경 설정 C#을 공부하고 훈련하기 위한 여러가지 프로그램들이 존재하지만 마이크로소프트에서 제공하는 Visual Studio 라는 프로그램을 사용했다.Visual Studio는 일종의 IDE 인데 이 IDE는 '통합 개발 환경' 을 의미한다.즉, 개발에 필요한 전반적인 기능들을 갖춰진 장소라고 생각할 수 있다.예를들면 코드의 생성/편집 뿐만 아니라 디버깅, 컴파일, 배포, 인텔리센스 등 다양한 작업을 하나의 프로그램에서 진행 할 수 있는 도구이다.지금 당장 코드,디버킹,컴파일 이와 같은 단어들은 모르겠지만 앞으로 공부하면서 알아갈 수 있을 것이다.비쥬얼 스튜디오 또한 다양한 버전이 존재하지만 무료로 제공하는 커뮤니티버전을 채택하였다.출처 : https://visualstudio.microsoft.com/ko/dow..
접근 제한자 내가 작업한 클래스의 변수 및 함수를 다른 클래스에서 접근하는 것을 설정할 수 있다.변수나 함수 앞에 public, private, protected, internal 중 한개를 선언하면 된다.이를 접근 제한자 라고 한다. 선언하는 위치는 변수 혹은 함수 앞에 선언한다. public클래스에서 public 로 선언된 변수는 외부 클래스에서 접근할 수 있다. private클래스에서 private 로 선언된 변수는 외부 클래스에서 접근할 수 없다.앞에 아무것도 선언하지 않았을 때 자동으로 private 로 간주한다. 함수의 접근 제한자함수도 변수와 위치 사용법 모두  동일
C# 네이밍 규칙 예제를 보면 변수와 함수를 만들때 대문자로 시작하는지 소문자로 시작하는지 차이를 둔 것을 볼 수 있습니다.코드에서 변수명 함수명을 작성할때는 여러가지 규칙이 있습니다.그 중 C#에서 보편적으로 활용되는 것에는 카멜 케이스, 파스칼 케이스 가 있습니다.코드에 이름을 만들때 특수문자가 되지 않습니다.따라서 공백이 필요한 경우가 있지만 공백을 포함한 이름을 만들 수 없습니다.  Microsoft 코딩 규칙 - 링크 .NET 설명서 C# 코딩 규칙 - C#C#에서 일반적으로 사용되는 코딩 규칙에 관해 알아봅니다. 코딩 규칙은 코드를 일관되게 표시하고 코드 복사, 변경 및 유지 관리를 용이하게 합니다. 이 문서에는 문서 리포지토리 코딩 지침도learn.microsoft.comPocu 코딩 규칙 - 링크 POCU ..