장바구니 담기 close

장바구니에 상품을 담았습니다.

파이썬 GUI 프로그래밍 쿡북 2/e

파이썬 GUI 프로그래밍 쿡북 2/e

  • 부르크하르트메이어
  • |
  • 에이콘출판
  • |
  • 2018-04-26 출간
  • |
  • 460페이지
  • |
  • 188 X 236 X 26 mm
  • |
  • ISBN 9791161751474
판매가

35,000원

즉시할인가

31,500

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
31,500

이 상품은 품절된 상품입니다

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

이 책에서 다루는 내용 

- GUI 생성 및 위젯 추가
- 레이아웃 관리자를 사용해 위젯 정렬
- 객체지향 프로그래밍을 사용해 GUI 생성
- Matplotlib 차트 작성
- 스레드를 사용해 네트워크 통신
- GUI를 통한 MySQL 데이터베이스 사용
- GUI의 유닛테스트 및 국제화
- 서드파티 그래픽 라이브러리로 GUI 확장
- GUI 개발의 모범 사례 이해


이 책의 대상 독자 

GUI를 개발하려는 프로그래머를 대상으로 한다. 파이썬 프로그래밍 언어를 사용해 아름답고, 기능적이고, 강력한 GUI를 만들면서 이룰 수 있는 것에 놀랄지도 모른다. 파이썬은 훌륭하고 직관적인 프로그래밍 언어며 매우 배우기 쉽다. 


이 책의 구성 

1장, ‘GUI 폼 만들기 및 위젯 추가하기’에서는 파이썬에서 첫 번째 GUI를 개발하는 방법을 설명한다. 실행 중인 GUI 애플리케이션을 빌드하는 데 필요한 최소 코드부터 시작한다. 그 다음, 각 레시피는 GUI에 여러 위젯을 추가한다.
2장, ‘레이아웃 관리’에서는 파이썬 GUI를 만들기 위해 위젯을 정렬하는 방법을 설명한다. 그리드 레이아웃 관리자는 사용할 tkinter에 내장된 가장 중요한 레이아웃 도구 중 하나다.
3장, ‘사용자 정의 룩앤필’에서는 좋은 룩앤필의 GUI를 만드는 방법에 대한 몇 가지 예를 보여준다. 실용적인 수준에서 레시피에서 만든 Help|About 메뉴 항목에 기능을 추가한다.
4장, ‘데이터와 클래스’에서는 GUI에 표시되는 데이터를 저장하는 방법에 대해 설명한다. 파이썬의 내장 기능을 확장하기 위해 객체지향 프로그래밍 OOP를 사용할 것이다.
5장, ‘Matplotlib 차트’에서는 시각적으로 데이터를 표현하는 아름다운 차트를 만드는 방법을 설명한다. 데이터 소스의 형식에 따라 동일한 차트 내에 하나 또는 여러 개의 데이터 열을 그릴 수 있다.
6장, ‘스레드와 네트워킹’에서는 스레드, 대기열 및 네트워크 연결을 사용해 파이썬 GUI의 기능을 확장하는 방법에 대해 설명한다. GUI가 사용자 PC의 지역 범위에 전혀 제한되지 않는다는 것을 보여줄 것이다.
7장, ‘GUI를 통해 MySQL에 데이터 저장하기’에서는 MySQL 데이터베이스 서버에 연결하는 방법을 보여준다. 이 장의 첫 번째 레시피에서는 무료 MySQL 서버 커뮤니티 에디션을 설치하는 방법을 보여줄 것이며, 다음 레시피에서는 데이터베이스, 테이블을 생성한 후, 해당 데이터를 로드하고 이러한 데이터를 수정한다. 또한 MySQL 서버에서 나온 데이터를 GUI로 읽어 들일 것이다.
8장, ‘국제화와 테스트’에서는 라벨, 버튼, 탭 및 기타 위젯을 다른 언어로 표시해 GUI를 국제화하는 방법을 보여준다. 간단하게 시작해 설계 단계에서 국제화를 위한 GUI를 준비할 수 있는 방법을 살펴볼 것이다. 또한 파이썬의 내장된 유닛 테스팅 프레임워크를 사용해 GUI를 자동 테스트하는 몇 가지 방법을 살펴볼 것이다.
9장, ‘wxPython 라이브러리로 GUI 확장하기’에서는현재 파이썬과 함께 제공되지 않는 다른 파이썬 GUI 툴킷을 소개한다. wxPython이며, 파이썬 3에서 잘 동작하도록 디자인된 피닉스 버전의 wxPython을 사용할 것이다.
10장, ‘PyOpenGL과 PyGLet으로 놀라운 3D GUI 생성하기’에서는 진정한 3차원 기능을 제공함으로써 GUI를 변환하는 방법을 보여준다. 2개의 파이썬 서드파티 패키지를 사용한다.
PyOpenGL은 모든 주요 운영 체제에 내장된 그래픽 라이브러리인 OpenGL 표준에 대한 파이썬 바인딩이다. 이것으로 결과 위젯에 기본 모양과 느낌이 부여된다. PyGLet은 이 장에서 살펴볼 또 다른 바인딩이다. 또한 PyOpenGL 라이브러리를 직접 사용하는 코드를 보여준다. 관심 있는 독자에게 약간의 문호를 열 수 있는 낮은 수준의 접근 방식이다.
11장, ‘모범 사례’에서는 GUI를 효율적으로 작성하고, 유지보수가 가능하고, 확장 가능한 GUI를 유지하는 데 도움이 되는 다양한 모범 사례에 대해 살펴본다. 모범 사례는 모든 코드에 적용할 수 있고, 훌륭한 소프트웨어 실무를 설계하고 구현하는데, GUI도 예외는 아니다.

