다양한 분야에서 AI를 활용하여 생산성을 향상시키고 있는 시대를 살아가고 있습니다. 역사적으로 4차 산업 혁명이 일어날 때마다 사람들은 긍정적인 의견과 부정적인 의견을 표현해왔습니다. 그러나 이러한 의견들과는 별개로 산업 혁명은 빠르게 진행되어 왔습니다. 이제 우리는 4차 산업 혁명의 핵심으로 거론되는 인공지능(AI)이 실생활에서 자연스럽게 놓여 있음을 목격하고 있습니다. 개발자로서, 저 또한 AI와는 관련이 없을 것으로 생각했었습니다. 그러나 현재는 AI가 코딩을 함께하는 동료로까지 성장하였습니다. 이제는 AI가 코딩하는 데 꼭 필요한 도구로 자리 잡고 있는데, 그 중 하나가 GitHub Copilot입니다. 이번 포스트에서는 Android 개발을 위해 꼭 필요한 AI 플러그인인 GitHub Copil..
Kotlin을 사용하다 보면 Inline 함수를 무심코 활용하게 됩니다. 혹시, "내가 언제 Inline 함수를 사용했지?"라는 생각이 드셨나요? 특히 foreach나 each와 같은 문맥에서 inline 함수를 흔히 접할 수 있습니다. text.indices.forEach { c -> } 이렇게 Kotlin을 사용하면서 자연스럽게 Inline 함수를 활용하는 자신을 발견하게 됩니다. 이번 시간에는 Kotlin에서 필수적인 역할을 하는 Inline 함수에 대해 알아보려고 합니다. Inline 함수는 무엇일까? "inline" 을 두 단어로 나누면 in + line 으로생나눌 수 있는데요. 문자를 풀이하면, 라인에 들어간다고 풀이 할 수 있습니다. Inline은 함수지만 컴파일시에 inline 함수로 선언..
Android에서 AttributeSet은 XML 레이아웃 파일에서 정의된 뷰(View)의 속성(Attribute)을 가져오는 데 사용되는 인터페이스입니다. AttributeSet은 안드로이드 시스템에 의해 뷰가 인플레이션(화면에 뷰를 그리는 것)될 때 자동으로 생성되는데요. 그렇다면 자동으로 생성되는 AttributeSet을 정의해서 사용할 수 없을까요? 이번 시간은 AttributSet을 정의해서 사용 하는 방법에 대해서 알아보겠습니다. AttributSet이란? 기본적으로 XML 레이아웃 파일에서 뷰의 속성을 지정할 때 다음과 같이 사용할 것입니다. 그리고 이러한 속성들은 AttributeSet을 통해 자바 코드에서도 접근할 수 있습니다. TextView myTextView = findViewByI..
Android 앱 개발을 시작한 초보자부터 다양한 경험을 가진 시니어 개발자까지, Android Task에 대한 이해는 모두에게 중요한 부분입니다. 이번 시간에는 Android의 Task에 대한 개념을 함께 살펴보도록 하겠습니다. TASK 란? Task는 사용자가 앱 내 무언가를 수행하려고 할 때 상호 작용하는 Activity의 집합 입니다. 이러한 Activity은 백스택(Back Stack)에 열린 순서대로 정렬됩니다. 예를들어 문자 앱은 문자를 보여주는 Activity을 가질 수 있습니다. 사용자가 메시지를 선택하면 해당 메시지를 보기위한 새로운 Activity가 열립니다. 이 때 새로운 Activity는 Back Stack 에 추가됩니다. 사용자가 뒤로가기를 탭하거나 제스처를 수행하면 현재 Act..
클린아키텍처라고 들어보셨나요? 그렇다면 DI 도 들어보셨나요? 이번 포스트는 클린아키텍처에 대한 내용보다 DI을 중심으로 외부 라이브러리를 소개하려고 합니다. DI를 사용하는 목적이 다양하겠지만 객체의 생성 시 의존성을 줄이기 위해서 DI 를 활용을 한다고 생각합니다. 이번 포스트는 DI 라이브러리인 Koin과 Hilt 의 차이를 알아보며 DI에 좀더 가까워지겠습니다. Koin 과 Hilt 사용법에 대한 포스트는 정식 사이트 소개로 대체하겠습니다. DI을 왜 사용할까? Android 공식 사이트에서는 DI을 사용하는 목적에 대해서 1) 클래스 재사용 가능 및 종속 항목 분리 2)리팩터링 편의성 3)테스트 편의성 으로 말합니다. ► 클래스 재사용 가능 및 종속 항목 분리: 종속 항목 구현을 쉽게 교체할 수..
Android 은 다양한 Widget 을 제공하고 있습니다. 그 중 대표적인 Widget을 뽑는다면 필자는 RecyclerView, ViewPager 뽑을 것입니다. Android Develop에서도 두 위젯을 좀 더 효율적으로 사용할 수 있도록 업데이트를 지속적으로 하고 있습니다. 이번 포스트는 RecyclerView 을 활용해서 ViewPager와 같은 기능을 만드는 방법에 대해서 공유 드리며, 더 나아가 ViewPager 의 개선버전인 ViewPager2 을 사용하는 방법에 대해서 공유 하겠습니다. 번외로 두 버전에 대한 Indicator 를 어떻게 만드는지를 공유하겠습니다. RecyclerView 을 활용해서 ViewPager 기능 구현하기 RecyclerView 의 Cell에 ViewPager ..
들어가며 Google에서 Kotlin를 Android 공식 언어로 추가함에 따라 많은 개발자들이 Java에서 Kotlin으로 변경했을 것입니다. 단순히 Google에서 Kotlin을 Android 공식언어로 추가했다고 Java 을 Kotlin으로 변경하였을까요? Java의 단점 보완한 Kotlin는 Java와 호환도 잘되어 Java로 구현된 오픈소스 라이브러리를 그대로 사용할 수 있어서 많은 개발자들이 Java에서 Kotlin으로 변경하였을 것입니다. Kotlin 으로 변경하였을 때 가장 큰 장점이 무엇이라고 생각되시나요? 필자는 비동기 처리 방식으로 생각합니다. Java에서 비동기 처리는 대표적으로 RxJava을 활용해서 처리하였을 것입니다. Kotlin을 사용하는 대부분의 개발자들은 Coroutine..
Kotlin Lamda Return 가능한가? Kotlin 에서 Lamda 안에서 return 이 가능할까요? ‘당연히 Return 다 되는거 아니야?’ 라고 생각 할 수 있습니다. 그렇지만 모든 경우 Lamda의 return을 제공하고 있지 않습니다. 그럼 어느경우 가능하고 어느경우 안되는 것인지 알아보겠습니다. Lamda는 무엇인지부터 살펴 봐야겠습니다. Lamda Expression란? Lamda는 Java SDK 1.8부터 추가되어 자바의 큰 변화를 주었습니다. 람다식의 도입으로 인해 자바는 객체지향언어인 동시에 함수형 언어가 되었습니다. 위키에서는 람다를 어떻게 정의하고있을까요? 람다식, 또는 람다 함수라 부른다. 프로그래밍서 사용되는 개념으로, 익명 함수(匿名函數, Anonymous funct..
- issue
- Android
- view
- DI
- 패턴
- 미션차이나센터
- 고시문헬퍼
- flutter
- IOS
- 임용고시
- Kotlin
- java
- swift
- MCC
- 코틀린
- 디자인패턴
- 고시문
- 안드로이드
- 점수판
- 선교
- 알고리즘
- 스코어헬퍼
- IT
- Android Studio
- RXjava
- missionchina
- 탁구
- push
- missioon
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |