나는 안드로이드 애플리케이션 만드는데 관심이 있어 취직하고나서 Kotlin을 공부해보자 마음먹었다. 그런데 Kotlin에 대해 잘 알려주는 강의를 찾기란 쉽지 않았고, 책을 보고 공부하는건 너무 재미도 없고, 머리에 때려박는 느낌이라 잘 들어오지도 않았다. 그러던 와중 패스트 캠퍼스라는 플랫폼을 찾게 되었고, 이게 웬걸 Kotlin(Android)에 대해서 상세하게 알려주고, 여러 어플들을 만들어볼 수 있는 강의를 찾게 되었다!! 심지어 강사진 분들도 이력들이 좋으신 분들이라 더 믿음이 갔다. 그래서 별 고민도 안 하고 바로 구매를 해버렸다 ㅋㅋ 강의량은 총 109시간 정도 강의는 처음에 Kotlin에 대한 기초, Android에 대한 기초부터 배울 수 있었고, 그 다음은 Android의 기본, 다양한 ..
[Android] 안드로이드 디자인 패턴(1) - MVC 패턴 지금부터 안드로이드에서 주로 사용하는 디자인 패턴에 대해서 알아보도록 하자. 알아보기에 앞서 과연 디자인 패턴이란 것은 과연 무엇일까? ✅ 디자인 패턴(Design Pattern)이란? 디자인 패턴이란 dahoonkk.tistory.com 지난 글에서는 MVC 패턴에 대해서 알아보았다. 지금부터는 MVP 패턴에 대해서 간략하게 알아보도록 하자. ✅ MVP 패턴이란? MVP 패턴이란 Model, View, Presenter의 앞 글자를 따 지어졌다. MVP는 컨트롤러의 책임에 묶이지 않고도 View와 Activity가 자연스럽게 결합할 수 있도록 한다. MVP 패턴의 가장 큰 특징은 MVC 패턴과는 다르게 UI(View)와 비즈니스 로직(Mod..
지금부터 안드로이드에서 주로 사용하는 디자인 패턴에 대해서 알아보도록 하자. 알아보기에 앞서 과연 디자인 패턴이란 것은 과연 무엇일까? ✅ 디자인 패턴(Design Pattern)이란? 디자인 패턴이란 소프트웨어의 디자인 과정에서 자주 발생하는 문제들에 대한 일종의 해결책이라고 할 수 있다. 디자인 패턴은 코드에서 반복되는 디자인적 문제들을 해결하기 위한 방법 중 하나로, 과거의 소프트웨어 개발 과정에서 발견된 설계의 노하우를 축적하여 이름을 붙이고, 이후에 재이용하기 좋은 형태로 특정의 규약을 묶어 정리한 것이다. 알고리즘처럼 프로그램 코드로 바로 변환될 수 있는 형태는 아니지만, 특정한 상황에서 구조적인 문제를 해결하는 방식을 설명해 준다. ✅ Android에서 디자인 패턴이 중요한 이유는 뭘까? 위..
✅ 들어가기 전에 안드로이드에서 앱의 완성도와 안정성을 높이기 위해 Activity Lifecycle은 반드시 알아야 한다. 제대로 알지 못하고 앱을 개발하게 되면 다른 앱을 전환하거나, 비정상 종료되는 문제가 발생할 수도 있다. 또한, 사용자가 앱을 사용하지 않는데 시스템 리소스가 소비되는 문제를 일으킬 수 있다. 사용자가 앱을 나갔다 돌아왔을 때, 진행상태가 저장되지 않는 문제가 발생할 수 있다. 화면이 가로 ↔️ 세로 전환될 때, 비정상 종료되거나, 진행상태가 저장되지 않는 문제가 발생할 수 있다. 이러한 여러 문제를 일으킬 수 있기 때문에 안드로이드에서 Activity Lifecycle에 대한 숙지는 필수라 할 수 있다. 그럼 이제부터 안드로이드의 Activity Lifecycle에 대해서 알아보..
✅ 들어가기 전에 ❗️ Room 관련 안드로이드 공식 문서 Room을 사용하여 로컬 데이터베이스에 데이터 저장 | Android 개발자 | Android Developers Room 라이브러리를 사용하여 더 쉽게 데이터를 유지하는 방법 알아보기 developer.android.com 상당한 양의 구조화된 데이터를 처리하는 앱은 데이터를 로컬에 유지하여 매우 큰 이익을 얻을 수 있다. 가장 일반적인 사용 사례는 기기가 네트워크에 액세스할 수 없을 때도 사용자가 오프라인 상태로 계속 콘텐츠를 탐색할 수 있도록 관련 데이터를 캐시하는 것이다. 안드로이드에서는 위의 설명을 실현시키기 위해 Room이라는 내장 DB를 사용하는 것을 권장한다. ✅ Room이란? Room이란 쉽게 말해 스마트폰 내장 DB에 데이터를 ..
패캠 코틀린 기반의 안드로이드 강의를 듣는 와중 Room 관련 실습을 진행 중이었다. gradle에 관련 모듈 추가하고 데이터베이스를 불러오고 저장하는 실습을 진행중이었는데 갑자기 아래와 같은 오류가 떴다. 'compileDebugJavaWithJavac' task (current target is 1.8) and 'kaptGenerateStubsDebugKotlin' task (current target is 17) jvm target compatibility should be set to the same Java version 아니 강의랑 똑같이 따라하고 있는데 왜 이런 오류가 나지,,?? 얼른 강의 들으면서 실습을 진행하고자 오류에 대해 검색해보기로 했다. 흠🤔 일단 찾아보니 gradle의 sour..
✅ 컴포넌트란? 컴포넌트란 구성요소라는 의미를 지닌다. 안드로이드에는 앱을 구성하는데 필요한 4개의 필수 구성요소가 있으며 각각은 시스템이나 사용자가 앱에 들어올 수 있는 진입점이 된다. 각 컴포넌트는 독립적인 형태로 존재하면서 고유한 기능을 수행하며, 인텐트(Intent)를 통해 상호작용한다. ✅ 안드로이드의 4대 컴포넌트 📌 Activity 앱과 사용자가 상호작용을 하기 위한 진입점이다. 앱을 실행을 할 때는 앱을 전체적으로 호출하는 것이 아니라 앱의 액티비티를 호출한다. 모든 앱에 반드시 1개 이상 존재한다. Activity는 사용자와 상호작용을 위한 UI가 있다. 앱이 실행되면, 화면이 표시된다. 사용자의 입력값을 받는다.(화면 클릭, 더블 클릭, 롱 클릭, 스와이프, 드래그 앤 드랍 등) 사용자..