확장메뉴
주요메뉴


소득공제 베스트셀러

젯팩 컴포즈로 개발하는 안드로이드 UI

에이콘- 모바일 프로그래밍 시리즈이동
첫번째 리뷰어가 되어주세요 | 판매지수 1,320
베스트
모바일 프로그래밍 32위 | 모바일 프로그래밍 top20 27주
정가
30,000
판매가
27,000 (10% 할인)
eBook이 출간되면 알려드립니다. eBook 출간 알림 신청
분철서비스 시작 시 알려드립니다. 분철서비스 알림신청

품목정보

품목정보
발행일 2022년 12월 30일
쪽수, 무게, 크기 312쪽 | 188*235*17mm
ISBN13 9791161757100
ISBN10 1161757104

책소개 책소개 보이기/감추기

목차 목차 보이기/감추기

01장. 컴포즈 앱 첫 빌드

__기술 요구 사항
__컴포저블 함수와 인사
____환영 인사 나타내기
____열, 텍스트 필드, 버튼 사용
____인사말 출력
__미리 보기 사용
____미리 보기 매개변수
____미리 보기 설정
____미리 보기 그룹화
__컴포즈 앱 실행
____컴포저블 함수 배포
____액티비티에서 컴포저블 함수 사용
____내부 살펴보기
____플레이 버튼 누르기
__요약
__참고 도서

02장. 선언적 패러다임 이해

__기술 요구 사항
__안드로이드 뷰 시스템 살펴보기
____레이아웃 파일 인플레이팅
____UI 수정
__컴포넌트에서 컴포저블 함수로 이동
____컴포넌트 계층 구조
____컴포넌트 계층 구조의 한계
____함수를 사용해 UI 조합
__아키텍처 관점에서 설명
____클릭 동작에 반응
____UI 요소 크기 조절과 배치
__요약

03장. 컴포즈 핵심 원칙 자세히 알아보기

__기술 요구 사항
__컴포저블 함수 자세히 살펴보기
____컴포저블 함수의 구성 요소
____UI 요소 내보내기
____값 반환
__UI 구성 또는 재구성
____컴포저블 함수 간 상태 공유
____크기 제어
____액티비티 내에서 컴포저블 계층 구조 나타내기
__컴포저블 함수의 행위 수정
____변경자 동작 이해
____커스텀 변경자 구현
__요약

04장. UI 요소 배치

__기술 요구 사항
__미리 정의된 레이아웃 사용
____기본 구성 요소 조합
____제약 조건을 기반으로 하는 레이아웃 생성
__단일 측정 단계의 이해
____측정 정책 정의
__커스텀 레이아웃 작성
____커스텀 측정 정책 구현
__요약

05장. 컴포저블 함수 상태 관리

__기술 요구 사항
__상태를 갖거나 갖지 않는 컴포저블 함수 이해
____컴포저블 함수에서 상태 사용
____상태를 갖지 않는 컴포저블 함수 작성
__상태 호이스팅과 이벤트 전달
____라디오 버튼 그룹 생성
__환경설정 변경에도 데이터 유지
____ViewModel 사용
__요약

06장. 조립

__기술 요구 사항
__컴포즈 앱 스타일링
____색상, 모양, 텍스트 스타일 정의
____리소스 기반의 테마 사용
__툴바와 메뉴 통합
____화면 구조화를 위해 Scaffold() 사용
____상단 앱 바 생성
__내비게이션 추가
____화면 정의
____NavHostController와 NavHost() 사용
__요약

07장. 팁, 트릭, 모범 사례

__기술 요구 사항
__상태 유지와 검색
____ViewModel에 객체 주입
____팩토리 사용
__컴포저블을 반응성 있게 유지
____ViewModel 인스턴스와 소통
____장기간 동작하는 작업 처리
__부수 효과의 이해
____중단 함수 호출
____DisposableEffect()으로 정리
__요약

08장. 애니메이션 적용

__기술 요구 사항
__애니메이션을 사용한 상태 변화 시각화
____한 가지 값을 변경하는 애니메이션
____여러 값을 변경하는 애니메이션
__애니메이션을 사용해 UI 요소를 노출하거나 숨기기
____AnimatedVisibility()의 이해
____크기 변경 애니메이션
__시각 효과를 통한 트랜지션 향상
____크로스페이드 컴포저블 함수
____애니메이션 사양의 이해
__요약

