这里是第2周任务的概要笔记,详细过程参见各章节。
第2周任务分解
2017年1月19日11:31:46
开始阅读ch2卡包,卡包中已经将任务进行了分解,我再基于个人经验将其略做调整,安排如下。
本周目标
制作一款GUI软件。在首个MVP基础之上,制作出桌面版的天气查询软件。
分解步骤
生成窗口:制作标准桌面窗口,并为桌面窗口添加必要控件。
使用控件:捆绑控件与代码逻辑。
增添功能:使用ch1 MVP中的功能函数,完成可用版本。
使用Module:让GUI与CLI两个版本共享同一份代码。
软件美化:添加背景。
参考资料
About GUI
- tkinter — Python interface to Tcl/Tk.
- Tkinter 8.5 reference: a GUI for Python
- An Introduction To Tkinter
- IDLE and tkinter with Tcl/Tk on macOS
- Modules
About Object-Oriented Programming
About More
- tkinter.ttk — Tk themed widgets
- tkinter.scrolledtext — Scrolled Text Widget
- The Tkinter PhotoImage Class
子任务一:生成窗体
2017年1月19日17:23:55
开始阅读An Introduction To Tkinter与Python 2.7的Graphical User Interfaces with Tk。
2017年1月19日20:56:41
继续学习An Introduction To Tkinter当中的例子。
2017年1月19日21:32:20
完成第一个简单窗体。
子任务二:使用部件
2017年1月20日15:46:25
继续阅读An Introduction To Tkinter,目标是添加更多显示器件,满足作业里面提到的各项要求。
2017年1月22日06:50:15
前天遗留的添加更多显示器件,并且合理布局未完成,接着做。
2017年1月22日07:38:55
一个番茄钟,搞定。
子任务三:增添功能
2017年1月22日07:40:05
接下来需要做的便是给各个控件添加功能,使其点击之后有对应的操作。
2017年1月22日17:33:42
完成子任务,差一点就走不动了,耐着走一会儿,通了。
子任务四:使用Module
2017年1月22日20:23:00
时间比较紧迫,可能美化的工作做不完,但自己希望可以在两小时之内降Module使用起来,让代码具有更好的可读、可扩展性。
2017年1月22日21:59:11
完成Module拆分,并简单重写了CLI与GUI。
BGM&彩蛋
ch2推荐的BGM是Be Happy,彩蛋三个: