확장메뉴
주요메뉴


소득공제 베스트셀러

자바 잘 읽는 법

: 자바 코드를 이해하고, 디버깅하고, 최적화하는 요령

첫번째 리뷰어가 되어주세요 | 판매지수 1,110
베스트
IT 모바일 74위 | IT 모바일 top100 1주
정가
28,000
판매가
25,200 (10% 할인)
배송안내
5/2(목) 발송예정(예약판매)
  • 배송비 : 무료 ?
  • 예정일 이후 1~2일 이내 수령
    eBook이 출간되면 알려드립니다. eBook 출간 알림 신청
    분철서비스 시작 시 알려드립니다. 분철서비스 알림신청
    •  국내배송만 가능
    •  최저가 보상
    •  예약도서와 함께 주문 시 도서 출간일에 함께 배송됩니다. (출판사의 사정으로 출간 지연 가능)
    •  문화비소득공제 신청가능

    품목정보

    품목정보
    발행일 2024년 05월 09일
    쪽수, 무게, 크기 340쪽 | 188*245*17mm
    ISBN13 9791193926208
    ISBN10 1193926203

    카드 뉴스로 보는 책

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

    목차 목차 보이기/감추기

    책 속으로 책속으로 보이기/감추기

    디버거는 개발자가 원하는 커맨드에서 실행을 잠깐씩 멈춰가며 단계별로 코드를 실행함으로써 소스 코드를 더 쉽게 읽고 이해할 수 있게 도와주는 소프트웨어 프로그램이다. 디버거가 소프트웨어 동작을 조사하는 일반적인 수단(또 개발자가 제일 처음에 배우는 방법)이긴 하지만, 디버깅 기법이 이것만 있는 것은 아니고 또 모든 시나리오에서 이렇게 하는 게 유용한 것도 아니다(디버거의 기본적인 사용법과 고급 기법은 2, 3장에서 설명한다). 이 책 전체를 통틀어 배우게 될 다양한 조사 기법은 그림 1.3과 같다.
    --- P.6

    모든 조사 기법이 늘 그렇듯이 로그 역시 사용하기 적합한 경우가 있고 그렇지 않은 경우도 있다. 이 절에서는 로그를 사용하면 앱 동작을 더 쉽게 이해할 수 있는 몇 가지 시나리오를 살펴보겠다. 먼저 로그 메시지에 관한 몇 가지 키 포인트를 이야기한 다음, 개발자가 앱의 문제점을 조사할 때 이러한 특성이 어떻게 도움이 되는지 알아본다.
    --- P.87

    프로파일러로 할 수 있는 가장 간단한 작업은 앱이 시스템 리소스를 사용하는 모습을 관찰하는 것이다. 이렇게만 보아도 앱에서 메모리 누수가 발생하거나 좀비 스레드가 생기는 등의 문제점을 발견할 수 있다. / 실행 중인 앱을 프로파일러로 들여다보면 비정상적인 앱 동작을 쉽게 발견할 수 있다. 가령, 앱 실행이 끝난 뒤에도 계속 실행 상태로 남아 앱의 리소스를 차지한 좀비 스레드는 VisualVM에서 바로 드러난다. 이제 비정상적으로 리소스를 소모하는 앱의 이상 징후를 VisualVM으로 어떻게 찾아내고 관찰하는지 살펴보자.
    --- P.117

    JDBC 드라이버를 프로파일링하여 앱이 DB에 전송한 쿼리를 가로챈다. 확인 결과(그림 7.14), 제품 테이블과 자기 스스로 셀프 조인(self join)을 하고 있다. 심각한 문제다! 이 예제는 테이블에 레코드가 달랑 10개뿐이라 별로 대수롭지 않아 보일 수도 있지만, 실제 앱이라면 테이블에 엄청나게 많은 레코드가 존재할 텐데, 이렇게 크로스 조인을 하면 엄청난 레이턴시는 피할 수 없고 결국 잘못된 아웃풋(중복된 행)이 표시될 것이다. VisualVM으로 쿼리를 가로채서 들여다보면 어디가 문제인지 바로 알 수 있다.
    --- P.154

    VisualVM에서 Sampler 탭을 선택한 다음 Memory 버튼을 클릭하면 메모리 사용량 샘플링 세션이 시작된다. 엔드포인트를 호출하고 실행이 완료될 때까지 기다리면 잠시 후 VisualVM 화면에 앱이 할당한 객체가 표시될 것이다. (…) 수많은 인스턴스가 메모리를 꽉 채우는 일은 알겠는데, 후자처럼 소수의 덩치 큰 인스턴스가 메모리 대부분을 차지할 가능성도 있을까? 대용량 동영상 파일을 처리하는 앱을 떠올리면 된다. 한 번에 2~3개의 파일을 로드하지만 동영상 파일은 용량이 워낙 커서 메모리를 가득 채울 수 있다. 이런 경우에는 앱이 전체 파일을 한꺼번에 메모리에 로드하지 않고 한 번에 일부만 로드하는 방식으로 최적화할 여지는 없는지 살펴볼 필요가 있다.
    --- P.231

    이 앱은 스프링 부트 기반으로 개발되었기 때문에 application.properties 파일에 다음 코드 스니펫과 같이 DSN 값을 sentry.dsn 애트리뷰트에 지정한다. 센트리에서 이 작업은 선택 사항이지만, 가능하면 앱이 실행되는 환경을 지정하는 것이 좋다. 그래야 나중에 이벤트를 필터링해서 관심 있는 이벤트만 추출할 수 있기 때문이다.
    --- P.267

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

    추천평 추천평 보이기/감추기

    우리는 코드를 작성하는 것보다 코드를 이해하려고 노력하는 데 더 많은 시간을 소비한다. 이 책은 그 시간을 현명하게 사용하는 방법을 보여준다.
    - 브렌트 호나델(Brent Honadel) (Infor)
    마침내 프로덕션 환경에서 자바 앱의 문제를 해결하고 추론하는 방법을 설명하는 책이 나왔다. 정말 구세주다.
    - 아툴 슈리니와스 콧(Atul Shriniwas Khot) (SquareOne Insights)
    이 효율적이고 유용한 기술을 모아놓은 책이 내 경력 초기에 존재했다면 얼마나 좋았을까.
    - 안드리 스토시크(Andriy Stosyk) (EPAM Systems)
    디버깅 기술에 대한 심도 있는 설명이 담긴 훌륭한 책이다.
    - 커털린 마테이(C?t?lin Matei) (Endava)
    자바 애플리케이션이 내부에서 어떻게 작동하는지 이해할 수 있다.
    - 페르난두 베르나르디누(Fernando Bernardino) (Wise)

    회원리뷰 (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   25,200
    뒤로 앞으로 맨위로 공유하기