안드로이드 어플 개발을 시작하기 위한 Cook book 입니다. 앱을 만들고는 싶은데, 어떻게 시작해야 할 지 모르는 분들이 제 포스팅을 따라 공부 한 뒤, 그 다음부턴 스스로 앱개발을 주저없이 하실 수 있도록 하는것이 저의 목표입니다. 개발에 대한 사전지식 없이 바로 일정 관리 앱을 만들어 보며 개발을 시작 할 것이며 개발을 진행하다 필요한 것은 필요 할 때 방향을 잡는 방향으로 진행 할 것입니다.
TL;DR (Too Long Didn’t Read) 이번 글은 요약이 불가능 하여 적진 않지만, 앞으로 TL;DR 부분에는 각 포스팅의 요약 된 글과 모자란 부분이 있으면 꼭 지적 부탁드린다는 글이 들어 갈 것입니다. 잘못된 부분, 추가적인 설명이 필요한 부분이 있으면 꼭 지적 부탁드립니다 !
개발은 무엇이고 코딩은 무엇인가 ?
해당 부분은 안드로이드 앱을 만드는 데 필요한 부분이 아닙니다. 하지만 개발, 코딩이 무엇인지 이해하고 넘어가는 것이 좋을 것 같아 서술합니다.
개발 ?
개인적으로 생각하기에 개발이란, 일상 생활속에 존재하는 문제들을 컴퓨터, 스마트폰 등의 하드웨어를 통해 쉽고 간편하게 해결 할 수 있도록 문제를 해결하는 프로그램을 만드는 과정이라고 생각합니다.
말이 거창한데, 예를들자면 요즘엔 세자리 수의 곱셈(일상 생활에 존재하는 문제)을 스마트폰(하드웨어)에 있는 계산기 어플(프로그램)을 활용하여 쉽게 계산 할 수 있습니다.
이러한 계산기 어플(프로그램)을 만드는 과정이 개발 이라고 생각하고, 저는 안드로이드 핸드폰의 어플을 개발하고 있는 안드로이드 개발자 입니다.
코딩 ?
일반적으로 개발자가 개발을 할 때, 코딩이라는 과정을 통해 개발이 진행됩니다.
코딩이란, 코드를 통해 컴퓨터(하드웨어)에게 일을 시키는 작업을 의미합니다.
예를 들어 숫자 두개 ( numberA, numberB )를 입력받아 숫자 두개의 합( sum )을 구하는 프로그램을 만드는 과정 ( 개발 과정 )을 생각 해 봅시다.
사람이 sum의 값을 구하기 위해선, numberA와 numberB의 값을 더해 값을 구할 것 입니다.
하지만 컴퓨터는 numberA, numberB, sum의 관계를 전혀 알 지 못합니다.
이러한 관계를 코드를 통해 컴퓨터에게 알려 줄 수 있고, 알려주는 일련의 작업을 코딩이라고 지칭합니다.
IDE
위에서 이야기 한 코딩을 개발자가 쉽게 하기 위해 만들어 놓은 프로그램들이 존재합니다.
해당 프로그램은 쓰여진 코드가 문제가 없는 코드인지 아닌지 코드를 돌려 보기 전에 검사를 해주기도 하고, 쓸 코드를 추천해주기도 하는 등 개발자에게 매우 많은 편의성을 제공해줍니다.
IDE는 개발자가 개발을 하기 쉽도록 개발 환경을 구축하여 만들어 놓은 프로그램 입니다.
일반적으로 안드로이드 앱 개발은 안드로이드 스튜디오라는 IDE를 통해서 개발이 진행됩니다.
안드로이드 스튜디오 설치 및 앱 빌드
-
안드로이드 스튜디오 설치 ( https://developer.android.com/studio/install?hl=ko )
위 링크에 설명이 잘 되어 있어 안드로이드 스튜디오를 설치하는 과정은 따로 설명하지 않겠습니다. -
안드로이드 프로젝트 만들기
안드로이드 앱
은안드로이드 프로젝트
를 통해 개발 할 수 있습니다. ( 항상 하나의 프로젝트가 하나의 앱을 보장하는건 아닙니다. 앱은 프로젝트를 통해서 만들 수 있습니다 ! )
안드로이드 스튜디오를 설치 하신 뒤 실행 하면 보실 수 있는 첫 화면입니다. Start a new Android Studio Project
를 눌러 줍니다.
Empty Project
를 누른 뒤 Next를 눌러 줍니다.
Name에 적절한 이름을 적어 준 뒤 Language를 Java를 선택 해주세요 ! ( savelocation 에는 한글이 포함되지 않아야 합니다 ! )
잠시 기다리시면, 다음와 같은 화면이 표시가 됩니다.
안드로이드 프로젝트 만들기 (4)의 1시 방향에 있는 세모 모양 버튼을 눌러줍니다.
잠시 기다리시면, 가상 기기에서 어플을 실행 시킨 결과를 확인 하실 수 있습니다. 위와 같은 화면이 뜬다면 첫 안드로이드 앱을 벌써 만드신거에요 ! ㅎㅎ
오늘은 여기까지 하도록 하고, 잘못된 부분, 추가적인 설명이 필요한 부분이 있으면 꼭 댓글로 지적 부탁드립니다 !