프로그램 개발에서 코드를 하드 코딩 한다는 말이 뭔지 궁금합니다.

프로그램 개발에서 코드를 하드 코딩 한다는 말이 뭔지 궁금합니다. 회의를 하는데 하드 코딩 되어 있어서 동일한 코드를 적용하지 못한다고 하는데 그게 뭔가 싶어서요.

5개의 답변이 있어요!

  • 안녕하세요. 서종현 전문가입니다.

    프로그램 개발에서 하드코딩이란, 특정 값이나 데이터를 소스 코드 안에 직접 고정해서 쓰는 방식을 말합니다. 예를 들어, 변경될 가능성이 있는 값을 코드에 고정해 넣으면 그 값을 바꾸려면 코드를 직접 수정해야 해 유지보수나 재사용이 어렵습니다. 회의에서 하드 코딩되어 있어서 동일한 코드를 적용 못한다는 뜻은 코드 내에 값이나 로직이 딱 고정돼 있어 다른 상황이나 환경에 맞게 쉽게 바꾸거나 확장하기 어렵다는 의미입니다. 이를 피하려면 변수, 설정 파일, 데이터베이스 등을 활용해 코드를 유연하게 만드는 소프트 코딩 방식을 권장합니다. 이런 구조가 되면 재사용성과 관리가 훨씬 편해집니다.

    채택 보상으로 249베리 받았어요.

    채택된 답변
  • 안녕하세요. 감병주 전문가입니다.

    하드 코딩은 프로그램에서 변할 수 있는 값(주소, 경로, 설정 등)을 코드 안에 직접 고정해서 넣는 것을 의미합니다.
    이렇게 하면 특정 환경에 맞춰져 있어 다른 환경에서는 그대로 사용하기 어려워져서 코드 재사용성이 떨어지고 유지보수가 불편해집니다.
    회의에서 말한 것은 이런 이유로 동일한 코드를 다른 곳에 적용하기 어렵다는 뜻이고 보통은 설정 파일이나 환경 변수로 값을 분리해 해결합니다.

  • 안녕하세요. 고한석 전문가입니다.

    하드코딩이란 프로그램에서 변해야 할 값(서버 주소, 가격, 설정 등)을 변수나 설정 파일로 빼지 않고 코드 안에 직접 숫자나 문자로 고정 박아버리는 것입니다. 예를 들어 할인율을 discount = 0.1로 코드에 직접 써버리면, 나중에 할인율이 바뀔 때 코드를 찾아서 일일이 수정해야 하고 다른 환경에 그대로 적용하기도 어렵습니다. 회의에서 나온 말은 아마 특정 값이 코드에 고정되어 있어서 다른 조건이나 환경에 유연하게 대응하지 못한다는 뜻일 겁니다. 반대 개념은 소프트코딩으로, 값을 설정 파일·DB·환경변수로 분리해두면 코드 수정 없이도 값만 바꿔 여러 상황에 재사용할 수 있습니다.

  • 안녕하세요. 조일현 전문가입니다.

    하드 코딩은 주어진 값을 지키면서 쓰는 것을 말합니다.

    따라서 특정 조건에 묶여 있다보니 다른 곳에 쓸 수 없다는 것으로 볼 수 있으며,

    이를 활용하기 위해서는 특정 조건 값을 푸는 것을 말합니다.

    이는 보통 특정 상황에 맞게 끔 사용된 것이라서 다른 곳에서 사용하기에는 어렵다는 것이지요

  • 하드 코딩은 값을 외부에서 바꿀 수 있게 하지 않고, 코드 안에 직접적으로 고정값을 박아 넣는 그런 코딩을 말합니다.

    주소나 비밀번호, 파일 경로 등 코드에 그대로 써버릴 경우 상황이 바뀔때마다 코드를 수정해야 되는 문제가 있습니다. 그래서 다른 환경이나 시스템에 적용할 때 유연성이 떨어지고, 재사용이 어려워지는문제가 있습니다.

    아마 회의에서 말씀하신 내용은 값이 코드에 묶여 있기 때문에 동일한 로직을 다른 곳에 그대로 쓰기 어렵다는 의미가 아닐까 추측됩니다.