안드로이드 프로젝트에는 여러 파일들이 있다. 각각에 대해서 다뤄보는 글 이다.


안드로이드 프로그래밍은 2가지 문법을 이용한다. 일단 Java, 그리고 XML이다.



Java는 프로그래밍 언어이므로 안드로이드에서 주로 동적인 부분과 실질 동작에 대해서 코드를 짠다.


XML은 마크업 언어이다. 그러므로 안드로이드에서 주로 정적인 부분에 대해서 다루며, 레이아웃이나 혹은 어플리케이션의 설정 그리고 권한 등을 다루는 파일들을 XML으로 작성하게 된다.



XML은 인터프리터 계열 언어기 때문에 속도가 느리지만, 안드로이드에서 실제 실행해야되는 레이아웃 등은 컴파일 하면서 자바 파일로 변경이 됩니다.


그렇기 때문에 속도 면에서 문제가 없으니 안심하고 작성하셔도 됩니다.





해당 파일은 AndroidManifest.xml 이라는 파일 입니다.


여기에는 프로젝트의 이름, 아이콘, 테마, 자동 백업 여부, 앱에 구성요소의 속성에 대한 정보, 액티비티, 권한 등의 정보들을 기입하는 곳 입니다.


지금이야 별 쓸 일이 없지만 나중에 되면 자주자주 들르게 될 곳 입니다.




이 파일은 MainActivity.java 파일 입니다.


메인 액티비티의 소스 파일인데. 여기다가 자바 코드를 작성하여서 어플리케이션의 동작을 기술하면 됩니다.


java 파일이므로 프로그램에서 동적인 부분에 대해서는 이것으로 해야하겠지요.




이 파일은 layout안에 있는 activity_main.xml 파일 입니다.


여기에 메인 엑티비티의 레이아웃을 정의합니다.



여기에 어플리케이션의 UI를 배치합니다.


물론 java 파일에서도 UI를 만들고 배치시킬 수 있지만 소스 관리면이나 작성의 편의성 등에서 xml 파일에서 하는 것이 훨씬 유리합니다.




여기에 저번에 hello world가 아무것도 안해도 출력된 이유가 있었습니다.

여기에 helloworld를 출력하게 하는 것이 있었네요.




이번에는 기타 여러가지 파일들에 대해서 설명할 것 입니다.


mipmap

이 폴더는 어플리케이션의 아이콘 파일을 사이즈 별로 생성해 줍니다.

기본 어플리케이션 아이콘 역시 지금 여러가지 밀도 별로 생성이 되어 있네요.


drawable

이 폴더는 어플리케이션에서 사용할 이미지 파일들을 저장합니다.

나중에 이미지를 사용할 일이 있으면 이 폴더에다가 추가한 다음에 사용하면 되기에 편합니다.


values

이 폴더는 앱에서 사용하는 문자열, 수치값, 색상값, 스타일 등을 정의합니다.

이것들을 잘 정의해두면 나중에 어플리케이션을 유지 보수하는데 많이 편리할 것 입니다.


특히 문자열을 정의하는 strings.xml 파일의 경우에는 이 파일에다가 자주 사용되는 단어들을 잘 정의해두고 어플리케이션을 개발할 때 이를 불러와서 프로그래밍을 해두면 나중에 다른 나라에 다른 언어로 출시할 때. 이 파일만 바꿔주기만 해도 번역이 손쉽게 완료되겠지요.


build.gradle

그래들의 빌드 파일이라고 합니다.




이상 프로젝트의 구성요소에 대해서 알아보았습니다.








참고 자료 : 안드로이드 프로그래밍 정복 1 (김상형 지음)