지은이의 말 

이 책은 프로그래밍 쿡북이다. 모든 장은 자체적으로 포함된 특정 프로그래밍 해결책을 설명한다. 매우 간단하게 시작하지만 이 책 전체에서 파이썬 3로 작성된 동작하는 애플리케이션을 빌드하며, 각 레시피는 이 애플리케이션 빌드를 확장한다. 도중에 네트워크, 대기열, 데이터베이스, OpenGL 그래픽 라이브러리 및 기타 여러 기술을 소개하고, 디자인 패턴을 적용하며, 모범 사례를 사용할 것이다.
독자가 파이썬 프로그래밍 언어에 약간의 경험을 갖고 있다고 가정하지만, 이 책을 성공적으로 읽는 데는 필요하지 않다. 파이썬 프로그래머가 되려는 욕심이 있다면 파이썬 프로그래밍 언어에 대한 입문서로 사용될 수 있다.
다른 언어에 숙련된 개발자라면 도구 상자에 파이썬을 사용해 GUI를 만들어 전문적인 도구 상자를 확장하는 재미있는 시간을 가질 수 있다.
준비됐다면 여행을 시작해보자.

옮긴이의 말 

빅데이터와 머신 러닝의 시대에 가장 인기 있는 언어는 파이썬이 아닌가 싶다. 파이썬은 개발자나 전문가들을 위한 분야를 넘어 아이들의 조기 코딩 교육, 일반인들의 코딩 열풍으로 입문용 언어로서도 인기몰이를 하고 있다.
데이터 과학부터 게임 개발에 이르기까지 다양한 분야에 사용되는 언어지만, GUI와 관련된 분야에서의 활용은 의외로 잘 알려져 있지 않은 것 같다. 이 책은 GUI 개발에 초점을 맞춰 다양한 사례를 통해 쉽게 데스크톱 애플리케이션을 만드는 방법들을 보여준다. 현실에서는 많은 서비스가 웹 서비스 형태로 제공되고 있지만, 여전히 데스크톱 환경에서의 애플리케이션이 필요한 분야도 존재한다. 이 책을 통해 업무에 필요한 다양한 툴이 더 쉽게 개발돼 업무 자동화 및 비즈니스용 툴들이 많이 나왔으면 하는 바람을 가져본다. 

목차


1장. GUI 폼 만들기 및 위젯 추가하기

__소개
__첫 파이썬 GUI 만들기
__GUI 크기 조정 막기
__GUI 폼에 라벨 추가하기
__버튼 생성 및 텍스트 속성 변경하기
__텍스트 박스 위젯
__위젯에 포커스 설정하고 비활성화하기
__콤보 박스 위젯
__초기 상태가 다른 체크 버튼 만들기
__라디오 버튼 위젯 사용하기
__스크롤되는 텍스트 위젯 사용하기
__순환문에서 위젯 추가하기

2장. 레이아웃 관리

