개드립

즐겨찾기
최근 방문 게시판

파이썬 무료 코딩 강의를 만들었습니다 ! - GUI 편

안녕하세요!

 

지난달에 올린 게임 개발편에 이어서 파이썬 GUI편 강의를 만들어서 개붕이들께 신고 드립니다.

지난글 : https://www.dogdrip.net/258601996
 

* 미리 사과드립니다.
재미 없는 글이라 죄송합니다 ㅋㅋ 

 

예전에는 읽게에 연재 했었는데 운영진께서 "읽게인데 왜 읽을 건 없고 볼 것밖에 없냐, 유게로 가라" 고 하셨던 적이 있어서 유게에 씁니다...
공부 글 보기 싫으신 분은 뒤로 가기를 눌러주세요


-------------------------------


저는 취미로? 그냥 뭔가 해보자 해서 코딩 강의를 만드는 사람입니다.
어쩌다 보니 3년째 이 일을 하고 있네요 ^^

 

대학시절 제가 처음으로 배운 언어는 C 였습니다.

(아, 꼬꼬마 시절에 GW-BASIC 도 배워보긴 했지만, 논외로 하겠습니다 ㅋ)

 

C를 배우면서 느낀 점은 이랬습니다.


1. 어렵다
2. 어렵다
3. 어렵다
4. 아 C.. 뭔 소리야
-- 포인터 수업 이후 --
5. 기억 없음

 

1.png

 

교수님은 열심히 가르쳐 주셨죠. 정말 열심히요.

 

2.jpg

 

그런데 한 가지 의문이 남았습니다.

 

"왜 글자만 나오지?? 내가 쓰는 프로그램들은 모두 예쁜 그래픽이 있는데?"

 

압축 프로그램, 워드, 게임, 브라우저는 물론 하다 못해 메모장, 그림판, 지뢰찾기도 모두 예쁜 창 안에 버튼과 이미지 등등이 있었지요.

 

너무 궁금해서 조교님께도 여쭤봤지만 돌아오는 대답은

 

"공부 하다 보면 알게 돼요. C 하나만 제대로 해도 먹고 살 수 있어요"

 

3.jpg

 

네, 지금 돌아보니 조교님의 말씀은 틀리지는 않았어요.


하지만 그 때 당시 저는 너무 답답했고 그 이후로도 글자만 나오는 코딩만 하며 개발에 크게 흥미를 느끼지 못했습니다.

 

전공 과목 실습이나 과제가 다 이런 식이었어요

 

 

 

C 로 피라미드 만들기라던지
 

4.png

 

 

C 로 구구단 짜기.. 모두 글자만 나왔죠

 

5.jpg

 

어린 생각으로는, 코딩을 배운답시고 이런 것만 만들면, 아무리 열심히 만들어도 차마 누구한테 써보라고 줄 수가 없겠더라구요..

 

제가 원한 모습은 바로 이런 거였죠.

 

최소 자바로 만든 메모장이나

 

6.png

 

뭔가 동작할 수 있어 보이는 이런 거요.
 

7.png

 

네, 바로 GUI 라는 녀석을 덮어 씌운 프로그램입니다.
(GUI : Graphical User Interface)

 

 


이번 활용편 주제가 바로 이 'GUI 프로그래밍' 입니다.

 

파이썬 진영에는 다양한 GUI 라이브러리가 있어요.

(tkinter, PyQt, wxPython, PyGui, PySide, ...)

 

저는 그 중에 가장 쉽고 빠르게 개발할 수 있는 tkinter 를 선정했습니다.
파이썬을 설치하면 자동으로 딸려오는 녀석이기도 하지요.

 

8.jpg

 

국내에는 찾아봤는데 tkinter 를 다루는 강의 영상이 거의 없었습니다.
해외의 모 유료 프로그래밍 교육 사이트에서는 1순위로 tkinter 를 가르치고 있더군요.
근소한 차이로 2순위가 PyQt 구요.

 

그런데 할인되지 않은 수강료가 무려 220,000 원!!! 입니다.
그것도 자막 하나 없이 영어로 말이죠. (당연히 강사가 외국인이니까 ㅋㅋ)

 

22만원이면...

 

9.png

 

물론 굉장히 자세하고 많은 내용을 가르칠 수도 있겠지만,
그래도 저 비싼 돈을 주고 배우기에는 아무래도 부담이 되지요.

 

그래서! 공부에 어려움을 겪을지도 모르는 분들을 위해 제가 직접 만들게 되었습니다 !!


제 생각에는, 이 영상 하나만 보셔도 여러분이 직접 GUI 프로그래밍을 어느 정도 하실 수 있게 될겁니다.

