[Compose] State Hoisting
·
Android/Compose
상태 호이스팅(State Hoisting) 🌊Compose의 장점 중 하나인 Stateless함에 대해 이야기해보려고 합니다.UI 상태의 상호 의존성을 끊을 수 있다면 UI의 재사용성이 높아지고, 테스트하기도 쉬워지기 때문이죠. 하지만 때때로 UI에 상태를 저장해야 하는 상황도 발생합니다.예를 들어, TextField와 같은 컴포넌트는 입력된 텍스트를 저장해야 하므로 상태를 가져야 합니다. 이런 경우, Compose의 Stateless한 장점이 사라지고 다시 Stateful하게 됩니다.이를 해결하기 위한 디자인 패턴이 바로 상태 호이스팅(State Hoisting)입니다. 🚀 상태 호이스팅이란?상태 호이스팅은 상태를 자식 컴포넌트에서 부모 컴포넌트로 끌어올리는 패턴입니다.이를 통해 상태를 여러 컴포넌..
Github Action을 이용한 Android CI/CD 구축 with Firebase
·
Etc/Git
CI/CD란? 🤔GitHub Actions는 개발자들이 코드 변경을 자동으로 빌드, 테스트, 배포할 수 있도록 도와주는 강력한 도구입니다.이 글에서는 GitHub Actions의 기본 개념과 사용법을 소개하겠습니다. 지속적인 통합(Continuous Integration) -> CI지속적인 배포(Continuous Delivery or Continuous Deployment) -> CD GitHub Actions란? 🤔GitHub Actions는 GitHub에서 제공하는 CI/CD 도구로, 다양한 이벤트(예: 코드 푸시, PR 생성 등)에 반응하여 워크플로우를 실행할 수 있습니다. 이를 통해 소프트웨어 개발 프로세스를 자동화하고 효율성을 높일 수 있습니다. 기본 구성 요소 🛠️워크플로우(Workfl..
Android DiffUtil과 ListAdapter 사용법 ✨
·
Android/ViewSystem
Android DiffUtil에 대한 이해와 활용 📱✨DiffUtil은 Android RecyclerView에서 데이터 변경을 효율적으로 처리하는 데 도움을 주는 유틸리티 클래스입니다. 이 글에서는 DiffUtil의 기본 개념, 사용 방법 및 예제 코드를 통해 그 활용법을 알아보겠습니다. DiffUtil이란? 🤔DiffUtil은 두 리스트 간의 차이를 계산하여 RecyclerView의 아이템을 효율적으로 업데이트합니다. 이를 통해 불필요한 전체 리스트의 갱신을 방지하고, 성능을 개선할 수 있습니다. 왜 DiffUtil을 사용해야 할까요? ⚡성능 향상: 전체 리스트를 다시 그리지 않고 필요한 부분만 갱신합니다.애니메이션 효과: 변경된 아이템에 대해 부드러운 애니메이션을 제공합니다.쉬운 구현: 비교적 간..
Mobile App Developer's Conference (MADC) 후기 🌟
·
Review/Conference 후기
🏛️ 개요Mobile App Developer's Conference (MADC)는 2024년에 건국대 학생회관에서 열린 행사로, 안드로이드, iOS, Flutter 플랫폼을 중심으로 선언형 UI의 중요성과 활용법에 대해 논의했습니다. 입장 시 모바일 티켓의 QR 코드를 스캔하여 입장하였고, 스티커, 노트북 거치대, 볼펜, 안경닦이 등의 기념품이 제공되었습니다. 🎁 📅 컨퍼런스 진행 순서 📖 세션 초반 내용 🗣️초반 세션에서는 각 플랫폼별로 제작된 Todo 앱을 통해 선언형 UI의 개념을 설명했습니다. 이 세션에서는 모바일 개발자의 다양한 경로와 각 플랫폼의 UI 설계 원칙을 다루었습니다. 특별 세션: 플랫폼별 개발자 초청 👩‍💻👨‍💻각 플랫폼의 개발자들이 모여 서로의 장단점을 유머러스하..