Android UI 개발 시, 반드시 선언해 주어야 하는 구문 중 하나가 바로 findViewById 이다. 이는 View 를 선언할 때 반드시 필요한 구문이지만, 반복적으로 사용해야 하고, 메소드가 길어지는점, 특히, Adapter 에서 Holder pattern 과 같이 사용하게 되면 같은말을 두번해야 하는 번거로움 마저 느껴진다. 최근에는 이같은 반복적인 작업과 UI 선언 부의 노력을 줄이고, 코드에 좀 더 집중하기 편한 Library 들이 선보이고 있다. 그중에서도 눈의 띄는 Library 는 단연 AndroidAnnotations 과 지금부터 이야기 할 Butter Knife 이다. AndroidAnnotations logo AndroidAnnotations 은 지난 GDG mini conference 에서도 소개된 적이 있다. (사실 그때 처음 일았지만..) 당시에 Clean Code 라는 주제로 코드 분량을 줄이고, 실제 동작하는 로직에 좀 더 집중할 수 있도록 도와 주었다. 사실 , AndroidAnnotations 이 더 많은 기능을 제공하고 있지만, EActivity 사용시 _ 를 추가해야 한다는 점, 과거 intellij 에 적용시 몇몇 버그들이 발생 으로 인해 (현재는 해결됬을지도.) 프로젝트에 적용하기 쉽지 않았다. 그러던 중, 최근 가장 hot 한 Opensource 를 제공하고 있는 Square 팀의 JakeWharton 이 Butter Knife 를 Release 하였다. Butter Knife logo 현재 가장 최신 버전은 2.0.1 이고 계속해서 기능개선이 이루어 지고 있다. Butter Knife 는 아래와 같은 장점을 지니고 있다. 1. LightWeight Size 모바일 device 에서는 jar 하나 추가하는데도 많은 고민을 해야 한다. 안그래도 많은 기능들을 추가해야 되고, library 를 사용해야 하는데 이렇게 코드를 줄이기 위해서 많은 용량을 할애하기도 애매...