필요한 건 파이썬 기본 지식과 여러분의 소중한 4시간입니다.
늘 그랬지만 영상에 광고는 1초도 없으니 편하게 보실 수 있어요 ^^

 

 


그냥 가르치는게 아니고 (제 짱구를 열심히 굴려서 나름) 체계적으로 커리큘럼을 만들었습니다.

 

10.png

 

 

처음에는 tkinter 의 기초를 먼저 공부하면서 어떤 위젯(widget) 들이 있는지, 어떻게 쓰는지 먼저 공부합니다.

 

 

딸깍 눌러볼 수 있는 버튼도 있구요

 

11.png

 

그냥 글자나 이미지를 보여주기만 하는 레이블도 있습니다.

 

12.png

 

정말 자주 사용되는, 글자를 입력할 수 있는 엔트리와 텍스트 박스도 배우구요.

 

13.png

 

 

여러 항목을 쉽게 관리할 수 있는 리스트 박스도 있어요 ^^

 

14.png

 

이거 자주 보시죠? 체크버튼이지요 ㅋ

 

15.png

 

여러 개 중에 하나를 선택할 수 있는 라디오 버튼도 있어요.

 

16.png

 

이 중요한 것들을 포함하여 몇 가지를 더 배우고 화면 상단 메뉴도 한 번 만들어 봅니다.

 

17.png

 

위젯을 어떻게 내가 원하는대로 배치하는지도 공부해봐야겠죠?

그러기 위해서 키보드의 숫자 키패드 부분을 만들어 봅니다. 

계산기 같기도 하네요 ㅎㅎ

 

18.png

 

그리고 나서는, 기초를 배웠는데 퀴즈가 빠질 수 없죠!

복습 삼아서, 윈도우 메모장과 똑같은 프로그램 하나 만들어보구요.

 

(함께 만든 메모장)

19.png

 

(원본 메모장)

20.png

 

 

물론 여러분이 직접 만들게 되실 거에요 ^^

(10분만에 만들 수 있습니다. 진짜입니다.)

 

 

 

 


여기까지 하는데 영상 기준으로 딱 2시간이면 됩니다.
그 후에는... 제가 너무너무 좋아하는 프로젝트를 진행합니다.
코딩 공부의 꽃은 직접 어느 정도 규모 있는 프로그램을 만들어 보는 것이니까요. ^^


어떤 프로젝트냐면 바로..
인터넷에 보면 드라마나 영화나 TV 프로그램의 주요한 장면을 모아서 하나로 합친 이미지 있죠?
예를 들면 이런 것들이요 (사랑해요 무한도전..)

 

22.jpg

 

 

 

영상을 보면서 원하는 장면을 캡처하고, 캡처한 이미지를 하나씩 합치는 게 보통 일이 아닙니다.
그래서 이 작업을 엄청 편하게 하는 프로그램을 만들어 볼거에요.

 

프로그램의 생김새와 사용법은 대략 이렇습니다.

1. 합칠 이미지를 고르고
2. 저장 경로를 선택하고
3. 시작을 누르면?
끝!!

 

 

..그럴듯 하지 않나요???  ^^

 

24.jpg

 

 

보너스로 키보드를 누르면 자동으로 스크린 캡처를 하여 파일로 저장해주는 유틸리티도 만들어 봅니다.
그래야 진짜로 영상을 보면서 이 프로그램을 사용할 수 있을테니까요 ^^

 

 

여기까지 하시고 나면 
- GUI 프로그래밍은 어떻게 만드는지
- 그동안 글자로만 연습하던 코드가 GUI 와 어떻게 어우러지는지
- 버튼을 클릭하면 동작이 어떻게 연결되는지
- 전체적인 구조는 어떻게 잡는지

등등을 모두 배우시게 됩니다.

 

 

이 영상으로 공부해주세요 ^^


(파이썬 활용편 - GUI 프로그래밍)


목차는 이렇습니다.
1. 소개
2. 활용편2 소개
3. 기본 프레임
4. 버튼
5. 레이블
6. 텍스트 & 엔트리
7. 리스트 박스
8. 체크 버튼
9. 라디오 버튼
10 .콤보 박스
11. 프로그레스 바
12. 메뉴
13. 메시지 박스
14. 프레임
15. 스크롤 바
16. 그리드 기본
17. 그리드 심화
18. 퀴즈 (메모장 만들기)
19. 프로젝트 (이미지 합치기 프로그램 만들기)
20. 레이아웃 전반전
21. 레이아웃 후반전
22. 레이아웃 연장전
23. 파일 추가 & 선택 삭제
24. 저장 경로
25. 자동 스크린샷
26. 이미지 합치기
27. 프로그레스 바 연동
28. zip
29. 옵션 전반전
30. 옵션 후반전
31. 버그 수정
32. (보너스) 스크린 샷 프로그램

 

 

 

 

