Kotlin 에는 Sealed class 라는 것이 있습니다. 이 Selaed 클래스를 Enum과 같이 사용하는 경우가 많은데요. 이 Sealed Class 를 Enum 대체로 작성하는 것이 옳은 것인지 이해 못하고 사용 하는 분들도 많은거 같습니다. 이번 포스트에서는 Sealead Class 에 대한 개념과 Enum 클래스의 개념을 정의하고 어떻게 사용하면 좋을지 이야기 해보겠습니다. Sealed Class 넌 뭐니? Sealed 라는 영단어의 뜻을 알면 Sealed Class 에 대해서 이해하기 도움이 될 것입니다. Sealed 는 봉인된 이라는 의미를 갖고 있는데 이 단어의 뜻과 같이 Sealed Class 클래스는 다른 클래스에서 상속하거나 확장할 수 없습니다. 즉, Sealed Class ..
클린아키텍처에 대해 많은 관심을 갖고 다양한 회사에서 도입 및 시도하고 있습니다. 어떻게 구성해야 클린 아키텍처일까요? 이상적인 아키텍처에 대해서 로버트 C. 마틴에 의해서 소개 되었으며 복잡한 소프트웨어 시스템을 보다 관리 가능하고 유지보수 가능한 형태로 구축하기 위한 지침을 제공하였습니다. 로버트 C.마틴이 말한 클린 아키텍처의 기본적인 개념과 어떻게 Android 환경에서 도입하였는지에 대해서 Medium 에 글이 등재 했는데요. 등재한 글의 일부를 공유하겠습니다. 자세한 내용은 왜 Android 신규 프로젝트는 클린 아키텍처를 도입하였는가? 라는 기술블로그 에서 확인 할 수 있습니다. 클린 아키텍처를 왜 쓰는걸까? 클린 아키텍처는 소프트웨어 시스템의 구조를 체계적으로 설계함으로써 여러 가지 장점을..
개인정보취급방침1. 수집하는 개인정보 항목이 앱은 사용자의 개인정보를 수집하지 않습니다. 다만, 앱의 정상적인 기능을 제공하기 위해 일부 기본적인 데이터(예: 앱 사용 기록, 오류 보고)가 자동으로 수집될 수 있습니다.2. 개인정보 수집 목적수집된 데이터는 앱의 성능 개선 및 오류 수정 목적으로만 사용됩니다. 이 정보는 어떠한 개인 식별 정보를 포함하지 않으며, 광고나 마케팅 목적으로 사용되지 않습니다.3. 개인정보 보유 및 이용 기간이 앱은 개인정보를 저장하지 않으며, 자동 수집된 데이터는 문제 해결 및 성능 개선을 위한 용도로만 사용된 후 즉시 삭제됩니다.4. 개인정보 제3자 제공사용자의 개인정보를 제3자에게 제공하지 않습니다.5. 이용자의 권리이 앱은 개인정보를 수집하지 않기 때문에 별도의 권리 행..
본 개발자가 작성한 앱은 개인정보보호법에 따라 이용자의 개인정보 보호 및 권익을 보호하고 개인정보와 관련한 이용자의 고충을 원할하게 처리할 수 있도록 다음과 같은 처리방침을 두고 있습니다.1. 개인정보의 처리 목적 - 광고ID(AdID) 수집 목적Google은 사용자에게 더 많은 선택권을 제공하기 위해 광고 및 분석 작업에 사용할 수 있는 재설정 가능한 식별자인 앱용 광고ID를 도입했습니다. 이 식별자는 여러 용도가 있지만 대표적으로 게재할 광고를 맞춤설정하고 앱 사용 방식을 파악하는데 유용합니다.예를 들어 광고를 게재한 뒤에 마케팅 측에서 문맥광고, 게재빈도 설정, 전환 추적, 보고 및 보안, 사기 감지 작업을 수행할 수 있습니다.자세히 : https://support.google.com/google..
본 개발자가 작성한 앱은 개인정보보호법에 따라 이용자의 개인정보 보호 및 권익을 보호하고 개인정보와 관련한 이용자의 고충을 원할하게 처리할 수 있도록 다음과 같은 처리방침을 두고 있습니다.1. 개인정보의 처리 목적 - 광고ID(AdID) 수집 목적Google은 사용자에게 더 많은 선택권을 제공하기 위해 광고 및 분석 작업에 사용할 수 있는 재설정 가능한 식별자인 앱용 광고ID를 도입했습니다. 이 식별자는 여러 용도가 있지만 대표적으로 게재할 광고를 맞춤설정하고 앱 사용 방식을 파악하는데 유용합니다.예를 들어 광고를 게재한 뒤에 마케팅 측에서 문맥광고, 게재빈도 설정, 전환 추적, 보고 및 보안, 사기 감지 작업을 수행할 수 있습니다.자세히 : https://support.google.com/google..
코로나 시대에 어딜가든 QR 인증을 하고 출입 해야했는데요. 그럴때마다 카메라 또는 QR 스캔 앱을 켜서 QR 인증을 해야했습니다. QR 인증을 하는 방법은 다양했습니다. 그중 일부 앱들은 디바이스 쉐이크(흔들기)을 QR 인증 페이지로 이동 할 수 있도록 개발되었는데 이때 사용한 쉐이크 기능은 디바이스 센서를 통해서 개발되었습니다. 그렇다면 이 센서는 매번 정확한 값이 올까요? 센서 개발하다보면 간혈적으로 고주파 노이즈가 발생할 케이스가 나오는 것을 발견할 수 있는데요. 이런 고주파 노이즈에 대한 대응을 어떻게 해야할지 알아보겠습니다. 효과적인 노이즈 제거 방법저역 필터(low-pass filter)와 고역 필터(high-pass filter)를 함께 사용하는 것은 가속도계 데이터를 안정화하고 중력의 영..
findViewById를 사용 안하는 방법이 없을까? 안드로이드 개발을 초창기부터 해오신 분들은 이런 고민을 많이 했을 것입니다. 이런 고민을 Android 을 사용하는 개발자 뿐만 아니라 Google 조차 이 부분을 고민하였고 개발자의 편의를 위한 노력을 하였습니다.그렇다면 요즘 대표적 사용하는 패턴은 무엇일까요? 대표적으로는 Data Binding 이 있습니다. 이번 시간은 대부분의 개발자들이 알고 있을 수 있으나, 사용할 때 한번씩 검색할 수도 있는(?) Data Binding 사용법을 알아보겠습니다. Data Binding 설정 방법Data Binding을 사용하려면 APP build.gradle 에 DataBinding 사용 한다는 것을 명시해야합니다.android { ... bui..
최근에는 대부분 API 응답이 JSON 형식으로 다양한 데이터를 전달합니다. Rest API 통신 Data로 다양한 형태를 받을 수 있습니다.하나의 예시를 들어보겠습니다. 만약, API 응답이 다음과 같은 형태로 주어진다면 이를 어떻게 처리할 수 있을까요[ { "type": "TRUCK", "waterCannon": true }, { "type": "PLANE", "wingsSpanInMeters": 20 } ] Response Dto 를 다음과 같이 구성해서 받을 준비는 하고 있지 않은지 묻고 싶습니다.class Veichle { type : String waterCannon : Boolean wingsSpanInMeters : Int} ..
- 스코어헬퍼
- 고시문
- 미션차이나센터
- java
- 디자인패턴
- view
- RXjava
- IT
- 알고리즘
- 안드로이드
- push
- missionchina
- swift
- 점수판
- 탁구
- flutter
- 코틀린
- Kotlin
- 선교
- 임용고시
- 고시문헬퍼
- IOS
- issue
- 패턴
- MCC
- Android
- missioon
- DI
- Android Studio
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |