티스토리 뷰

목차

    반응형

    Java 코드 최적화 4가지, 자바 코딩 규칙으로 성능 향상(속도 개선)


    Java 코드 최적화 4가지, 자바 코딩 규칙으로 성능 향상(속도 개선)[자바 입문, 좋은 소스 작성하는 기술]


    자바 코딩 개선 1. 단항 연산자(증감 변수)


    - Unary Operator(Increment/Decrement)


    자신이 작성한 코드를 다른 사람이 쉽고, 짧게 읽을 수 있게 해야합니다. 다른 언어와 마찬가지로, 자바는 증감에 대한 단항 연산자를 지원합니다.


    예를 들면,


    1
    2
    3
    4
    int counter = 1;
     
    counter++;
    counter--;
    cs


    위 코드는 아래와 똑같습니다.


    1
    2
    3
    4
    int counter = 1;  
     
    counter = counter + 1;  
    counter = counter – 1;  
    cs


    위의 단항 연산자(+, -)는 접두사나 접미사로 사용할 수 있습니다.

    그래서 연산자의 위치에 따라 증감의 발생 여부와 지점의 조절이 가능합니다.


    다시 예를 들면, 안드로이드 로깅을 이용해서 카운터 변수를 단항 연산자가 어떻게 조절하는지를 알아 볼 수 있습니다.


    1
    2
    3
    4
    5
    6
    7
    8
    int counter = 0;  

    Log.i(DEBUG_TAG, "The counter value is ="+counter++);   // prints 0  
    Log.i(DEBUG_TAG, "The counter value is ="+counter);     // prints 1  
    Log.i(DEBUG_TAG, "The counter value is ="+counter--);   // prints 1  
    Log.i(DEBUG_TAG, "The counter value is ="+counter);     // prints 0  
    Log.i(DEBUG_TAG, "The counter value is ="+(++counter)); // prints 1  
    Log.i(DEBUG_TAG, "The counter value is ="+--counter);   // prints 0  
    cs



    java 코드 최적화 4가지[Java 코드 최적화] 코딩 성능 향상


    자바 코딩 개선 2. 임시 변수(불필요한) 생략


    - (Skipping Temporary Variable)


    자바 개발자(모든 개발자)는 일반적으로 정말 필요하지 않은 변수는 생성할 필요가 없습니다. 이런 변수들의 특징은 임시적으로 생성되어 한 두번의 결과를 저장하는데 사용되는것이 전부입니다.


    • 대신, 자바 개발자(모든 개발자)는 결과 값을 자체적으로 평가하는 문장을 사용해야 합니다.


    예를 들어, 다음과 같은 문장은 두 정수의 합계를 임시 변수(보통 temp)가 저장한 뒤 반환합니다.


    1
    2
    3
    4
    5
    6
    int sumVerbose(int a, int b)  
    {  
        int temp = a + b;  
     
        return temp;  
    }
    cs


    개발자들이 오버헤드와 번거로움을 생략하기 위해 임시 변수 생성을 생략하고, 단순한 "반환"을 이용 할 수 있습니다.


    1
    2
    3
    4
    int sum(int a, int b)  
    {  
        return (a+b);  
    }
    cs


    위 문장은 True일 경우에만 한 번 사용하도록 구성되어 있습니다.


    연산 이후의 값을 포함하는 메소드의 경우엔 신중하게 코드를 "쉽게" 구성해야 합니다.



    자바 코딩 성능 향상[Java 코드 최적화] 자바 속도 개선

    자바 코딩 개선 3. 자바 "this" 키워드와 연쇄 방법


    - (this Keyword, Chaining Method)


    코딩 시, 종종 상호작용하는 메소드들을 구성하게 됩니다.


    이럴 경우 해당 메소드들은 현재 클래스의 인스턴스에서 호출이 됩니다.


    1
    InputStream is = getResources().openRawResource(R.drawable.icon);
    cs


    이런 코드는 논리적으로 다음 문장과 동일합니다.


    1
    2
    Resources myAppResources = this.getResources();
    InputStream is = myAppResources.openRawResource(R.drawable.icon);
    cs



    자바 코딩 규칙[자바 입문, 좋은 소스 작성하는 기술]

    자바 코딩 개선 4. 빈 문장(무한루프)


    - (Infinite Loop)

    - 종종 빈 문장이 생성되기도 하는데, 이런 문장들은 무한 루프를 유도합니다.


    1
    2
    3
    for (;;) {  
        //Do something over, and over, and over again.  
    }
    cs


    항상 합리적으로 문장이 구성되어있는지 확인해야 하고, 무한 루프를 유도하지 않나 따져봐야 합니다.


     Java 코드 최적화 4가지, 자바 코딩 규칙으로 성능 향상(속도 개선)

    written by vicddory

    반응형