__소개
__라벨 프레임 위젯에 라벨들 배열하기
__패딩을 사용해 위젯 주변에 공간 추가하기
__위젯이 동적으로 GUI를 확장하는 방법프레임 내에 프레임을 임베드해 GUI 위젯 정렬
__메뉴 바 생성하기
__탭 위젯 만들기
__그리드 레이아웃 관리자 사용하기

3장. 사용자 정의 룩앤필

__소개정보, 경고, 오류 메시지 박스 생성하기독립적인 메시지 박스 생성 방법
__tkinter 윈도우 형식의 타이틀 생성 방법
__메인 기본 윈도우 아이콘 변경하기
__스핀 박스 컨트롤 사용하기
__SUNKEN, RAISED 형태의 입체적 위젯
__툴팁 생성하기
__GUI에 프로그레스 바 추가하기
__캔버스 위젯 사용법

4장. 데이터와 클래스

__소개
__StringVar() 사용 방법
__위젯에서 데이터를 얻는 방법
__다중 레벨 전역 변수 사용하기
__클래스에서 GUI를 개선하는 코딩 방법
__콜백 함수 작성하기
__재사용 가능한 GUI 컴포넌트 만들기

5장. Matplotlib 차트

__소개
__Matplotlib으로 아름다운 차트 만들기pip로 whl 확장자의 Matplotlib 설치하기
__첫 차트 만들기
__차트에 레이블 배치하기
__차트에 범례 추가하는 방법
__차트 스케일링
__동적으로 차트 스케일 조정하기

6장. 스레드와 네트워킹

__소개
__멀티스레드 생성하기
__스레드 시작하기
__스레드 멈추기
__큐 사용법
__다른 모듈 간에 큐 전달하기
__대화상자 위젯을 사용해 네트워크에서 파일 복사하기
__네트워크 통신을 위해 TCP/IP를 사용하기
__urlopen으로 웹 사이트 데이터 읽어오기

7장. GUI를 통해 MySQL에 데이터 저장하기

__소개
__MySQL 서버 설치하고 접속하기
__MySQL 데이터베이스 연결 설정하기
__파이썬 GUI 데이터베이스 설계하기
__SQL INSERT 명령 사용하기
__SQL UPDATE 명령 사용하기
__SQL DELETE 명령 사용하기
__MySQL 데이터베이스에서 데이터 저장, 조회하기
__MySQL 워크벤치 사용하기

8장. 국제화와 테스트

__소개
다른 언어로 위젯 텍스트 표시하기
__GUI 언어 한 번에 바꾸기
__GUI 지역화
__국제화 GUI 준비하기
__GUI를 설계하는 애자일 방법
__GUI 테스트 코드가 필요할까?
__디버그 워치 설정하기
__다양한 디버그 출력 레벨 설정하기
__ __main__을 사용한 셀프 테스트 코드 만들기
__유닛 테스트로 강력한 GUI 만들기
__이클립스 PyDev IDE 로 유닛 테스트 작성하기

9장. wxPython 라이브러리로 GUI 확장하기

__소개
__wxPython 라이브러리 설치하기
__wxPython으로 GUI 생성하기
__wxPython으로 빠르게 컨트롤 추가하기
__메인 tikinter 앱에 wxPython 앱 임베딩하기
__wxPython에 tkinter GUI 코드 임베딩하기
__2개의 다른 GUI 프레임워크 제어하기
__연결된 두 GUI 사이의 통신

10장. PyOpenG과 PyGLet으로 놀라운 3D GUI 만들기

__소개
__PyOpenGL로 GUI 변형하기
__3D GUI!
__비트맵을 이용해 멋진 GUI 만들기
__PyOpenGL보다 쉬운 PyGLet으로 GUI 변형하기
__놀라운 색상의 GUI
__OpenGL 애니메이션
__tkinter 로 슬라이드 쇼 만들기

11장. 베스트 프랙티스

__소개
__스파게티 코드 피하기
__준비하기
__커넥트 모듈 __init__ 사용하기
__절차지향과 객체지향 방식의 혼합
__코드 명명 규칙 사용하기
__OOP를 사용하지 않을 때
__디자인 패턴을 성공적으로 사용하는 방법
__복잡성 피하기
__다중 노트북을 이용한 GUI 디자인

저자소개

저자 : 부르크하르트 메이어

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.