TIL_231114

Z_제트·2023년 11월 14일
0

TODAY I LEARNED

목록 보기
12/88

to do_오늘 할 일

  • C# 프로그래밍 기초 공부(C# 문법 복습 w/ 골드메탈)
  • 어제 적어둔 추가 공부 리스트
  • 개인 과제 피드백 체크

retro_오늘 한 일(회고)

[STUDY] C# 기초 문법 복습

  • 프로그래밍은 보통 선언 > 초기화 > 호출(사용) 로 흘러간다.

#변수

  • 변수의 타입은 크게 int, float, string bool 사용.

#그룹형 변수 - 배열(Array), 리스트(List)

  • 배열 : 가장 기본적인 고정형 그룹형 변수
    e.g.
string[] monsters = {"슬라임", "사막뱀", "악마"};
int[] monsterLevel = new int[3];
monsterLevel[0] = 1,
monsterLevel[1] = 6;
monsterLevel[2] = 10;
  • 리스트 : 기능이 추가된 가변형 그룹형 변수
    e.g.
List<데이터타입> items = new List<데이터타입>();
items.Add("생명물약50");
items.Add("마나물약30");

items.RemoveAt(index);

* 실생활에서 숫자 카운트 할 때에는 보통 1 부터 시작하지만, 프로그래밍 세상에서는 0 부터 시작 !
* 배열 & 리스트 출력 시 [] 대괄호 안에 인덱스 번호 쓰고 출력 !
* 제네릭 ?
제너릭은 클래스나 메서드를 일반화시켜 다양한 자료형에 대응할 수 있는 기능.
(아직은 나에게 어려운 존재.. 추가 공부 필요 !)

#연산자 : 상수, 변수값을 연산해주는 기호
(연산 : 식이 나타낸 일정한 규칙에 따라 계산함.)

+, -, *, /, %,
==, >, >=, <, <=,
&&, ||,
삼항연산자
(bool값) ? A : B
true 일 때 A, false 일 때 B 출력 !

#키워드

  • 프로그래밍 언어를 구성하는 특별한 의미가 담긴 단어
    e.g.
    int, float, string, bool, new, List

  • 변수 이름으로 사용x, 값으로도 사용x.


#조건문 Conditional 조건에 만족하면 로직을 실행하는 제어문
  • if : 조건이 true일 때 로직 실행.
if (조건true)
{
    로직
}
  • else : 앞의 if 가 실행되지 않으면 실행.
    (else if 도 있음.)

  • switch case : 변수의 값에 따라 로직 실행.

switch(변수)
{
  case 값1:
    로직
    break;
  case 값2:
    로직
    break;
  case 값3:
    로직
    break;
  default :
    로직
    break;
}

* 꿀팁 : 같은 로직을 실행시키고 싶을 땐, 아래처럼 case 를 같이 묶어주면 된다 !
e.g.

case 값1: 
case 값2:
    로직
    break;

#반복문 Loop
조건에 만족하면 로직을 반복하는 제어문
  • while : 조건이 true 일 때, 로직 반복 실행.
while (조건true)
{
    로직
}

* break 로 반복 빠져나오기 가능 ~!

  • for : 변수를 연산하면서 로직 반복 실행.
for (연산될 변수 ; 조건 ; 연산)
{
    로직 
}

* for 문의 최대 강점은 그룹형 변수와의 조합 !
* 그룹형 변수 길이 : .Length(배열) .Count(리스트)

  • foreach : for 의 그룹형 변수 탐색 특화
    e.g.
foreach (string monster in monsters)
{
    로직
}

#함수 Function - 기능을 편리하게 사용하도록 구성된 영역
  • 함수 이름 앞에는 이 함수가 반환하는 타입 작성하기 !

  • void : 반환 데이터가 없는 함수 타입.

* 지역변수 : 함수 안에서 선언된 변수 (다른 함수에서 접근x)
* 전역변수(a.k.a. 멤버변수) : 함수 바깥에 선언된 변수

#클래스 Class

  • 하나의 사물(오브젝트)와 대응하는 로직

  • class 키워드 : 클래스 선언에 사용.

  • 인스턴스 : 정의된 클래스를 변수 초기화로 실체화

  • 접근제한자
    private : 외부 클래스에 비공개로 설정하는 접근자
    public : 외부 클래스에 공개로 설정하는 접근자

  • 상속

    • 자식클래스는 부모클래스에 있는 모든 멤버변수와 함수를 사용할 수 있으면서 동시에 자기 자신의 새로운 멤버변수 및 함수를 추가로 사용할 수 있다.

