일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 동성로맛집
- 대구카페
- 수성구맛집
- 인스타핫플
- 애드몹
- 앱개발
- 코딩공부
- 개발자
- androidstudio
- 동성로핫플
- 범물동카페
- compose
- 안드로이드앱
- 동성로카페
- 애드센스
- 감성카페
- 대구맛집
- 의무경찰
- 지산동카페
- 안드로이드
- 안드로이드앱개발
- 안드로이드개발
- 안드로이드스튜디오
- 대구핫플
- Android
- 어플개발
- 수성구카페
- 파이썬
- 코딩
- 대구인스타핫플
- Today
- Total
목록Coding/Android (47)
Glacier's Daily Log

Strong Skipping Mode는 Compose Compiler 1.5.4 version에 실험적으로 추가된 기능이다.(Note: Strong Skipping is enabled by default in Kotlin 2.0.20.)Strong Skipping Mode기본적으로 Compose 컴파일러는 Composable Function의 arguments들이 안정적이라면 skippable 하다고 간주.이와 관련하여 Strong Skipping Mode가 skippable 한 파라미터를 더 잘 찾을 수 있게 함.1. 기존 Skipping Mode기존에는 다음 조건을 만족해야 리컴포지션이 Skip됨.:데이터가 Stable이어야 함.데이터가 변경되지 않았음을 Compose가 알 수 있어야 함.따라서 St..

Jetpack Compose는 Recomposition 최적화에 관심을 가지고 개발해야 완성도가 높은 결과물을 기대할 수 있다.최적화 방안 중 하나인, Stability를 고려하는 방법에 대해 알아보자.Compose는 Stability(안정성)와 Recomposability(리컴포지션 가능성)를 기반으로 효율적으로 리컴포지션을 수행한다.1. Stability (안정성)Stability는 데이터가 불변(Immutable) 또는 변경이 없을 것으로 예측되는지를 나타냄.안정성은 @Stable 어노테이션 또는 컴파일러 분석에 의해 결정됨.Stable Class:객체의 상태가 변하지 않거나 변화를 잘 감지할 수 있는 클래스.Kotlin의 data class나 ImmutableList 같은 불변 객체가 이에 해당함..

안녕하세요, 크몽, 위시켓, 개인 채널 등에서 활동하고 있는 안드로이드 개발자 Glacier 입니다.최근 다양한 채널에서 블루투스, RESTful API 등을 통한 외부 기기와의 통신이 가능한 앱 개발 의뢰가 많이 들어와서 블로그에도 홍보글 한번 올려보게 되었습니다. 연락 채널 : https://open.kakao.com/me/glacier Glacier님의 오픈프로필코딩 / 안드로이드 개발 Mentoropen.kakao.com기기 연동 안드로이드 앱 개발 전문 서비스BLE, MQTT, TCP, RTSP, PTZ 등 다양한 통신 프로토콜을 활용한 맞춤형 기기 연동 앱 개발 서비스를 제공합니다.이런 기능이 필요하신가요?BLE(블루투스 저에너지)로 디바이스 연결 및 데이터 송수신 (아두이노 우노, 라즈베리파..

안드로이드 개발을 코틀린으로 진행하다보면 Sealed, Open, Abstract 클래스를 많이 사용하게 된다. 자주 사용하다보면 어떤 상황에 쓰면 되는지 감은 오지만 정확히 정리해본적은 없는 것 같아서 시작한다. 코틀린에서 abstract, open, sealed, 그리고 기본 class는 각각의 용도와 제약 조건이 있다. 이들의 차이점과 공통점을 살펴보자.1. abstract, open, sealed 의 공통점모두 클래스이다. 코틀린에서 클래스는 객체 지향 프로그래밍의 기본 단위로, 인스턴스를 생성하거나 상속의 기반이 된다.모두 상속을 허용할 수 있는 클래스로 사용될 수 있지만, 어떤 클래스는 상속이 기본적으로 허용되지 않으며, 상속 가능 여부는 해당 키워드에 따라 결정된다.2. abstract, o..

코틀린 작업중 발생하는 제안사항인 SAM-constructor 가 뭘까? SAM conversions (Single Abstract Method) 기존 Java에서 클릭 리스너를 만들 때 사용한 익숙한 코드 btnTest.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { // Do something } }); 람다식을 사용하지 않은 Kotlin으로 만든 클릭 리스너 btnTest.setOnClickListener(object: View.OnClickListener { override fun onClick(v: View) { // Do something } }) 여기서 OnClickListener는 ..

ℹ️ 배경 회사에서 개발 중 기능의 공통화를 위해서 여러 클래스의 상위 클래스를 제작하였다. 작업 중 상위카드인 ~~~~~.kt에 선언된 var root: SomeDto? = null 를 상속받은 클래스에서 사용할 일이 생겼다. ☢️ 이슈 코틀린에서는 간단하게 직접 변수명으로 접근할 수 있지만, Kotlin으로 선언된 클래스를 상속받은 Java 코드에서는 Setter/Getter를 통해서 접근할 수 밖에 없는 문제가 생겼다. 따라서 기존에 root로 접근하던 수많은 코드를 모두 getRoot()로 변경해주어야 하는 상황이 발생했다. ✅ 해결 @JvmField Instructs the Kotlin compiler not to generate getters/setters for this property an..