아마 나는 평생 구글 세계관을 벗어나지 못할 것 같다. 😱


이 글을 쓰고 있는 블로그도 구글 것, 매일매일 열어보는 유투브도 구글 것, 사용하는 휴대폰의 OS도 안드로이드로, 구글이 개발하는 것이며, 그 속에 있는 수 억 개의 어플리케이션도 물론, 안드로이드 스튜디오에서 개발된 것이므로 그 모체가 구글이다. 심지어 어느덧 태어난 지 10년이 넘은 프로그래밍 언어 'GO'도 구글에서 개발해 점점 발을 넓히고 있다.

그럼 이미 많은 사람들이 몸담고 있는 걸 벗어나 잠겨있는 이 세계관에서 살아남으려면, 나를 잠기게 한 것을 헤쳐나갈 수 밖에 없다. 해오던 것과 다른 선택을 해보면 된다. 나의 역할을 바꿔보면 보인다. 내가 일상적으로 사용하던 것을 사용자에서 개발자로 위치를 바꿔보는 것이다.

서론이 길었다. 그래서 안드로이드 어플리케이션 개발을 조금씩 시도하면서 겪은 다양한 오류를 비롯해서 더 나은 공부 방법 등을 기록하고자 한다.








💚 안드로이드 개발 시작하기 💙



✨ 안드로이드 개발 로드 맵


안드로이드 개발에 입문하는 사람들을 위해서 학습의 순서를 대략적으로 알려주는 로드맵이 있다. 안드로이드 스튜디오 등에서 제공하는 공식 문서를 참고할 수도 있고, github를 비롯한 여러 사이트를 참고해 알아갈 수 있다.




📌 2023 버전의 안드로이드 로드맵


2023 버전으로 정리된 안드로이드 개발 로드맵이다. 2022 버전의 로드맵도 같이 두었으니 천천히 훑어보길 바란다.
차례대로 간단히 훑어보자.



📌 첫 단계 : 사용할 언어 고르기


위의 로드맵을 살펴보면, 사용할 언어로, 주로 자바과 코틀린 두 가지 언어 중에서 개발할 언어를 선택한다. 둘 다 객체 지향 언어라는 점에서 닮았다. 선택한 언어는 추후 Activity 혹은 Fragment 내용을 작성하는 데에 이용된다. 최근에는 자바보다 코틀린을 이용한 네이티브 안드로이드 앱 개발을 더 추천한다고 구글이 밝혔다. 다시 말해, 코틀린을 자바보다 더 추천한다. 아주 짧게 두 가지 언어를 모두 사용해본 입장으로 보아도, 코틀린을 더 추천한다...



📌두 번째 : 안드로이드 개발을 위한 환경 설정 및 준비


사용하는 IDE는 안드로이드 스튜디오로, 코드 작성부터 시작해서 에뮬레이터를 통한 실제 설치과 구현까지 진행할 수 있다. 이는 안드로이드 디벨로퍼 홈페이지에서 무료로 다운로드 받을 수 있다. 23년 6월 기준, 안드로이드 스튜디오 최신 버전은 Flamingo로, 22년 2월에 출시되었다.

또한 코틀린 언어에 대한 기본적인 학습과, OOP(객체 지향 프로그래밍), 데이터구조와 알고리즘, Gradle에 대한 이해가 동반되어야 한다. OOP와 데이터구조, 알고리즘은 프로그래밍 분야 중, 아키텍처에 대한 카테고리에서 다양한 서적과 강의 등을 통해 정보를 찾아볼 수 있다. Gradle은 안드로이드 스튜디오에 의해 개발된 앱이 설치시 제일 먼저 설치되는 것으로, 여러 버전이나 플러그인, implements 등의 내용을 담고 있다. 위의 내용에 대한 이론을 너무 깊게 들어가기 보다, 간단히 훑고 프로젝트를 만들면서 손과 눈으로 이를 배우는 과정을 추천한다.



📌세 번째 : 시스템의 버전 관리


버전 관리를 통해 가장 먼저 떠올릴 수 있는 방법은 Github이다. 이를 사용하는 방법을 배워 실제 레포를 호스팅할 때 이용할 수 있다. 레포 포스팅 서비스로는 GitLab, 또는 Bitbucket을 이용한다.



📌네 번째 : 정말로 시작, 어플리케이션 개발


개발에 대해서 학습할 영역을 크게 15가지로 분류해서 볼 수 있다. 각 내용에 대한 정보는 아래의 링크를 참고해주길 바란다.




📌 2022 버전의 안드로이드 로드맵