09장. 상호 운용 API 자세히 알아보기

__기술 요구 사항
__컴포즈 앱에서 뷰 나타내기
____컴포즈 앱에 커스텀 컴포넌트 추가
____AndroidViewBinding()으로 뷰 계층 구조 인플레이팅
__뷰와 컴포저블 함수 간 데이터 공유
____ViewModel 다시 보기
____뷰 바인딩과 ViewModel 조합
__뷰 계층 구조에 컴포저블 임베디드
__요약

10장. 컴포즈 앱 테스트와 디버깅

__기술 요구 사항
__환경설정과 테스트 작성
____유닛 테스트 구현
____컴포저블 함수 테스트
__시맨틱 이해
____시맨틱 노드로 작업
____커스텀 시맨틱 프로퍼티 추가
__컴포즈 앱 디버깅
____로깅과 디버깅을 위해 커스텀 변경자 사용
__요약
__더 읽을거리

11장. 결론과 다음 단계

__기술 요구 사항
__미래 탐험
____노출된 드롭다운 메뉴 나타내기
____NavigationRail() 사용
__머티리얼 유로 이관
____컴포즈에서 머티리얼 2와 머티리얼 3 간의 차이점
__안드로이드를 넘어서
____샘플 프로젝트 설정
__결론

출판사 리뷰 출판사 리뷰 보이기/감추기

◈ 이 책에서 다루는 내용 ◈

◆ 젯팩 컴포즈의 핵심 개념 이해
◆ 사용자 친화적이고 안정적인 UI 요소 개발
◆ 젯팩 컴포즈로 완전한 앱 만들기
◆ 기존 안드로이드 애플리케이션에 젯팩 컴포즈 추가
◆ 젯팩 컴포즈를 사용하는 앱 테스트 및 디버깅
◆ 다른 플랫폼에서의 젯팩 컴포즈 활용

◈ 이 책의 대상 독자 ◈

새로운 젯팩 컴포즈 프레임워크의 핵심 개념과 네이티브 개발의 장점을 이해하고자 하는 모든 모바일 개발자를 대상으로 한다. 코틀린 프로그래밍 언어에 대한 지식을 포함해 안드로이드 앱 개발에 대한 확실한 이해가 있다면 더욱 유익할 것이다. 책에서 다루는 개념을 효과적으로 이해하려면 기본적인 프로그래밍 지식이 필요하다.

◈ 이 책의 구성 ◈

1장, ‘컴포즈 앱 첫 빌드’에서는 여러분의 첫 번째 컴포즈 앱을 빌드하는 방법을 보여준다. 또한 컴포저블 함수와 미리 보기 같은 중요한 핵심 개념도 소개한다.

2장, ‘선언적 패러다임 이해’에서는 선언적 방식을 사용하기 전의 방식을 설명하고 오래된 접근 방식에서 오는 문제는 무엇인지 설명한다.

3장, ‘컴포즈 핵심 원칙 자세히 알아보기’에서는 젯팩 컴포즈가 의존하는 핵심 원칙을 소개한다. 이 내용은 잘 동작하는 컴포즈 앱을 작성하는 데 꼭 필요하다.

4장, ‘UI 요소 배치’에서는 제공되는 레이아웃 일부를 소개한다. 또한 커스텀 레이아웃을 구현하는 방법도 살펴본다.

5장, ‘컴포저블 함수 상태 관리’에서는 젯팩 컴포즈가 상태를 어떻게 관리하는지 살펴본다. 상태는 시간이 흐름에 따라 변할 수 있는 앱 데이터이며 컴포저블 함수는 상태를 출력하거나 변경한다.

6장, ‘조립’에서는 앞에서 배운 개념을 복습하고 앱에 포함해본다. 실제 코드로 개념을 확인하면 개념을 이해하는 데 도움이 되며 프로그램에서 이를 재사용하기가 더 쉬워진다.

7장, ‘팁, 트릭, 모범 사례’에서는 컴포즈를 사용할 때의 모범 사례를 알아본다. 여기에는 상태 유지 및 검색과 부수 효과로 불리는 동작의 사용법과 같은 주제가 포함된다.

8장, ‘애니메이션 적용’에서는 관련된 모든 API를 소개한다. 애니메이션과 트랜지션은 앱을 멋지게 만들어준다.

