본문 바로가기

추천 검색어

실시간 인기 검색어

Tkinter를 사용한 파이썬 GUI 프로그래밍

사용자 친화적인 기능성 GUI 애플리케이션 설계와 개발
프로그래밍 언어
앨런 무어 저자(글) · 이태상 번역
에이콘출판 · 2024년 04월 30일
10.0
10점 중 10점
(1개의 리뷰)
최고예요 (100%의 구매자)
  • Tkinter를 사용한 파이썬 GUI 프로그래밍 대표 이미지
    Tkinter를 사용한 파이썬 GUI 프로그래밍 대표 이미지
  • A4
    사이즈 비교
    210x297
    Tkinter를 사용한 파이썬 GUI 프로그래밍 사이즈 비교 188x235
    단위 : mm
01 / 02
무료배송 소득공제
10% 40,500 45,000
적립/혜택
2,250P

기본적립

5% 적립 2,250P

추가적립

  • 5만원 이상 구매 시 추가 2,000P
  • 3만원 이상 구매 시, 등급별 2~4% 추가 최대 2,250P
  • 리뷰 작성 시, e교환권 추가 최대 300원
배송안내
무료배송
배송비 안내
국내도서/외국도서
도서 포함 15,000원 이상 구매 시 무료배송
도서+사은품 또는 도서+사은품+교보Only(교보굿즈)

15,000원 미만 시 2,500원 배송비 부과

교보Only(교보배송)
각각 구매하거나 함께 20,000원 이상 구매 시 무료배송

20,000원 미만 시 2,500원 배송비 부과

해외주문 서양도서/해외주문 일본도서(교보배송)
각각 구매하거나 함께 15,000원 이상 구매 시 무료배송

15,000원 미만 시 2,500원 배송비 부과

업체배송 상품(전집, GIFT, 음반/DVD 등)
해당 상품 상세페이지 "배송비" 참고 (업체 별/판매자 별 무료배송 기준 다름)
바로드림 오늘배송
업체에서 별도 배송하여 1Box당 배송비 2,500원 부과

1Box 기준 : 도서 10권

그 외 무료배송 기준
바로드림, eBook 상품을 주문한 경우, 플래티넘/골드/실버회원 무료배송쿠폰 이용하여 주문한 경우, 무료배송 등록 상품을 주문한 경우
주문정보를 불러오는 중입니다.
기본배송지 기준
배송일자 기준 안내
로그인 : 회원정보에 등록된 기본배송지
로그아웃 : '서울시 종로구 종로1' 주소 기준
로그인정확한 배송 안내를 받아보세요!

이달의 꽃과 함께 책을 받아보세요!

1권 구매 시 결제 단계에서 적용 가능합니다.

해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.

북카드

키워드 Pick

키워드 Pick 안내

관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.

Tkinter는 대표적인 파이썬 GUI 라이브러리다. 이 책은 Tkinter를 사용해 윈도우즈, 맥OS, 리눅스의 데스크톱 애플리케이션을 개발하는 방법을 설명한다. 또한 기업 환경의 가상 시나리오를 바탕으로 요구분석, 설계, 개발, 테스트, 운영 단계를 따라가면서 실무 환경에 적용할 수 있는 방법론까지 배울 수 있다.

◈ 이 책에서 다루는 내용 ◈

◆ 체계적이고 반응성 높은 기능형 GUI 애플리케이션 제작
◆ 클래스와 객체지향 프로그래밍을 사용한 위젯 기능 확대
◆ MVC와 버전 관리를 사용한 앱 확장성 도모
◆ 유효성 검증과 단위 테스트를 통한 앱 무결성 확보
◆ 사용자 요구 분석과 반영을 위한 도구와 프로세스 활용
◆ SQL, HTTP, Matplotlib, 스레드 프로그래밍, CSV 등 실전 기술 습득
◆ PostgreSQL을 사용한 데이터 보안 유지

