C# 애플리케이션의 성능을 끌어올리고 싶다면, 사소해 보이는 코딩 습관 하나하나가 실행 속도와 메모리 사용량에 큰 영향을 미칠 수 있습니다. 아래에서 소개하는 최적화 팁들을 실무 코드에 바로 적용해 보세요.
ArrayList 대신 List<T>를 사용하세요
컬렉션이 필요할 때는 가급적 List<T>를 사용하는 것이 좋습니다. 동일한 작업을 ArrayList로 처리하면 코드 실행 속도가 느려질 수 있으며, 특히 하나의 리스트에 서로 다른 타입의 객체를 함께 저장할 때 그 차이가 두드러집니다. 제네릭 기반의 List<T>는 타입 안정성을 보장하고 박싱(boxing)과 언박싱(unboxing)에 따른 오버헤드를 줄여주기 때문에 성능 면에서 훨씬 유리합니다.
나눗셈 대신 곱셈-시프트 연산을 활용하세요
나눗셈 연산자(/)는 CPU 입장에서 상대적으로 비용이 큰 연산입니다. 따라서 가능하다면 나눗셈 대신 곱셈과 비트 시프트(<<, >>) 연산을 조합하여 처리하는 것이 좋습니다. 특히 2의 거듭제곱으로 나누는 경우에는 시프트 연산으로 손쉽게 대체할 수 있으며, 이를 통해 코드 실행 속도를 눈에 띄게 개선할 수 있습니다.
짧은 코드는 더 적은 메모리를 사용합니다
연산자를 적극적으로 활용해 코드를 간결하게 만들고, 가능한 한 한 줄로 로직을 완성하도록 노력하세요. 코드가 짧아지면 그만큼 메모리 사용량도 줄어들고, 가독성과 유지보수성 역시 함께 향상됩니다.
예를 들어 &&(논리 AND)와 같은 연산자를 사용하면 여러 개의 조건식을 한 줄에 깔끔하게 표현할 수 있어 불필요한 중복 코드를 없애는 데 큰 도움이 됩니다.