9장, ‘상호 운용 API 자세히 알아보기’에서는 앱 안에서 선언적 접근 방식과 명령적 접근 방식을 결합하는 전략을 살펴본다. 또한 기존 UI를 젯팩 컴포즈로 손쉽게 업데이트할 수 있는 마이그레이션 전략을 제공한다.

10장, ‘컴포즈 앱 테스트와 디버깅’에서는 컴포즈 앱을 위한 기본적인 테스트 시나리오를 소개한다. 컴포즈 앱의 사용자 기반 인터페이스 테스트는 뷰 기반의 UI 테스트와는 다르게 동작한다.

11장, ‘결론과 다음 단계’에서는 이후에 시도할 수 있는 것들을 안내하며 책을 마무리한다. 또한 젯팩 컴포즈의 미래를 예측해보고 인접해 있는 플랫폼들을 살펴보면서 어떠한 이점을 얻을 수 있을지 알아본다.

◈ 지은이의 말 ◈

젯팩 컴포즈(Jetpack Compose)는 빠르고 아름다우며 신뢰할 수 있는 네이티브 사용자 인터페이스를 개발하기 위한 안드로이드의 새로운 프레임워크다. 선언적 접근 방식을 사용해 안드로이드 UI 개발을 단순화했을 뿐만 아니라 UI 개발 속도도 크게 개선시켰다. 젯팩 컴포즈를 실습하거나 안드로이드 애플리케이션을 개발하는 최신 방식을 적용하고자 하는 개발자에게 도움이 될 것이다. 이 책은 안드로이드 개발에 대한 기본서가 아니며 안드로이드 앱을 어떻게 개발하는지는 여러분의 지식에 달렸다.

여러분은 실습 가능한 튜토리얼과 프로젝트가 완벽히 준비돼 있는 따라 하기 쉬운 가이드를 통해 상태 호이스팅, 단방향 데이터 흐름, 상속보다 컴포지션을 활용하는 방법 같은 최신 젯팩 컴포지션의 핵심 개념을 익힐 수 있다. 또한 컴포즈를 사용해 자신만의 안드로이드 앱을 개발하는 데도 도움이 될 것이다. 테스트와 애니메이션, 기존 안드로이드 UI 툴킷과의 상호 운용 같은 개념도 다룬다.

책을 끝내고 나면 젯팩 컴포즈를 사용해 자신만의 안드로이드 앱을 작성할 수 있을 것이다.

◈ 옮긴이의 말 ◈

최근 모바일 프로그래밍의 가장 뜨거운 주제를 고르라면 단연 선언적 UI라고 할 수 있다. 구글은 플러터를 통해 선언적 UI를 선보이는 데 그치지 않고 2021년 안드로이드 네이티브 UI 개발이 가능한 선언적 UI 프레임워크인 젯팩 컴포즈(Jetpack Compose)를 출시했다. 젯팩 컴포즈는 출시 이후 빠르게 성장하고 있으며 안드로이드뿐만 아니라 데스크탑, 웹은 물론 iOS 앱 개발에도 젯팩 컴포즈를 사용하는 것을 목표로 하고 있다. 이를 통해 안드로이드 개발자는 모바일 애플리케이션 개발뿐만 아니라 다른 플랫폼에서도 동일한 환경을 사용해 GUI 애플리케이션을 개발할 수 있게 될 것이다.

이 책은 젯팩 컴포즈를 처음 접하거나 빠르게 익히고자 하는 개발자를 위한 책이다. 저자는 프레임워크가 지원하는 여러 UI 컴포넌트를 소개하는 데서 그치지 않고 젯팩 컴포즈의 동작 원리는 물론, 실무에서 컴포즈를 어떻게 적용할 수 있는지, 기존 View 기반의 애플리케이션에 컴포즈를 어떻게 적용할 수 있는지도 설명하고 있다. 이를 통해 단순히 책을 읽는 데 그치지 않고 바로 실무에서 적용할 수 있게 도와준다.

