[习惯统计:桌面]遇到的问题&反省(1)

来源:互联网 发布:死亡实验2001知乎 编辑:程序博客网 时间:2024/06/05 05:07
虽然学生时代也做过几个项目,但是总觉得这次是不一样的。
总是脑洞很多从来不做... 所以在小伙伴问起你说你很喜欢那你做了些什么呢... 无言以对!
之前也按敏捷开发的流程一本正经的做了个看板,各种需求什么都一条条列下来,要优先实现的五个功能... 然后开始设计类什么的,然后就卡住没有然后了!看起来一切都井井有条,但是一行关于这个游戏的代码都没有敲下来过!连项目都没有建好嘛......
我发现对于我这种完美主义的强迫症,这么干好像是行不通啊。
而且我断断续续看起来接触了很多语言概念什么的,其实并没有一个超级精通可以自信满满说你尽管放马过来的TOT
所以这次我看完Mongo教程又觉得Oh so easy之后励志要自己实现一个有应用它的东西。跟着教程一个个功能,特性感觉并没有学会,只是知道了,在你要用的时候能对他还有个印象就不错了。
刚好最近又在优化自己的自我管理流程,想着就做个统计习惯的应用吧,刚好可以解放双手不用画图了~

刚开始想想很简单的嘛,几个界面画个图,基本结构马上想到十字链表,而且也很合适非关系型。自信满满的给自己设定了一个星期的完成时间。那是2.29-3.6号的事情了,结果是开始思考数据库之后发现之前学的非常浅,又返回去测试我的设想能否在Mongo做到,哪些要交给程序来实现。一周过去了,只找了个图标,设计了界面和数据库。
泪眼汪汪的跟小伙伴吐槽,为什么项目总是不能按期完成,因为程序员们都自信满满的乐观着。

我发现设置deadline这种事儿对我好像依然没什么作用... 于是回到对自己最原始的要求,每天>1h的代码时间,并且有能看得到的进展。在这样的政策下我在上周完成了界面(虽然丑的恨不能自戳双目,并且1.0的界面从原定的4个砍了一半...就实现了俩)。这周开始读写数据库。真正写了又发现我对数据库的设计非常不合理,还是用关系型表关联的思路在思考。于是昨天又重新设计测试了一番。

接下来是一些反省,希望这些也会对你有帮助。
  • 善用、警惕你的完美主义
我本来忍不住想问问大神小伙伴们,他们是如何开始人生第一个项目。因为我真正自己做之后发现要考虑的好多...比如说我用了MongoDB做存储,那我到时候项目打包发布要怎么闹。我本来没想着把它做成B/S,C/S这种架构,只是因为十字链表不知道怎么存,然后又刚好刚学了点MongoDB忍不住用用看。还有很多其他应该要很早考虑但是限于能力和眼界没有考虑的事情都会在中途跳出来回滚你的进度... 但是想想这个问题有损我一向英明神武的形象啊(这种东西你真的有过嘛...)于是我先偷偷的去知乎搜了一下,意识到一个问题,并不是每个人都是完美主义的,对于可以比较容易接受不完美的人来说,完成第一个项目并没有那么难。
对于像我一样完美主义,受成就感激励的类型。我的建议是:
    1. 千万不要等一切都准备好了才开始。版本控制,界面设计,相关的新技术,设计模式... 太多太多,但是等你都准备好了你的灵感和激情已经过去了。
    2. 有了灵感和基本思路,马上新建一个项目,敲下第一行代码。接下来你的完美主义会督促你完成。
    3. 控制自己专注在重!要!的事情上。就像上面说到的丑哭的界面,刚做完的时候真的是要用意志力控制自己不要去修改它,先把逻辑做完。
    4. 不要过早优化!!!尽量为以后留出更多的可能性。虽然这话很多书都有说过,但是体会和应用真的是另一回事,你知道但是意识不到。有一回我在纠结应该用哪种方法更完美更有效率,一行代码都没有写,犀利的小伙伴又出现了,他问我这么点空间真的有必要嘛....很有道理,后来我学数据库的时候又重温了这个概念,找到成为性能瓶颈的SQL,针对他优化。
0 0