2022 버전은 2023보다 길고 자세하다. 참고를 위해 이미지를 첨부한다.




✨ 너무 많은 정보, 효율적인 학습 방법은?


지금까지 본 건 로드 맵이다. 기본 경로이다. 이는 가장 기본적인 내용이고, 새로운 기술은 이 순간에도 생기고 있다. 계속해서 새로 생겨날 새로운 정보를 빠르게 나의 지식으로 만드는 방법은 사실 직접 해보는 것이다. 하지만 구체적으로 어떻게 하는 건지 막막해 하는 사람들이 많을 것이라 생각하고, 이에 도움을 주고자 경험을 담아 적어보려고 한다. 물론 자신에게 맞는 방법을 찾았다면 그 방법을 이용하면 된다.
  • 제로 베이스라면, 보고 따라하자.
    사실 여러 영상으로 된 작업 코드를 보고 따라 치는 것 보다, 글로 되어있는 형식에 더 편안함을 느끼는 편이다. 관련 교재를 하나 사서 실습 해 보는 것을 추천한다.
  • 따로 따로 배운 기능을 하나의 어플리케이션에서 구현해보자.
    교재 한 권에 대한 실습을 끝냈다면, 그 교재 안에 있는 여러 기능을 합쳐보자. 더불어 어느 화면에 어떤 내용을 보이게 할지 고민하면서 와이어 프레임을 짜는 버릇을 들인다면 더 좋다.
  • 최신 공식 문서를 살펴보자.
    분명 교재 혹은 블로그 글을 보고 따라 쳤는데 오류가 난다면, 아마 해당 내용이 작성된 버전과 현재 코틀린, IDE, 혹은 특정 implement 등의 버전이 맞지 않는 것이다. 그럴 때에 가장 최신의 공식 정보를 읽어볼 필요가 있다. 추천하는 곳은 안드로이드 디벨로퍼 블로그, 그리고 안드로이드 드벨로퍼 문서 내용이다. 특히 관련 내용을 찾고자 할 때에는 가능 한 가장 최신 내용을 찾는 것이 좋다. 검색 필터를 최신 기준으로 정렬되도록 해보자.
  • 발생하는 다양한 버그를 해결하는 방법으로 여러가지를 생각할 수 있다.

    ◽ 문장보단 단어 검색
    ◽ 네이버보단 구글 검색
    ◽ 오타 확인
    ◽ 페이지 간 연결의 논리 오류 점검

    너무 많은 페이지를 연결하는 과정에서 헷갈린다면, 각 페이지 연결에 대해 적어두는 스토리보드, 와이어프레임, 설령 작은 메모가 도움이 될 수 있다. 기록해두는 것을 어려워하지 말자.
    ◽ 한국어보다는 영어 검색
    ◽ 나만의 개발 일지를 작성하며 반복해서 발생하는 오류 기록

    ◽ chat gtp 활용
    chat gtp는 내가 작성한 코드 텍스트와 오류를 함께 물어보면 수정한 코드를 알려준다. 물론 모든 코드를 합쳐보았을 때의 실행 여부는 장담하지 못하지만 블로그에서 찾지 못한 해결책을 빠르게 알려주기도 한다. 그 외에도 코드 구문을 입력하고 설명을 요구하면 한글로 보다 쉽게 이해할 수 있도록 알려주며, 미처 확인하지 못한 타입 변형이나 인자를 알려주기도 한다.
    ◽ 주변의 개발자에게 물어보기
    비슷한 환경의 개발자라면 겪어보았을 수도 있는 문제이다. 서로의 코드를 공유하는 것을 어려워하지 말자.




✨ 꾸준히 최신 정보를 살펴보는 습관


이곳의 생태계는 기술에 대한 회전이 빠르다. 때문에 늘 새로운 정보를 보려는 습관이 필요하다. 그 방법 중에 다양한 세미나에 참석하거나 특강에 참여하는 방법들이 있다. 개발에 대한 관심이 증가하면서, 참석자에게 제한을 두지 않고 열리는 유/무료 세미나가 참 많아졌다. 온라인으로도 활발히 진행되고 있는 추세이다.

앞서 설명한 2022 안드로이드 개발 로드맵을 강연 소재로 한 사례도 있다. 이를 정리한 블로그 또한 참고할 수 있다.

















더 다양한 개발 입문 인사이트를 얻고 싶다면?

👉 dung-dung.log

👉 네이버 블로그 아둥바둥

👉 뚝딱이의 일기

profile
아둥바둥

0개의 댓글