작가정보

저자(글) 앨런 무어

(Alan D. Moore)
2005년부터 파이썬 코딩을 했다. 현재 미국 테네시주 프랭클린에 거주하며 현지 지방정부의 데이터베이스 앱을 개발하고 있다. 관심 기술 분야는 파이썬, 자바스크립트, 리눅스, 아날로그 전자기기다. 여유 시간에는 자신의 유튜브 채널인 ‘Alan D Moore Codes’에 코딩 강의 동영상을 올리고 작곡도 하며 기타 효과(guitar effect)도 만든다. 또한 교회와 스카우트 부대에서 자원 봉사를 하며 아내와 함께 다섯 자녀를 양육하고 있다.

번역 이태상

자바와 웹 전문가로서 오랜 기간 개발, 교육, 컨설팅을 했으며 현재 전자금융 관련 업무를 담당하고 있다. 『톰캣 최종분석』(에이콘, 2005)부터 『리액트 16』(에이콘, 2020)까지 십여 권의 IT 서적을 번역했다.

작가의 말

글을 쓰는 일은 단지 문법과 구두법 적용이 전부가 아니다. 마찬가지로 애플리케이션 개발도 프로그래밍 언어와 라이브러리 API 지식만으로 할 수 없다. 단지 문법과 함수 호출 방법을 통달한 것만으로 사용자가 업무를 수행하고 가치 있는 데이터를 보전하며 완전한 결과를 도출하게 하는 애플리케이션을 설계하기에는 부족하다는 말이다. 개발자는 사용자 요구와 기대를 효과적인 인터페이스로 설계하고 이를 구현하기 위한 최적의 기술을 적용해야 한다. 또한 대량의 코드를 구성하고 테스트하며 관리 가능한 수준을 지키면서도 부주의한 오류가
없게 유지해야 한다.
이 책은 단순히 특정 GUI 툴킷의 참조 매뉴얼이 아니다. 작은 기업 환경의 가상 시나리오를 따라가면서 애플리케이션 프로그래머의 실무 경험을 제공한다. 또한 Tkinter를 비롯한 여러 유용한 라이브러리도 살펴보며 단순한 파이썬 스크립트가 아닌 완전한 기능을 갖춘 GUI 애플리케이션을 개발하는 방법을 알아본다.
이 책을 마칠 무렵에는 회사 실무 환경에 적합한 데이터 중심의 애플리케이션 개발에 확신을 갖게 될 것이다.

