Android 개발중에 발견한 몇가지 문제들…

1 minute read

Android 개발은 안드로이드 초보에게는 엄청난 진입장벽을 보여준다. 기존의 자바 - 스프링 환경의 깔끔한 구현에 익숙한 개발자들이 멋도 모르고 뛰어들었다간 정말 개고생을 한다.

Activity는 왜 매번 Manifest에 기록을 해 줘야하는건가… 보안 때문인가? 성능 때문인가? 스프링에 익숙한 개발자들은 이 경우 꼭 필요하다면 어노테이션을 이용한 스캔을 하는게 좋지 않을까 하는 생각을 할 것이다. 일정 인터페이스를 구현하는 것들을 포함한다던가.. 이건 그냥 그렇다고 치고…. 크게 불편하지 않으니

똑같은 구현을 하는 Fragment.. android 라이브러리와 각 버전별 v4라이브러리… 비슷하 기능과 메서드를 가지고 있다. 구글API개발을 위해서는 v4를 써야하는 것 같은데… 이걸 왜 따로 만들어놓은거야? 어디 개발자간의 알력싸움이라도 있었던건가? 상식적으로 봤을 때 필요한 게 있다면 최상단은 인터페이스로 하고 Fragment는 GoogleAPIFragment라는식으로 별도로 분리를 했어야 하는 것 아닌가

Eclipse-Android플러그인은 왜 프로젝트를 생성할 때 마다 매번 v4라이브러리를 따로 로딩해줘야하는가…

샘플 프로젝트를 실행시키는 것도 여간 힘든게 아니다. 한개를 실행시키려면 구글을 얼마나 뒤져야되는지….. sampleproject라는게 IDE에 붙어있다면… 이건 바로 실행이 되는 상태로 넣어놔야 하는게 상식 아닐까… 원래 당연히 될것처럼 생긴게 안되면 사용자들은 더욱 더 당황을 하게된다.  확실히 알아두자.. 안드로이드의 샘플 프로젝트는 바로 실행이 되지 않는게 정상이다. 고민하면서 검색을 해보자. 구글은 이 부분을 관리할 자신이 없다면 지들이 관리하지 말고 오픈소스 커뮤니티에 넘기던가…

하위호환성 문제… 이건 포기다. 그냥 안된다고 보자.. 4.0이전의 안드로이드는 버려라

로그문제… 왜 로그는 로그창에서 보고있으면 자꾸 지워지나… Logcat에서 로그를 확인할 대는 파일로 뽑아서 확인해야한다. (이건 구글-안드로이드의 문제는 아니고..logcat-eclipse의 문제인듯)

android vdt의 속도문제.. virtualbox에서 돌리는 윈도우보다 느리면 문제가 있는게 맞지… 원활한 테스트를 위해서는 실제 디바이스를 이용해야한다.

 

그 뿐 아니라 maven, gradle 등의 환경을 제공하지 않아 라이브러리를 포함시키는것에서부터 참… 성가시다. test 프레임워크도 기본적으로 지원하지 않아 유닛테스트를 위한 프로젝트를 별도로 생성해야 하는 것 같다.

젤리빈넘어오면서 이제 좀 쓸만해진 안드로이드지만… 아직 갈 길은 먼 것 같다.

사실 젤리빈 넘어오면서 쓸만해진건 OS의 성능향상도 있지만 그보다 하드웨어 성능에 의존한 부분이 더 크니…. 아이폰 3g가 나올때의 ios와 당시의 안드로이드 os의 성능차이는 엄청났다. 비슷한 하드웨어로 그정도 차이라니…

프로젝트를 연 다음에 반복적으로 해야하는 작업들… 프로젝트 오른쪽 클릭 AndroidTools-AddSupportLibrary같은 부분들… maven을 지원해주면 해결될 부분들…

소스코드 보기.. 오픈소스 개발에 익숙한 개발자들은 개발하다가 오류가 나면 라이브러리보다는 소스코드를 본다. 소스코드를 보면 이게 내가 잘못개발한건지 라이브러리의 버그인지 더 빨리 확인이 가능하니까… 안드로이드도 어차피 오픈소슨데 좀 보기 편하게 해놓으면 덧나나… 이 부분도 참 불편하다. 이것도 maven-repo를 지원해주면 쉽게 해결될 문제…

이외에도 지금당장 기억 안나는게 몇 가지 더 있긴한데… 참 아직도 갈길이 먼 안드로이드다. user-interface도 아직 멀었고….