검수요청.png검수요청.png

"하드코딩"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
2번째 줄: 2번째 줄:
  
 
==개요==
 
==개요==
 +
상수나 변수에 들어가는 값을 소스코드에 직접 쓰는 방식을 말한다. 반대로, 소스코드에 직접 쓰지않고 데이터를 외부 파일로 빼서 따로 관리하는 것을 '로딩'이라고한다.
 +
  
 
==장점==
 
==장점==
 +
* 값을 바로 확인할 수 있다.
 +
* 별도의 로딩 절차가 없어 속도가 비교적 빠르다.
 +
* 데이터 수정 시 코드 수정이 불가피하면 재컴파일을 해야 하므로 굳이 로딩을 할 필요가 없다.<ref>roro, 〈[https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=guseod24&logNo=221459329316 (좋은 IT 용어) #하드코딩]〉, 《네이버》, 2019-02-06</ref>
 +
 +
==단점==
 +
* 코드가 바뀌었을 경우 자동으로 반영되지 않기 때문에 이후에 버그가 발생할 위기가 많다.
 +
* 만약 DB에 접속하여 자료를 조회하는 프로그램에 비밀번호가 하드코딩된 경우 리버스 엔지니어링으로 비밀번호가 그대로 유출 될 수 있다. 즉,보안에 취약해 질 수 있다.
 +
* 값이 수시로 바뀌는 데이터를 하드코딩하면 수정할 때마다 재컴파일, 재배포를 해야하기 때문에 큰 시스템의 경우 운용이나 유지 보수가 어렵다.
 +
==하드코딩==
  
==단점==
+
==상수 테이블 사용==
 +
 
 +
==외부 리소스 파일 사용==
 +
 
 +
==애플리케이션 프레임워크 사용==
  
==예시==
+
{{각주}}
  
===하드코딩===
+
==참고자료==
  
===상수 테이블 사용===
+
==같이 보기==
  
===외부 리소스 파일 사용===
+
{{프로그래밍|검토 필요}}

2021년 7월 6일 (화) 17:17 판

하드코딩(Hard-Coding)이란 데이터를 코드에 직접 입력하는 경우를 말한다.

개요

상수나 변수에 들어가는 값을 소스코드에 직접 쓰는 방식을 말한다. 반대로, 소스코드에 직접 쓰지않고 데이터를 외부 파일로 빼서 따로 관리하는 것을 '로딩'이라고한다.


장점

  • 값을 바로 확인할 수 있다.
  • 별도의 로딩 절차가 없어 속도가 비교적 빠르다.
  • 데이터 수정 시 코드 수정이 불가피하면 재컴파일을 해야 하므로 굳이 로딩을 할 필요가 없다.[1]

단점

  • 코드가 바뀌었을 경우 자동으로 반영되지 않기 때문에 이후에 버그가 발생할 위기가 많다.
  • 만약 DB에 접속하여 자료를 조회하는 프로그램에 비밀번호가 하드코딩된 경우 리버스 엔지니어링으로 비밀번호가 그대로 유출 될 수 있다. 즉,보안에 취약해 질 수 있다.
  • 값이 수시로 바뀌는 데이터를 하드코딩하면 수정할 때마다 재컴파일, 재배포를 해야하기 때문에 큰 시스템의 경우 운용이나 유지 보수가 어렵다.

하드코딩

상수 테이블 사용

외부 리소스 파일 사용

애플리케이션 프레임워크 사용

각주

  1. roro, 〈(좋은 IT 용어) #하드코딩〉, 《네이버》, 2019-02-06

참고자료

같이 보기

  검수요청.png검수요청.png 이 하드코딩 문서는 프로그래밍에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.