목차

  • 01장. Tkinter 소개
    __Tkinter와 Tk 소개
    ____Tkinter 선택의 이유
    ____Tkinter 설치
    ______파이썬 설치: 윈도우즈
    ______파이썬 설치 맥 : OS
    ______파이썬과 Tkinter 설치: 리눅스
    ____IDLE 소개
    ______IDLE 셸 모드
    ______IDLE 편집기 모드
    ______Tkinter 예제로서의 IDLE
    ____Tkinter 버전의 Hello World
    __Tkinter 개요
    ____Tkinter 위젯으로 GUI 구성
    ____배치 관리자로 위젯 배열
    ____폼 작동시키기
    ____Tkinter 제어 변수로 데이터 다루기
    ______콜백 함수에 제어 변수 사용
    ______제어 변수의 중요성
    __정리


    02장. GUI 애플리케이션 설계
    __ABQ AgriLabs 과제 분석
    ____문제 조사
    ____관련 정보 수집
    ______인터뷰
    ____조사 내용 분석
    ______데이터 제공자로부터의 정보
    ______애플리케이션 사용자로부터의 정보
    ______기술지원 팀으로부터의 정보
    ______데이터 소비자로부터의 정보
    __요구 명세 문서화
    ____간단한 명세 구성
    ____ABQ 프로그램 명세 작성
    __애플리케이션 설계
    ____입력 위젯 결정
    ____필드 그룹화
    ____폼 레이아웃
    ____애플리케이션 레이아웃
    __기술 요소 검토
    __정리


    03장. Tkinter와 Ttk 위젯으로 기본 폼 제작
    __Ttk 위젯 세트
    ____Label
    ____Entry
    ____Spinbox
    ____Checkbutton
    ____Radiobutton
    ____Combobox
    ____Text
    ______Text의 인덱스
    ____Button
    ____LabelFrame
    __애플리케이션 구현
    ____첫 번째 단계
    ____데이터 레코드 폼
    ______기록 정보 섹션
    ______환경 정보 섹션
    ______작물 정보 섹션
    ______GUI 마무리
    ____콜백 함수 작성
    ______초기화 콜백
    ______저장 콜백
    ____ABQ 앱 테스트
    __정리


    04장. 클래스로 코드 개선
    __파이썬 클래스 입문
    ____클래스 사용의 이점
    ______파이썬의 필수 요소
    ______데이터와 함수의 명시적 관계 설정
    ______재사용 가능한 코드
    ____클래스 생성 문법
    ______속성과 메서드
    ______매직 속성과 매직 메서드
    ______퍼블릭, 프라이빗, 프로텍티드 멤버
    ____상속과 하위 클래스
    __Tkinter에서 클래스 사용
    ____Tkinter 클래스 개선
    ____복합 위젯
    ____컴포넌트 캡슐화
    ____Tk 하위 클래스
    __클래스를 사용한 애플리케이션 재작성
    ____Text 위젯에 StringVar 추가
    ______변수 전달
    ______변수로 위젯 동기화
    ______위젯으로 변수 동기화
    ____개선된 LabelInput()
    ____폼 클래스
    ____애플리케이션 클래스
    __정리


    05장. 검증과 자동화로 사용자 오류 최소화
    __사용자 입력 검증
    ____데이터 오류 방지 전략
    ____Tkinter 방식의 검증
    ______validate 인자
    ______validatecommand 인자
    ______invalidcommand 인자
    __검증 위젯 클래스
    ____날짜 위젯 제작
    __GUI에서 검증 위젯 구현
    ____다중 상속
    ____검증 믹스인 클래스 개발
    ____ValidatedMixin으로 검증 위젯 만들기
    ______기본 입력 위젯
    ______Date 위젯
    ______Combobox 위젯
    ______범위 제한 Spinbox 위젯
    ______검증 가능 Radiobutton 위젯
    ____검증 가능 위젯으로 폼 개선
    ____위젯 사이의 상호작용을 통한 검증
    ______Spinbox 범위의 동적 변경
    ______필드의 동적 비활성화
    ____오류 보여주기
    ____폼 제출 방지
    __입력 자동화
    ____날짜 자동화
    ____나머지 필드 자동화
    __정리


    06장. 애플리케이션 확장 계획
    __관심사 분리
    ____MVC 패턴
    ______모델
    ______뷰
    ______컨트롤러
    ____설계 복잡성의 이유
    __애플리케이션 디렉터리 구성
    ____기본 디렉터리 구조
    ______abq_data_entry
    ______README
    ______docs 디렉터리
    ______파이썬 패키지 제작
    __애플리케이션 분리
    ____모델 모듈 만들기
    ____위젯 이관
    ____뷰 이관
    ______뷰의 중복 코드 제거
    ______커스텀 이벤트로 강한 결합 제거
    ____애플리케이션 파일 작성
    ____애플리케이션 실행
    __버전 관리 시스템
    ____깃 사용을 위한 빠른 안내
    ______깃 저장소의 초기화와 설정
    ______코드 추가와 커밋
    ______커밋의 확인과 활용
    __정리


    07장. 메뉴와 대화상자 제작
    __애플리케이션 문제 해결
    ____해결 방안 계획
    __Tkinter 대화상자 구현
    ____messagebox
    ____오류 대화상자
    ____filedialog
    ____simpledialog와 커스텀 대화상자
    ______simpledialog를 사용한 로그인 대화상자
    ______LoginDialog 통합
    __애플리케이션 메뉴 설계
    ____Tkinter Menu 위젯
    ______Checkbutton과 Radiobutton 아이템
    ____ABQ 앱 메뉴 구현
    ______도움말 메뉴
    ______파일 메뉴
    ______옵션 메뉴
    ______마무리 작업
    ____설정 보존
    ______설정 보존을 위한 모델
    ______설정 모델 사용
    __정리


    08장. Treeview와 Notebook으로 레코드 탐색
    __모델에 읽기와 쓰기 구현
    ____CSVModel 클래스에 읽기와 쓰기 추가
    ______get_all_records() 구현
    ______get_record() 구현
    ______save_record()에 기능 추가
    __Ttk 트리뷰
    ____트리뷰 해부
    ____파일 탐색기 구현
    ______Treeview 생성과 설정
    ______트리뷰에 데이터 채우기
    ______Treeview 레코드 정렬
    ______Treeview의 가상 이벤트 사용
    __Treeview로 레코드 목록 구현
    ____RecordList 클래스
    ______Treeview 위젯 설정
    ______Treeview에 스크롤바 추가
    ______Treeview 채우기
    __애플리케이션에 레코드 목록 추가
    ____레코드 폼 수정
    ______인스턴스 속성 추가
    ______레이블 추가
    ______load_record() 메서드 추가
    ____애플리케이션 레이아웃 개선
    ______Ttk Notebook 위젯
    ______애플리케이션에 노트북 추가
    ____콜백 추가와 수정
    _______show_recordlist() 메서드
    _______populate_recordlist() 메서드
    _______new_record() 메서드
    _______open_record() 메서드
    _______on_save() 메서드
    ____주 메뉴 변경
    ____프로그램 테스트
    __정리


    09장. 스타일과 테마로 룩앤필 개선
    __Tkinter 이미지 작업
    ____PhotoImage
    ______PhotoImage와 변수 범위
    ____Pillow를 사용한 이미지 지원 확대
    ____회사 로고 추가
    ______이미지 경로 문제
    ____윈도우 아이콘 설정
    ____버튼과 메뉴에 아이콘 추가
    ______BitmapImage
    __Tkinter 위젯 스타일링
    ____색상 속성
    ______주 메뉴에 위젯 속성 사용
    ____태그를 사용한 위젯 콘텐츠 스타일링
    ______태그를 사용한 레코드 목록 스타일링
    __Tkinter 글꼴 작업
    ____Tkinter 글꼴 설정
    ______문자열과 튜플을 사용한 글꼴 설정
    ______font 모듈
    ____ABQ 앱의 글꼴 설정
    __Ttk 위젯 스타일링
    ____Ttk 스타일링 해부
    ______Ttk 위젯 분석
    ______테마 사용
    ____ABQ 앱에 색상 추가
    ______개별 위젯 스타일링
    ______오류 레이블 색상 변경
    ______오류 시 입력 위젯 스타일링
    ____테마 설정
    ______테마 선택 메서드
    __정리


    10장. 크로스플랫폼 호환성 유지
    __크로스플랫폼 파이썬
    ____파일명과 파일 경로
    ______경로 구분자와 드라이브
    ______대소문자 구분
    ______심볼릭 링크
    ______경로 변수
    ____플랫폼 특정적인 라이브러리와 기능
    ______플랫폼 특정적인 라이브러리
    ______로우레벨 호환성 확인
    ______subprocess 모듈의 위험성
    ____텍스트 파일의 인코딩과 포맷
    ____GUI 모드와 콘솔 모드
    ____플랫폼에 따라 변경되는 코드 작성
    __크로스플랫폼 Tkinter
    ____플랫폼별 Tkinter 버전 차이
    ____크로스플랫폼 애플리케이션 메뉴
    ______Menu 위젯의 특별함
    ______메뉴 지침과 표준
    ______메뉴와 단축키
    ____크로스플랫폼 글꼴
    ____크로스플랫폼 테마
    ____전체 창 모드
    __크로스플랫폼 ABQ 앱
    ____설정 파일 저장
    ____CSV 인코딩 지정
    ____플랫폼 맞춤형 메뉴
    ______MainMenu 클래스 준비
    ______단축키 추가
    ______윈도우즈용 메뉴
    ______리눅스용 메뉴
    ______맥OS용 메뉴
    ______셀렉터 함수
    __정리


    11장. unittest로 테스트 자동화
    __테스트 자동화의 기본
    ____간단한 단위 테스트
    ____unittest 모듈
    ______테스트 케이스 작성
    ______TestCase 단언 메서드
    ______픽스처
    ______모의객체
    ______복수의 단위 테스트 수행
    __Tkinter 코드 테스트
    ____비동기 코드 관리
    ____사용자 액션 시뮬레이션
    ______이벤트 시퀀스 지정
    ____포커스 관리
    ____위젯 정보 취득
    __ABQ 앱을 위한 테스트 작성
    ____데이터 모델 테스트
    ______파일 읽기 테스트
    ______파일 저장 테스트
    ______나머지 테스트
    ____Application 객체 테스트
    ____위젯 테스트
    ______ValidatedSpinbox 위젯의 단위 테스트
    ______ValidatedSpinbox의 통합 테스트
    ____믹스인 클래스 테스트
    __정리


    12장. 데이터 저장소 개선
    __PostgreSQL
    ____PostgreSQL 설치와 설정
    ____pgAdmin으로 PostgreSQL 설정
    ____명령으로 PostgreSQL 설정
    __관계형 데이터 모델링
    ____기본키
    ______대리키
    ____정규화
    ______제1정규형
    ______제2정규형
    ______제3정규형
    ______더 높은 단계의 정규형
    ____개체-관계 다이어그램
    ____데이터 타입 할당
    __ABQ 데이터베이스 구축
    ____테이블 생성
    ______룩업 테이블 생성
    ______lab_checks 테이블
    ______plot_checks 테이블
    ____뷰 생성
    ____룩업 테이블 채우기
    __psycopg3를 사용한 PostgreSQL 연결
    ____psycopg2 기초
    ____파라미터화 쿼리
    ____특별한 커서 클래스
    __ABQ 앱에 SQL 통합
    ____새 모델 작성
    ______데이터 저장
    ______현재 종자 샘플 가져오기
    ____Application 클래스 변경
    ______SQL 로그인 구현
    ______Application
    ______파일 관련 코드 제거
    ____DataRecordForm 수정
    ______필드 순서 조정
    ______load_record() 수정
    ______자동 채우기 개선
    ____RecordList 수정
    ____마무리
    __정리


    13장. 클라우드 연계
    __urllib을 사용한 HTTP
    ____HTTP 트랜잭션 기초
    ______HTTP 상태 코드
    ____urllib.request로 콘텐츠 다운로드
    ______POST 요청 생성
    ____기상 데이터 다운로드
    ______기상 데이터 모델 만들기
    ______XML 데이터 파싱
    ______기상 데이터 저장소 구현
    ____다운로드 기능을 위한 GUI 요소 추가
    __requests를 사용한 RESTful HTTP 서비스
    ____RESTful 웹 서비스의 이해
    ____파이썬 requests 라이브러리
    ______requests 설치와 사용
    ______세션을 사용한 인증 통신
    ______requests.Response 객체
    ____REST 백엔드 구현
    ______authenticate()
    ______upload_file()
    ______check_file()
    ______get_file()
    ____REST 업로드 적용
    ______CSV 파일 생성
    ______업로드 콜백 추가
    ______마무리
    __paramiko를 사용한 SFTP 서비스
    ____테스트용 SSH 서비스 준비
    ____paramiko의 설치와 사용법
    ______paramiko 사용법
    ______연결 정보 조사
    ______SFTP 사용
    ____SFTP 모델 구현
    ______파일 업로드
    ______파일 존재 확인
    ____SFTPModel 사용
    ______마무리
    __정리


    14장. 비동기 프로그래밍
    __Tkinter 이벤트 큐
    ____이벤트 큐 제어
    ______update()
    ______after()
    ____일반적인 이벤트 큐 제어 방법
    ______매끄러운 화면 변화
    ______GUI 프리징 완화
    __스레드로 백그라운드 코드 실행
    ____threading 모듈
    ______Tkinter와 스레드 안전
    ____네트워크 함수에 스레드 적용
    ______ThreadedUploader 사용
    ______큐를 사용한 메시지 전달
    ______Queue 객체
    ______큐를 사용한 스레드 간 통신
    ____ThreadedUploader에 큐 추가
    ____통신 규약 정의
    ____업로드 스레드에서 메시지 전송
    ____큐 메시지 처리
    __락을 사용한 공유 자원 보호
    ____Lock 객체
    ____Lock 객체를 사용한 동시 업로드 방지
    ______GIL
    __정리


    15장. 캔버스를 사용한 데이터 시각화
    __캔버스를 사용한 그림과 애니메이션
    ____캔버스에 그리기
    ______사각형
    ______원과 부채꼴
    ______선
    ______다각형
    ______텍스트
    ______이미지
    ______Tkinter 위젯
    ______캔버스 아이템과 상태
    ____Canvas 객체의 메서드
    ____캔버스 스크롤
    ____캔버스 애니메이션
    ______필드 만들기
    ______선수 설정
    ______선수 움직이기
    ______게임 루프 실행과 우승 조건 판별
    __간단한 그래프 제작
    ____모델 메서드
    ____차트 뷰
    ____애플리케이션 수정
    __고급 그래프 제작
    ____데이터 모델 메서드
    ____버블 차트 뷰
    ____애플리케이션 수정
    __정리


    16장. 패키징
    __setuptools로 배포 패키지 제작
    ____배포용 패키지 준비
    ______requirements
    ______pyproject
    ______라이선스 파일 추가
    ______실행 파일 제작
    ____setup
    ______기본 메타데이터
    ______패키지와 의존 라이브러리
    ______추가 파일 지정
    ______명령문 지정
    ______설정 테스트
    ____소스 배포판 제작
    ______소스 배포판 테스트
    ____wheel 배포판 제작
    __cx_Freeze로 실행 파일 제작
    ____cx_Freeze 첫걸음
    ____build_exe 옵션
    ____외부 파일의 포함
    ____실행 파일 빌드
    ______빌드 파일 정리
    ____윈도우즈 실행 파일
    ______윈도우즈 인스톨러
    ____맥OS 실행 파일
    ______맥OS 앱 번들
    ______맥OS. dmg 파일
    __정리


    부록 A. reStructuredText 요약


    부록 B. SQL 요약 지침서

