VS Code에서 한글 주석이 깨졌을 때 복구 방법
·
개발툴/Visual Studio Code
Rider 무료 사용 기간이 끝나서 VSCode로 넘어갔는데, 작성한 한글 주석이 모두 깨져 있었다. 이런 문제는 보통 인코딩 설정 때문에 발생하는데, 해당 설정만 바꿔주면 해결된다.[원인]인코딩이란?인코딩은 간단히 말해, 텍스트 데이터를 컴퓨터가 이해할 수 있도록 변환하는 방법이다. 컴퓨터는 텍스트 자체를 직접적으로 처리할 수 없기 때문에, 각 문자를 숫자 코드로 변환해 저장한다. 이때 사용하는 규칙이 바로 문자 인코딩이다.대표적인 인코딩 방식으로는 UTF-8, EUC-KR, Shift-JIS 등이 있다. 예를 들어, 'A'라는 문자는 UTF-8에서는 65로, EUC-KR에서는 0xC1로 인코딩된다. 각각의 인코딩 방식은 다르게 문자를 표현하는 방식이기 때문에, 같은 문자가 다른 방식으로 저장될 수 있..
UniRx 실습 - 간단한 식물 재배 로직 만들어보기
·
개발툴/Unity
작물 성장Observable.Interval(TimeSpan.FromSeconds(timeBetweenStages)) .Take(growthStages.Length - 1) .Subscribe(_ => { Debug.Log("농작물이 성장 함"); currentStage++; spriteRenderer.sprite = growthStages[currentStage]; if (currentStage == growthStages.Length - 1) { isHarvestable = true; } }) .AddTo(this); 지정된 시간 간격(timeBetweenStages)마다 농작물이..
읽기 좋은 코드 작성법
·
카테고리 없음
기본 원칙순환 복잡도는 7을 넘지 않도록 한다foreach, while, do, switch 블록의 case마다 복잡도를 1씩 증가시킴함수는 24줄 이하로 작성한다가로 80자, 세로 24줄 (80/24 법칙)코드 조각 하나에서 7가지 이상의 작업이 일어나지 않도록 한다순환 복잡도를 사용하여 관리리팩토링클래스 필드를 사용하지 않는 메서드 ?클래스 필드를 사용하지 않는 코드는 의심스러움. 이런 코드는 클래스의 인스턴스 상태와 관련된 작업을 수행하지 않기 때문에, 해당 블럭이 클래스의 메서드로 존재할 필요가 없음문제점클래스 설계의 부적절함클래스는 상태와 행위를 캡슐화하는 것이 목적. 메서드가 클래스 필드를 전혀 사용하지 않는다면, 그 메서드는 클래스의 인스턴스 상태와 무관하게 작동할 가능성이 높음이 메서드는 ..
컴파일 타임 상수와 런타임 상수: 어떤 것을 사용해야 할까?
·
프로그래밍 언어/C#
프로그래밍에서 상수를 다룰 때, 컴파일 타임 상수와 런타임 상수의 선택은 중요하다. 각각의 특징과 사용 사례를 알고 적절히 활용하는 것이 필요하다. 컴파일 타임 상수 const를 사용하여 정의됨 약간 더 빠르고, 성능이 매우 중요하고 값이 변하지 않는 경우에 적합 메서드 내부에서 선언 가능 컴파일 타임에 변수가 값으로 대체됨 내장 자료형에만 사용됨 정적 상수이므로 모든 인스턴스가 동일한 값을 갖음 class Character { private const int MoveSpeed = 5; // 캐릭터의 이동 속도를 상수로 정의 public void MoveForward() { // 캐릭터를 앞으로 이동시킴 // 이동 속도는 MoveSpeed를 사용하여 설정됨 } } 런타임 상수 readonly로 선언됨 유..
C#에서 var를 사용하는 이유와 주의사항
·
프로그래밍 언어/C#
코드 가독성과 유연성을 높이는 var의 활용 방법 C#에서 var는 지역 변수를 선언할 때 사용되며, 명시적인 타입 대신 컴파일러가 자동으로 타입을 추론합니다. var를 사용하는 이유와 함께 주의해야 할 점을 살펴보겠습니다. 1. 가독성 향상 // 명시적인 타입 선언 Dictionary wordCounts = new Dictionary(); // var를 사용한 경우 var wordCounts = new Dictionary(); - 위의 예시에서 볼 수 있듯이 var를 사용하면 코드가 더 간결해지고 가독성이 향상됩니다. - 변수의 이름이 명확하다면 var를 사용하여 코드를 작성하는 것이 좋습니다. 2. 타입 추론의 편리함 // 명시적인 타입 선언 List numbers = GetNumbers(); // ..