이 강의의 대상은 파이썬 기초 문법을 어느 정도 아시는 분들입니다.

파이썬을 아직 모르는 분이 계시다면 아래 영상으로 먼저 공부해주세요 ^^

 

(파이썬 기본편)

 


이후 구상중인 커리큘럼입니다.

1. 게임 개발 (완료)
 - 오락실에서 하던 Pang 게임

2. GUI 프로그래밍 (완료)
 - 영상에서 캡처한 여러 이미지들을 하나로 합치는 프로그램

 

*3. 웹스크래핑 (제작 중)
 - 내가 원하는 뉴스를 매일 자동으로 긁어오는 프로그램

 

4. 업무자동화
 - 엑셀, 인터넷, 데스크탑 등 컴퓨터에게 일을 시키는 스크립트

 

5. 데이터 분석 및 시각화
 - 빅데이터를 활용한 대한민국의 인구 문제 분석

 

6. 얼굴 인식
 - 이미지 / 영상에서 얼굴을 인식하여 얼굴 위에 재밌는 캐릭터 씌우기

 

7. 머신러닝
 - KNN 을 통해 사용자별 영화 추천 시스템 개발

 

8. 사물인터넷
 - 아두이노를 활용한 RC Car 제작


코딩, 파이썬 공부하시려는 분들께 작게나마 도움되면 좋겠습니다.
감사합니다. ^^

179개의 댓글

2020.06.19
@hfjhkvlhf

0
2020.06.19

정독하면 취직쌉가능인가요

0
2020.06.19
@알파카달팽이

아니요 취직 보장 절대 안합니다. 그냥 개발 할 줄 아는구나~ 어쩌면 내가 개발과 잘 맞을수 있구나지, 취직은 조금 더 깊이 해야돼요

0
2020.06.19
@나코

취직 가즈아~~

0
AZ
2020.06.19

맨날 CLI쪽으로만 코딩하다가 GUI 띄우면 재미지지 ㅋㅋㅋ

0
2020.06.19
@AZ

진짜 텍스트 으으으 ㅋㅋ 너무 지겨웠어요

0
2020.06.19

센세..

0
2020.06.19

잘 모르지만 ㅊㅊ

0
2020.06.19

최근에 파이썬으로 개인적인 프로그램 만드는데 시간이 좀 지나도 종종 뮬어봐도 되나용?

0
2020.06.19
@점심추천해줘

제가 아는거면 도와드릴수 있어요 ㅋ 어려우면 지지..

0
2020.06.19

그머냐 메모장 내용 sqlite로 내보내는거랑 그거 웹서버로 연결하는거좀 알려조

0
2020.06.19
@realpolitik

댓글 몇글자로 알려줄수는 없어요 ㅠㅠ ㅋㅋㅋㅋㅋ sqlite 랑 flask 키워드로 검색하시면 ^^

0
2020.06.19

요즘 파이썬으로 크롤링하는재미에 붙어사는데 gui만드는법을몰랐걸랑 한번 보고갈게 (c++ 4년차 프로그래머 ㅠ)

0
2020.06.19
@VEngineer

어? 씨뿔뿔 개발자면 PyQt 로 가시죠

0
2020.06.19

회원님 고맙읍니다.

역량 개발에 큰 힘이 되었읍니다,,,

0
2020.06.19
@아난다

감사합니다^^

1
2020.06.19

몇달전부터 공부할려구 구독했는데.. 빨리 방학 시작하면 해야지

0
2020.06.19
@14828764718

ㅋㅋㅋ 여유될때 보세요

0
NML
2020.06.19
0
2020.06.19
@NML

감사합니다

0
2020.06.19

정말 꿈이 언어배워서 게임회사 취직하는거였는데

너무 애매하게 좋을델 입사해버림

0
2020.06.19
@살개붕이

오우 입사 추카여 ㅋㅋㅋ 큰 숙제 해결하셨네요

0
2020.06.19

추천 먼저 박고... 머신러닝하고 딥러닝 공부해봄??

0
2020.06.19
@아레오

머신러닝만 조금이요 ^^

0
2020.06.19

공짜강의는 개추야

0
2020.06.19
@신라면순한맛

감사합니다 ㅋㅋ

0

그냥 하는 말이 아니라 지난 학기 처음으로 도전해본 파이썬 교수님보다 잘가르침ㅋㅋㅋ 코딩 배울 일이 없는 학과라 어려워했었는데 되려 학교 강의보다 쉬웠음 이번에도 잘 볼게용^^

특히 데이터분석이랑 KNN 파트 너무 기대됨