출판사 서평

◈ 이 책의 대상 독자 ◈

많은 경험이 없어도 파이썬의 기본만 알면 충분하다. 대형 애플리케이션을 설계하고 구축할 수 있게 차근차근 단계를 밟을 것이며 고급 프로그래머가 되기 위해 필요한 기법들을 설명할 것이기 때문이다.
또한 데이터 과학, 웹 개발, 시스템 운영이 주요 업무더라도 부가적으로 GUI 애플리케이션을 만들 필요가 있는 개발자에게도 적합하다. GUI 애플리케이션 제작에 필요한 지식과 기법을 공부할 것이기 때문이다.
마지막으로 Tkinter에 관심 있는 경험 많은 파이썬 프로그래머에게도 유용할 것이다. 이 책의 상당 부분은 Tkinter 라이브러리의 세부 사항을 설명하기 때문이다.


◈ 이 책의 구성 ◈

1장, ‘Tkinter 소개’에서는 기본적인 Tkinter 라이브러리를 알아보고 간단한 Tkinter 애플리케이션을 제작한다. 또한 그 자체가 Tkinter 애플리케이션의 본보기인 IDLE을 소개한다.
2장, ‘GUI 애플리케이션 설계’에서는 사용자 요구를 구현 가능한 설계로 전환하는 과정을 진행한다.
3장, ‘Tkinter와 Ttk 위젯으로 기본 폼 제작’에서는 CSV 파일에 데이터를 저장하는 기본적인 데이터 입력 애플리케이션을 제작한다.
4장, ‘클래스로 코드 개선’에서는 전반적인 객체지향 프로그래밍 기법뿐만 아니라 좀 더 이해하기 쉽고 관리하기 편한 GUI 애플리케이션을 만들고자 Tkinter만의 클래스 사용법을 살펴본다.
5장, ‘검증과 자동화로 사용자 오류 최소화’에서는 폼에 자동으로 데이터를 채우고 검증하는 방법을 알아본다.
6장, ‘애플리케이션 확장 계획’에서는 하나의 스크립트 파일을 여러 파일로 적절하게 분리하고, 애플리케이션을 파이썬 모듈로 빌드하며, 좀 더 관리가 용이한 코드 기반을 만들고자 관심사 분리를 구현한다.
7장, ‘메뉴와 대화상자 제작’에서는 Tkinter를 사용해 주 메뉴를 제작한다. 또한 통상적인 메뉴 기능을 구현하고자 내장 대화상자를 사용하는 방법도 알아본다.
8장, ‘Treeview와 Notebook으로 레코드 탐색’에서는 Ttk의 Treeview와 Notebook을 사용해 데이터 탐색 시스템을 구현하며, 데이터 추가만 가능했던 애플리케이션을 데이터 읽기, 쓰기, 갱신도 가능하게 개발한다.
9장, ‘스타일과 테마로 룩앤필 개선’에서는 애플리케이션의 색상, 글꼴, 위젯 스타일을 변경하는 방법과 이를 활용해 애플리케이션을 좀 더 유용하고 매력적으로 만드는 방법을 알아본다.
10장, ‘크로스플랫폼 호환성 유지’에서는 애플리케이션이 윈도우즈, 맥OS, 리눅스에서도 자연스럽게 작동하게 하는 파이썬과 Tkinter의 기술을 적용한다.
11장, ‘unittest로 테스트 자동화’에서는 단위 테스트와 통합 테스트의 자동화를 통해 애플리케이션을 검증하는 방법을 알아본다.
12장, ‘데이터 저장소 개선’에서는 안정적인 데이터 저장을 위해 CSV 파일에서 데이터베이스로 저장소를 변경한다. 이에 따라 SQL과 관계형 데이터베이스 모델에 관해 알아본다.
13장, ‘클라우드 연계’에서는 HTTP 서버, REST 서비스, SFTP 서버와 같은 네트워크 자원을 다룬다. 이들 서비스를 사용해 데이터와 파일을 다운로드하거나 업로드하는 방법을 알아본다.
14장, ‘비동기 프로그래밍’에서는 장기 실행 프로세스, 즉 시간이 오래 걸리는 프로세스 실행 중에도 애플리케이션 성능이 떨어지지 않게 비동기 프로그래밍과 멀티스레드 프로그래밍을 적용하는 방법을 알아본다.
15장, ‘캔버스를 사용한 데이터 시각화’에서는 데이터 시각화와 UI 애니메이션을 구현하고자 Tkinter의 Canvas 위젯을 사용하는 방법을 알아본다. 또한 Matplotlib 차트의 사용법도 알아보고 간단한 게임도 만든다.
16장, ‘패키징’에서는 애플리케이션 배포를 위해 파이썬 패키지뿐만 아니라 독립적으로 실행 가능한 파일을 만드는 방법을 알아본다.