저자는 빠르게 발전하는 젯팩 컴포즈 버전에 맞춰 예제를 꾸준히 업데이트하면서 독자에게 최신 정보를 주고자 노력하고 있다. 원서의 예제는 컴포즈 1.0.5 버전을 기준으로 작성됐으나 번역 과정에서 저자는 1.2.1 버전까지 업데이트했다. 이 한국어판은 저자가 작성한 가장 최신 버전인 1.2.1을 적용했고, 사용하는 라이브러리나 안드로이드 스튜디오 버전 역시 최신 버전을 사용해 독자로 하여금 최신 환경에서도 원활하게 예제를 따라 할 수 있도록 했다. 최신 버전에서 예제를 작성하다 막히는 부분이 있다면 책에 있는 깃허브 링크를 확인해 최신 버전의 코드를 참고할 것을 추천한다. 유튜브 채널의 ‘Code In Action’에서 예제 코드를 설명하는 영상도 있으니 함께 참고해보면 도움이 될 것이다.

회원리뷰 (0건) 회원리뷰 이동

  등록된 리뷰가 없습니다!

첫번째 리뷰어가 되어주세요.

한줄평 (0건) 한줄평 이동

  등록된 한줄평이 없습니다!

첫번째 한줄평을 남겨주세요.

배송/반품/교환 안내

배송 안내
반품/교환 안내에 대한 내용입니다.
배송 구분 예스24 배송
  •  배송비 : 무료배송
포장 안내

안전하고 정확한 포장을 위해 CCTV를 설치하여 운영하고 있습니다.

고객님께 배송되는 모든 상품을 CCTV로 녹화하고 있으며, 철저한 모니터링을 통해 작업 과정에 문제가 없도록 최선을 다 하겠습니다.

목적 : 안전한 포장 관리
촬영범위 : 박스 포장 작업

  • 포장안내1
  • 포장안내2
  • 포장안내3
  • 포장안내4
반품/교환 안내

상품 설명에 반품/교환과 관련한 안내가 있는경우 아래 내용보다 우선합니다. (업체 사정에 따라 달라질 수 있습니다)

반품/교환 안내에 대한 내용입니다.
반품/교환 방법
  •  고객만족센터(1544-3800), 중고샵(1566-4295)
  •  판매자 배송 상품은 판매자와 반품/교환이 협의된 상품에 한해 가능합니다.
반품/교환 가능기간
  •  출고 완료 후 10일 이내의 주문 상품
  •  디지털 콘텐츠인 eBook의 경우 구매 후 7일 이내의 상품
  •  중고상품의 경우 출고 완료일로부터 6일 이내의 상품 (구매확정 전 상태)
반품/교환 비용
  •  고객의 단순변심 및 착오구매일 경우 상품 반송비용은 고객 부담임
  •  직수입양서/직수입일서중 일부는 변심 또는 착오로 취소시 해외주문취소수수료 20%를 부과할수 있음

    단, 아래의 주문/취소 조건인 경우, 취소 수수료 면제

    •  오늘 00시 ~ 06시 30분 주문을 오늘 오전 06시 30분 이전에 취소
    •  오늘 06시 30분 이후 주문을 익일 오전 06시 30분 이전에 취소
  •  직수입 음반/영상물/기프트 중 일부는 변심 또는 착오로 취소 시 해외주문취소수수료 30%를 부과할 수 있음

    단, 당일 00시~13시 사이의 주문은 취소 수수료 면제

  •  박스 포장은 택배 배송이 가능한 규격과 무게를 준수하며, 고객의 단순변심 및 착오구매일 경우 상품의 반송비용은 박스 당 부과됩니다.
반품/교환 불가사유
  •  소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  •  소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 : 예) 화장품, 식품, 가전제품, 전자책 단말기 등
  •  복제가 가능한 상품 등의 포장을 훼손한 경우 : 예) CD/LP, DVD/Blu-ray, 소프트웨어, 만화책, 잡지, 영상 화보집
  •  소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  •  디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  •  eBook 대여 상품은 대여 기간이 종료 되거나, 2회 이상 대여 했을 경우 취소 불가
  •  중고상품이 구매확정(자동 구매확정은 출고완료일로부터 7일)된 경우
  •  LP상품의 재생 불량 원인이 기기의 사양 및 문제인 경우 (All-in-One 일체형 일부 보급형 오디오 모델 사용 등)
  •  시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  •  전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
소비자 피해보상
  •  상품의 불량에 의한 반품, 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결기준(공정거래위원회 고시)에 준하여 처리됨
환불 지연에
따른 배상
  •  대금 환불 및 환불 지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리
  •  쿠폰은 결제 시 적용해 주세요.
1   27,000
뒤로 앞으로 맨위로 공유하기