0
2020.06.19
@박보영남자친구

고마워요 ^^ 도움된다니 진짜 보람찹니다. 기대하신 만큼 좋은 강의로 보답할게요!

0
2020.06.19

형 유튜브에도 댓글 달았는데 진짜 고마워 혼자 공부하기 참 힘들었는데 형 덕택에 수월하게 하고 있다 !

0
2020.06.19
@속이메스꺼워

ㅠㅠ 피드백 감사합니다. 큰 힘이 됩니다 ㅋㅋ 열심히 준비할게요

0
2020.06.19

감사합니다 요즘취미로배워보고싶었는데

0
2020.06.19
@hn7324

취미로 딱입니다 ^^

0
2020.06.19

세상을 빛내는 글 닥추

0
2020.06.19
@스위트콘

감사합니다 ㅎㅎ

0

재능기부 멋있다

0
2020.06.19
@마음이잘못했네

얕은 지식이라도 좋게 봐주셔서 감사합니다

0

데이터분석은 numpy pandas 맷플랏 만 잘해도됨

하기전에 교양 통계정도 듣고 하는걸 추천

0
2020.06.19
@쌍방울레이더스

조언 감사드려요 ^^ 데이터 분석때 대부분 다루겠습니다

0
@나코

크롤링은 셀레니움 패키지로 할 예정인가요?

0
2020.06.19

7번 존버한다 ㅎㅎ

0
2020.06.19
@자봉

좀 걸리겠지만 좋은 내용으로 준비할게요!

1
2020.06.19

훌륭해!

0
2020.06.19
@동갠이

감사합니다 ^^

0
2020.06.19

학부 수업 과제로 파이썬 기반 프로젝트에서 pyqt 기반 ui 구현에 진짜 스트레스 받았었는데.. 저렇게 깔끔하게 정리해준걸 그 때 만났으면 얼마나 좋았을까

0
2020.06.19
@Arsenal

ㅠㅠ 겪으셨을 시행착오가 고스란히 전해지네요. 그래도 학부생이시라면 PyQt 가 더 쓸모있을거에요 ^^

0
2020.06.19

나는 C하다가 파이썬하니까 너무 불편하던데

0
2020.06.19
@승냥

C 개발자라면 굳이 파이썬 안하셔도 ㅋㅋㅋ

0

예전부터 채널 구독중임 ㅅㅅ 힘내세여

0
2020.06.19
@병신만보면짖는개

감사합니다 ^^ㅋ

0
2020.06.19

와드!

0
무분별한 사용은 차단될 수 있습니다.
제목 글쓴이 추천 수 날짜
펜타포트 qwer 인스타 댓글 68 돈짠 50 12 분 전
부활절 기념으로 좀 비싼 빵을 파는 성심당 41 등급추천요정여름이 33 20 분 전
블아)용사 아리스의 모험.manhwa 16 창원시진해구이동... 31 20 분 전
스위스가 다른나라에 비해 월등히 많다는것 27 등급추천요정여름이 32 22 분 전
세계적 스타였던 존 트라볼타가 나락간 이유 37 방구를그냥 46 25 분 전
트위터 뒷계로 남성 혐오 글 쓰다 걸린 버튜버 사과문 게시 69 TWINS다현 56 27 분 전
병무청장, '예체능 군면제' 폐지 시사.news 86 자취생K 67 36 분 전
펜타포트 qwer 사태에 반응이 각기 다른 이유 중 하나 138 김츼 116 55 분 전
아바타 본 사람은 대부분 가지고 있는 생각 42 시바 84 57 분 전
요즘 PC방 인터넷 속도 홍보 근황 44 TWINS다현 123 1 시간 전
일본 연예인이 생일에 효도하는법 30 IlllIIIllIIl 67 1 시간 전
잔다르크는 정말 안꼴렸는가? 50 나는솔로 107 1 시간 전
"中, 알리·테무 통해 개인정보 빼내" 60 TWINS다현 70 1 시간 전
ㅇㅎ) 일본 조회수 200만 넘은 짤.gif 43 시바 74 1 시간 전
우러 전쟁 교훈...... 전투복 바뀐다 43 F150Lightning 41 1 시간 전
고대인 여성얼굴 발표... 네이버 반응.jpg 105 뚜비두밥밤바바 80 1 시간 전
현재 트위터에서 핫한 짱구 사촌형 66 판다곰 99 1 시간 전
삼국지 조조의 관도대전 승리 직후 대인배 코스프레 실체.jpg 54 카이부츠와다레다 68 1 시간 전
박진영 미담을 풀고싶었던 비 35 엄복동 82 1 시간 전
(´Д` ) 17 Blacky 95 1 시간 전