로그 찍을 때, 값을 파라미터로 넘겨야하는 이유

2021. 4. 5. 16:50JAVA

로그를 찍을 때, 두 가지 방법이 있다.

 

1. 문자열에 값을 더하는 경우.

예) logger.debug("my name is "+name);

 

2. 값을 파라미터로 넘기는 경우.

예) logger.debug("my name is {}", name);

 

우리는 무조건 2번째 방법인 파라미터로 넘기는 방법으로 사용해야한다.

 

만약 첫번째 방법을 사용하게 되면,,

logger.debug("my name is "+name); 이렇게 사용해서 운영서버로 배포 됐다고 가정하면 

해당 코드는 "my name is "와 name을 더해 새로운 문자열 객체를 생성하는 연산이 이루어지고,

결과로 만들어진 문자열이 debug 메서드의 인자로 들어가게 된다.

 

여기서 연산을 한다는 것이 핵심이다. 운영서버는 해당 로그를 찍을 필요가 없기 때문에 더욱이,, 더 필요가 없다. 쓸데없는 연산을 하는 것이다.

 

두번째 방법처럼 파라미터로 넘겨 쓸데없는 연산을 피하도록 하자!

'JAVA' 카테고리의 다른 글

Runtime Data Area  (0) 2023.02.03
JAVA Collection - List 시간 복잡도  (0) 2021.02.17
parseInt와 valueOf의 차이점  (0) 2021.01.16
Optional이란?  (0) 2021.01.16
자바8, 스트림  (0) 2021.01.15