본문 바로가기
Navigation, 아주 간단하게 Fragment간의 전환을 구현하는 방법. 안드로이드 앱은 개발자의 구현에 따라 다양한 화면 구성을 가집니다. 어떤 사람은 하나의 Activity에 여러 Fragment를 쌓아 관리하기도 하고, Activity만을 두어 처리하기도 하죠. 각 개발자의 관점과 그때그때의 상황에 따라 우리는 우리가 원하는 기능들을 표현하기 위한 화면들을 구현합니다. 언제나 그렇듯 개발에서의 명확한 답은 없습니다. 가장 합리적인 방법을 선택하는 것이 개발자의 역할이라고 생각합니다. 다만 더 빠르게 더 편리하게 코드를 구성할 수 있다면 우리는 그것들을 선택하고 적용해야 합니다. 그래서 오늘은 안드로이드 내에서 편리하게 화면들을 구성하고 연결할 수 있는 Navigation Componenet에 대한 이야기를 해보려고 합니다. Navigation Library, Naviga.. 2022. 10. 20.
[Android Build Issue] : [hilt] 이번에 맥북을 한번 밀고 새롭게 개발환경을 세팅하면서 기존 코드와 버전들이 맞지 않아서 여러 날을 괴롭게 보냈었습니다. 특히 안드로이드 스튜디오는 버전 때문에 문제를 일으키는 경우가 왕왕 있어서 업그레이드를 할 때마다 두려운 마음으로 진행을 하곤 하는데, 이번에 hilt build issue 때문에 꽤나 고생을 했었습니다. 사실 아직도 정확한 이유는 모르겠습니다. 왜 그러는 건지…😂 처음에 Project의 build.gradle 에서 아래와 같이 설정을 해주었습니다 // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { google.. 2022. 10. 19.
쉽고 빠르게 이미지 처리하는 방법, Glide Library 오늘은 안드로이드에서 이미지를 로드하기 위해서 사용하는 Glide 라이브러리에 대해서 정리를 해보려고 합니다. 저는 현업에서 개발을 할 때에도 이미지와 관련한 처리는 Glide를 통해서 개발을 해왔었습니다. 왜 Glide를 사용했느냐고 한다면 “… 빨라서…”라고밖에 답을 할 수 없을 것 같습니다. 보통 이미지를 불러올 때에는 app자체의 drawable 이미지를 로드해오기도 하지만 서버 혹은 외부 이미지를 불러오는 경우가 대다수입니다. 따라서 빠르게 이미지 로드 기능을 처리하고 편리하게 코드를 완성하는 것의 주된 목적입니다. 이때 Glide에서 지원하는 다양한 메소드 및 클래스들을 이용하면 정말 쉽게 다양한 이미지 로드를 구현해낼 수 있습니다. Glide 적용 방법 Module 의 build.gradle.. 2022. 10. 18.
2부 코드설계 > 5장 객체 생성 2부 코드설계 > 5장 객체 생성 > 생성자 대신 팩토리 함수를 사용하라. 2부 코드설계 > 5장 객체 생성 > 기본 생성자에 이름 있는 옵션 아규먼트를 사용하라. 2부 코드설계 > 5장 객체 생성 > 복잡한 객체를 생성하기 위한 DSL을 정의하라. 오늘의 TIL 3줄 요약 팩토리 함수에 대하여 named argument에 대하여 DSL에 대하여 1. 책에서 기억하고 싶은 내용 코틀린으로 더 좋은 코드를 작성하기 위한 내용. 팩토리 함수 클라이언트가 클래스의 인스턴스를 만들게 하는 가장 일반적인 방법은 기본 생성자(primary constructor)를 사용하는 것이다. 하지만 생성자가 객체를 만들 수 있는 유일한 방법은 아니며, 디자인 패턴으로 다양한 생성 패턴(creational pattern)들이 .. 2022. 9. 27.
2부 코드설계 > 4장 추상화 설계 2부 코드설계 > 4장 추상화 설계 > 함수 내부의 추상화 레벨을 통일하라. 2부 코드설계 > 4장 추상화 설계 > 변화로부터 코드를 보호하려면 추상화를 사용하라. 2부 코드설계 > 4장 추상화 설계 > API 안정성을 확인하라. 2부 코드설계 > 4장 추상화 설계 > 외부 API를 랩(wrap)해서 사용하라. 2부 코드설계 > 4장 추상화 설계 > 요소의 가시성을 최소화하라. 2부 코드설계 > 4장 추상화 설계 > 문서로 규약을 정의하라. 2부 코드설계 > 4장 추상화 설계 > 추상화 규약을 지켜라. 1. 책에서 기억하고 싶은 내용 추상화 : 컴퓨터 과학에서 추상화(abstraction)는 복잡한 자료, 모듈, 시스템 등으로부터 핵심적인 개념 또는 기능을 간추려 내는 것을 말한다. 조금 간단하게 표현하.. 2022. 9. 27.
2부 코드설계 > 6장 클래스 설계 > equals, hashCode, compareTo / 확장함수 2부 코드설계 > 6장 클래스 설계 > equals의 규약을 지켜라. 2부 코드설계 > 6장 클래스 설계 > hashCode의 규약을 지켜라. 2부 코드설계 > 6장 클래스 설계 > compareTo의 규약을 지켜라. 2부 코드설계 > 6장 클래스 설계 > API의 필수적이지 않는 부분을 확장 함수로 추출하라. 2부 코드설계 > 6장 클래스 설계 > 멤버 확장 함수의 사용을 피하라. 오늘의 TIL 3줄 요약 equals, hashCode, compareTo 메서드의 기본 사용법 확장 함수를 사용하는 방법과 활용하는 방법 1. 책에서 기억하고 싶은 내용 equals 구조적 동등성 (structural equality) : ==, != 으로 확인하는 동등성. 레퍼런스적 동등성 (referential equa.. 2022. 9. 27.
728x90
반응형