◈ 옮긴이의 말 ◈

1991년에 등장한 파이썬이 현재 가장 인기 있는 프로그래밍 언어임을 부정할 사람은 없을 것이다. 특히 AI, IoT, 데이터 분석 등 최근 디지털 영역에서 중대한 역할을 하며 약 20년 동안 왕좌에 있었던 자바를 끌어내렸다.
디지털 영역 외에도 파이썬은 오랜 기간 수많은 패키지가 제작됨에 따라 다양한 분야에서 사용될 수 있게 발전했다. 그중 한 분야는 데스크톱 앱이다. 현재의 웹과 모바일 세상에서도 네트워크 제약 사항, 보안이 필요한 클라이언트, 솔루션 관리, 모니터링, 기타 업무 특성상 독립형 데스크톱 앱의 필요성은 여전하다.
파이썬으로 데스크톱 앱을 구축하기 위한 여러 GUI 라이브러리가 있지만 그중 대표 주자는 Tkinter와 PyQt라고 할 수 있다. PyQt가 디자인 측면에 강점이 있는 대신 난이도가 있다면 Tkinter는 기능 구현에 중점을 둘 수 있게 빠르고 쉬운 개발 방법을 지원한다. 그리고 이 책에서는 Tkinter를 다룬다.
그러나 이 책은 단순히 Tkinter의 사용법만 설명하지 않는다. 가상의 프로젝트를 설정하고 요구 분석, 설계, 개발, 테스트, 운영(유지보수)이라는 각 단계를 거치며 그에 필요한 접근법을 제시함으로써 실제 프로젝트에서 Tkinter를 손쉽게 적용할 수 있게 한다.
또한 데스크톱 앱의 개발 경험이 없는 사람이라면 이 책을 통해 기본적이고 표준적인 GUI 구축 방법론을 배울 수 있다. 이는 Tkinter가 아닌 라이브러리, 심지어 파이썬이 아닌 다른 언어로 데스크톱 앱을 개발할 때도 도움이 될 것이다.
아무쪼록 이 책을 통해 데스크톱 GUI 앱 개발이라는 특별한 역량을 여러분의 인벤토리에 추가하기 바란다.

