본문 바로가기

Unity/정보

[Unity 유니티] 소프트코딩(Soft Coding)이란?

소프트코딩이란 무엇인가?

소프트코딩(Softcoding)은 소스코드에 하드코딩된 값을 제거하고, 외부 파일, 데이터베이스 또는 설정 파일을 통해 값을 관리하는 방법이다. 이를 통해 유연성과 유지보수성을 높일 수 있다. 간단히 말해, 코드를 수정하지 않고도 동작을 변경할 수 있도록 만드는 것이다.

쉽게 말해, 코드에 직접 값을 넣기보다 변수나 상수를 이용해 유지보수를 쉽게 하는 것이다.

소프트코딩의 주요 장점

  1. 유연성
    • 프로그램 실행 중에도 외부 데이터를 통해 동작을 변경할 수 있어 다양한 상황에 적응하기 쉽다.
  2. 확장성
    • 새로운 요구사항이 생겼을 때 코드 수정 없이 설정만 추가하거나 수정하여 기능을 확장할 수 있다.
  3. 재사용성
    • 특정 로직을 소프트코딩으로 구현하면 다양한 프로젝트나 상황에서 재사용하기 용이하다.
// 하드코딩
int dmgLevel;
int hpLevel;

if (dmgLevel == 5000)
	Debug.Log("공격력 만렙입니다");
    
if (hpLevel == 5000)
	Debug.Log("체력 만렙입니다");
    
// 소프트코딩
int dmgLevel;
int hpLevel;
const int maxLevel = 5000; // 이 부분만 수정하면 쉬운 유지보수 가능

if (dmgLevel == maxLevel)
	Debug.Log("공격력 만렙입니다");
    
if (hpLevel == maxLevel)
	Debug.Log("체력 만렙입니다");

간단한 예시로, 코드의 길이가 길수록 더욱 효율적으로 코드를 관리할 수 있다.

이처럼 소프트코딩은 하드코딩에 반대되는 개념으로 유연하고 유지 보수하기 쉬운 시스템을 만드는 데 유용하다.

하드코딩을 지양해야 되는 이유 ☞ https://bo-ni.tistory.com/16