[STUDY] ToString 의 format 종류

몇 개 없는 줄 알았는데..

Integer/Double to formatted string,
Formatting DateTime using ToString,
Date Formatting, Currency Formatting, etc...

생각보다 종류가 너무 많다..!

너무 많아서 내가 사용해본 것들을 그때그때 정리해둬야겠다.

내가 써본 것 :

.ToString("00") 하게되면 숫자를 01, 04, .. 이런 식으로 표현 e.g. 레벨
.ToString("N2") 하게되면 소수점 둘째자리까지 표현 e.g. 타이머


C# Notes for Professionals book
공식사이트_표준 숫자 서식 문자열
공식사이트_개요: .NET에서 숫자, 날짜, 열거형 및 기타 형식의 서식을 지정하는 방법
참고사이트(블로그)_C# 글자 표기 문자 형식 string.Format / ToString
참고사이트_C# String Format Examples


[STUDY] Console.WriteLine 과 String.Format 차이

공식사이트 said

Console.WriteLine 은 String.Format 과 동일한 기능을 제공한다.
두 메서드가 유일하게 다른 점은
String.Format 은 결과를 문자열로 반환 하는 반면
Console.WriteLine 은 Console 개체와 연결된 출력 스트림에 결과를 쓴다는 것.

공식사이트


[STUDY] TryParse

TryParse 에서 out 을 이해하는 것이 꽤 어려워서
고군분투하다가
너무나도 깔끔하게 설명을 해주는 자료를 발견 !

TryParse 에 대한 설명을 정리하면 :
e.g.

string aNumberToConvert = "25";
string message;

int result;
bool isSuccess = int.TryParse(aNumberToConvert, out result);

if (isSuccess)
{
  message =  "yayy :-)";
}
else
{
  message = "oops... not valid";
}

Console.WriteLine(mesage);
Console.WriteLine(isSuccess);
Console.WriteLine(result);
  • TryParse 는 boolean 값을 반환한다.

  • TryParse 의 first argument 로 string 필요
    여기서 string 은 int 로 바꾸고 싶은 string 을 말하는 것 !

  • 그 다음 argument 로는 out int value 필요
    **중요 포인트 : value 에 대해서 적어도 선언은 해야 한다.(예시로 작성한 코드에서는 result 를 의미)

  • "out" said :
    안녕 TryParse, 난 너한테 비어있는 변수를 보내줄건데 거기에 변환한 값을 넣어줘. 너가 변환한 string 값은 result 안으로 들어갈거야.
    Hey TryParse, I'm sending you an empty variable that I want you to put the converted value. So whatever you convert string it goes into result.

  • 변환 실패하면 result 값에 "0" 이 들어온다.
    변환 성공하면 result 값에 변환된 값(숫자)이 들어온다.

    위 과정이 끝나면, true 또는 false 값을 반환하며 그 과정이 성공적으로 끝났는지 아닌지를 알려준다.

  • 예시 코드의 흐름을 설명하자면
    TryParse 는 string 값 "25" 를 받고, 으쌰으쌰해서 result 안에 int 로 변환한 25 값을 넣는다. 이 변환 과정을 성공했기 때문에 true 를 반환한다.


    커스틴 언니 최고 !
    TryParse 내것으로 만들기 성공 !
    참고사이트_유튜브


[STUDY] Visual Studio 에서 commit changes and push

Visual Studio 상단 메뉴에서
Git 클릭커밋 또는 스태시 클릭사이드에 Git 변경 내용 창 생성됨commit message 입력모두 커밋 버튼 클릭창에 로컬에 생성했다는 문구가 뜨면push 버튼 클릭


참고사이트_유튜브


추가 공부할 것s

  • Optional Parameter 선택적 파라미터
  • Git commit message 규칙

내일부터 알고리즘 코드카타가 시작되는데

(나의 제일 부족한 부분으로 여겨지는)
조건문과 반복문에 더욱 익숙해지기 위해 ~ 친해지기 위해 ~
꾸준히 알고리즘을 접하고 공부해야겠다 !

우리 사이 친해지길 바라 ~🎵🎶

profile
trying to make the world a better place with a cool head and warm heart

0개의 댓글