기본정보

상품정보 테이블로 ISBN, 발행(출시)일자 , 쪽수, 크기, 총권수, 시리즈명, 원서(번역서)명/저자명을(를) 나타낸 표입니다.
ISBN 9791161758428
발행(출시)일자 2024년 04월 30일
쪽수 804쪽
크기
188 * 235 * 37 mm / 1577 g
총권수 1권
시리즈명
프로그래밍 언어
원서(번역서)명/저자명 Python GUI Programming with Tkinter - Second Edition: Design and build functional and user-friendly GUI applications/Alan D. Moore

Klover

구매 후 리뷰 작성 시, e교환권 200원 적립

10점 중 10점
/최고예요
자세하고 쉬운 설명이 좋습니다.

문장수집 (0)

문장수집 안내
문장수집은 고객님들이 직접 선정한 책의 좋은 문장을 보여주는 교보문고의 새로운 서비스입니다. 마음을 두드린 문장들을 기록하고 좋은 글귀들은 "좋아요“ 하여 모아보세요. 도서 문장과 무관한 내용 등록 시 별도 통보 없이 삭제될 수 있습니다.
리워드 안내
구매 후 90일 이내에 문장수집 작성 시 e교환권 100원을 적립해드립니다.
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
판매가 5,000원 미만 상품의 경우 리워드 지급 대상에서 제외됩니다. (2024년 9월 30일부터 적용)

구매 후 리뷰 작성 시, e교환권 100원 적립

이 책의 첫 기록을 남겨주세요.

교환/반품/품절 안내

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

한강 스페셜 에디션
이벤트
  • sam x 한샘 [똑똑한sam]
  • 2025 1학기 대학교재전
01 / 02
TOP