안드로이드 개발 팁

반응형

대표적인 개발 TIP

  • 만약 사용자가 그것을 볼 수 없다면 그것이 그려지게 하지말라!
  • RxJava와 Retrofit & Retrolambda를 결합해서 쓰는 것이 최고의 효율을 낸다.
  • 레이어가 아닌 기능별로 패키징해라.
  • username과 email addresses에 로그인을 제안하기 위한 Account manager를 사용해라.
  • 인라인 디버깅 + TTD를 실시해라.Debug = Settings = Show Values Inline 선택)
  • gradle build 시간을 줄이자./Users/cesarferreira/.gradle/gradle.properties
  • org.gradle.daemon=true
    org.gradle.parallel=true
    org.gradle.configureondemand=true
    
  • SOLID, 객체프로그래밍을 준수하라.
  • Dependency Injection을 수행하는 Dagger 2 라이브러리를 사용해라.
  • build.gradle 파일에 모두 dependency를 기록하지 마라
  • beta와 production.apk를 빌드하고 배포하기 위해 CI(Continuous Integration)을 사용해라.고유의 CI server를 만들지 말고, circleci, travis, shippable을 사용하라.

안드로이드 언어 개발 Tip

  • 제 3의 라이브러리를 추가하기 전에 두번 생각해라, 정말로 serious한 commitment 이다.

써드 파티 라이브러리는 관리, 안전성 측면에서도 위험도가 높다.

Layout을 그릴 때, Overdraw를 최소화하는 것이 성능에 좋다. 만들고 최적화시에 검토해주자.

1.Go to Settings on your device. 2.Go to Developer Options 3.Select “Debug GPU Overdraw”. 4.Select “Show overdraw areas”

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="#FFFFFF"> //REMOVE THIS!
  • 당신이 정말로 필요하지 않는 이상, db는 사용하지 말라

db가 포함되는 순간 매우 복잡해진다.

  • RxJava는 AsyncTasks의 최고의 대안이다.

RxJava의 일반적인 용도 중의 하나는 계산을 수행하는 것인데, 백그라운드 thread 상에서 네트워크 요청을 처리하고 결과또는 에러를 UI thread에 보여주는 역할을 한다.

  • Retrofit 최고의 Networking library이다.

Retrofit는 HTTP API를 Java 인터페이스로 바꾸어주는 역할을 한다. GET, POST, PUT, DELETE, and HEAD 등으로 쉽게 서버 API를 처리할 수 있다.

  • Retrolambda를 사용해서 코드를 짧게 만들어라.
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        log("Clicked");
    }
});

button.setOnClickListener(v -> log("Clicked")); //매우 간단해짐!

Components간의 커뮤니케이션을 간단화한다.

Packaging stuff together by what it is, and not by what it does 구체적으로 무엇을 하는가에 따라 나누지 말고, 그것이 어떤 기능(feature)을 하는가에 따라 구조를 결정해라.

반응형