프로그래밍 초식 : 변수 아끼기

Donghun Seol·2023년 4월 25일
0

프로그래밍 초식

목록 보기
1/13

레퍼런스

변수 사용을 남발할때의 문제점

변수를 너무 많이 사용하거나 변수 용도가 변화하면 추적이 복잡해진다.
(심지어 내가) 코드를 이해하는데 드는 비용이 커진다. 인지부하 발생.

이해하는 비용이 커진다는 것은 코드변경에 드는 비용이 커져 유지보수가 어려워진다.
아래의 프랙티스처럼 변수를 아낀다면 코드의 복잡도를 낮추고 가독성을 높일 수 있다.

변수 사용여부의 기준

선언하고 몇번 참조하지 않는 변수는 인라인화한다.

const kim = new Person()

const age = kim.getAge();
isMinor(age) // bad

isMinor(kim.getAge()) // good

변수 사용하는 경우의 베스트 프랙티스

의미를 더해주는 변수 위주로 사용한다.
const age = 2023 - kim.getAge()

같은 복잡한 계산을 반복하는 경우 사용한다.
const result = kim.someComplexMethod()

가능한 선언과 값 할당을 한번에 해준다.
아래와 같이 사용하면 BAD

let result;

// after 80 lines

result = kim.calcResult();

(절대로)변수의 용도나 의미를 변경하지 않는다.

의미나 용도가 다르면 타입이 같더라도 다른 변수를 사용해야한다.
추후 분석과정의 비용이 매우매우 커지기 때문이다.

// bad
const response : Response = callApi1()
response = callApi2()

// good
const response1 : Response = callApi1()
const response2 : Response = callApi2()

변수 범위를 좁혀서 사용한다.

블록안에서 사용되는 변수는 가능한 블록안으로 넣어 사용한다.
var대신 let를사용한다.
최대한 사용되기 직전에 선언 및 할당해준다. 간격이 길어지면 추적이 어려우므로 인지부하 발생

profile
I'm going from failure to failure without losing enthusiasm

1개의 댓글

comment-user-thumbnail
2023년 5월 13일

sample mocking comment for api test

답글 달기