项目状况

代码量

TomatoController.py 60行
TomatoModel.py 162行
TomatoView.py 389行

项目文件夹大小:440kb
本来预计用纯python开发这个项目也还需要好多天,没想到上周正好有一天的空闲时间,一下子就把这个项目做得差不多了。
上周的todolist也都完成了:
TodoList
开始任务时的番茄钟记录功能
添加修改任务的方法
添加删除任务的方法
添加中断的方法
添加记录干扰的方法
添加任务完成的方法

在这里插入图片描述
其实功能性的内容,好早就做完了,但是界面上的调整还花了我接近一天的时间,因为遇到一个bug,一直没有解决,就是原来的界面,按钮一直是紧挨着文字后面的,但是我想把文字放到界面的右边,结果一直没成功,问了AI也没解决,最后还专门去了解了下tkinter 的布局,还没解决。最后我来了灵感,换了个思路问AI:
在这里插入图片描述
我让他告诉我调试方法,后来我按照他教我的调试方法,最终定位到问题所在。
所来是我的程序里用了画布来实现滚动,画布里面又创建了窗口,但窗口的大小不受上层pack方法的影响。
最终原因是:
canvas.create_window()创建的窗口项默认不会随Canvas尺寸变化而自动扩展。即使内部Frame设置了fill=tk.BOTH, expand=True,它也只能跟随内容尺寸​(由子组件决定),而不是Canvas的尺寸

经过半天的研究,我终于解决了这个问题。

本来预计要一周以上才能实现这个项目,结果借助ai,我在一天就实现了这个项目,也确实大大提高了工作效率,这在以前是不可想象的。

下一步计划

  1. 实际使用一段时间,测试下相关功能。 我做这个软件主要是自己用的,如果自己不用,那做了也就没多大意义,所以我需要一直用下去。
  2. 在用的过程中,想想需要改进的地方。
  3. 完善界面的部分,因为界面的代码好多是AI生成的,并且界面的代码我还不太熟,有些地方不是十分理解,造成代码感觉有些无序,难以改造,有时间的话,我要重写界面部分的代码。(目前感觉用AI生成代码问题不大,但需要自己看得懂,能修改,不然出bug了都不会改)
  4. 等纯python版的番茄工作法做好后,我再考虑移植到web上去。

Todolist:近期

  1. 增加番茄钟下方按钮的大小
  2. 在主番茄钟开始时,点击下方任务的始按钮,逻辑上的处理问题。
  3. 测试任务的几个按钮的功能是否正常,是否有必要的提示,尤其是删除和完成的时候。
  4. 整理程序的界面部分代码,让代码变得更加清晰。
  5. 打包程序,让程序能独立运行。

Todolist:远期

  1. 添加统计数据,显示今天总番茄数量,在任务列表中展示每个任务已经完成的番茄数。
  2. 显示干扰列表
  3. 显示中断列表,后期数据多时,还可以加上查询条件,比如日期,关键字
  4. 建立远端数据库,让数据可以跨电脑共享
  5. 把整个项目移植到web端

几点思考

  1. 开发过程中如果借助AI的能力?
  2. 一直依靠ai是不是会降低自己的能力,长期反而会降低自己的开发效率。因为花了太多的时间处理bug上的,而一个熟念的开发者写出的代码bug应该是少于ai的。
  3. 程序有没有必要做太多的统计分析功能?程序应该做适度的统计功能,但更复杂的功能是没必要的,可提供数据给用户自行分析。就比如我所在的行业的系统就分一个生产系统,一个查询系统,生产系统里也有查询,但只做必要的查询。
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