status |
正式 |
完成度:97% |
1. KDay N:经验总结畅想web应用
坚持将爽的整理为文章发布分享了出来,不爽的汇报相关...这些都是对社区的贡献;
最后小白将自个儿在 问卷系统 开发过程中的综合体验,综合到了一张变迁图谱中:
图 KdayN-1 问卷开发元素变迁趋势图
attachment:KdayN-1.gif
- 可以想到的优化方向
- 减少硬盘的读取次数
- 减少内存占用空间
- 加速响应处理
- 增加并发响应能力
- ..等等,是任何功能站点必定要面对的优化... ...
1.1. 经验总结
在KarriGell 中摸爬滚打几日,也算体会到一些经验
1.1.1. 有关Karrigell 开发
教程要多看!
- 开始在 pure pih 中纠缠,想来真的累哪! 要是早点对 KS 的方便有所体验,就可以节省不少时间
Cheetah 模板系统,已经在 KarriGell 2.2 系统中内含了,没有注意才使用了原始的方式来使用
不过,后来充分信任 HTMLTags 函式化的NHML 生成,感受就非常好也... !
- 勇于尝试,接受不同的思路
- 同时也要勇于抛弃不好的代码
只有更好,没有最好!!
但是,保证当前已经完成的功能是可用的,是够用的^__^
1.1.2. 有关Karrigell 调试
- 页面空白,源代码都为空时,一定是Python 崩溃,或是不吻合语法规则,根本没有运行起来!
不过,KarriGell 足够皮实,不会崩溃的,马上Ctrl+z 几次,就可以知道哪少括号什么的了
有时候 print object 页面没有任何变化,不要担心
- 看一下子HTML 的源代码吧!
类似<mod_ks.Script instance at 0x00E56DF0> 这样的Python 对象属性输出,在页面中会被浏览器处理为非法HTML节点而不显示的!
- 作为一个快捷开发为豪的人,一定要不求甚解...
- 好使就成,至于到底为什么,先别想,将来自然会明白的,
要知道人脑有下意识的,小白的所有疑问会在后台进程中一直运算到解答为止,即所谓灵感是也乎
有时候,明明白白是个字典,但是就不让小白使用看到的键值来调用内容,那未就使用.keys()[]的方便来调用,反正,小白只是要内容,不管键名的小脾气的
1.1.3. 有关 Karrigell 站点组织
- 重构是必须的,自然的
- 设计不如实现
- 开始一定是模糊的遐想,只有快速变为可接触的功能,才可以进行改善
这样的开发才是最自然的
冲动->弱功能->利用已有的模块->可用->优化->如果牵连出多于三个以上的大问题的修改,立即换个方法 ^ | | | +----------------------------------+
- 面向数据是核心... 在理性用户面前
- 要连续作业! ! 不然的话的随意定的变量是干什么的,小白明天一定想不起来
- 所以,也只有 Python 才有可能在少量的变量和代码中,实现小白的想象
1.1.4. 有关CSS设计
CSS提供了标准快捷的外观控制的同时也是有潜在问题的...
- 在敏捷开发中,小白可以利用 CSS 快速改变外观,
- 但是与语言不同的在于,CSS 不能进行编辑判别,小白只能 为不同的情况设立专用的ID或是类来协助命中
- 导致,CSS的设定增长的速度可以比小白使用的函式还要快
- 可惜,现在没有什么好的想法来进行有效,聪明的控制
1.2. TODO
至此,小白利用几天空闲时间,快速将原来的 数据库为 基础,PHP为动态语言的简单问卷系统重构为纯Python实现,但是:
- 大多数功能都是随想随写成的,没有进行规划,要进一步开发的话,至少得有:
- 增加,删除问卷
- 丰富问卷形式,可以多选,填写信息
- 问卷的 slide 方式,一页接一页的回答
- 丰富 JVF 的规则集合
优化 JVF 的配置文件处理,嵌入到HTML的 <XML> 数据岛中
优化[http://www.orionlab.net/karrigell_quickform/Karrigell_QuickForm.html KQF] 与 JVF 配合起来,更加方便好用
- 问卷系统外观风格的快速切换~实现皮肤功能
- ... ... 需求是变化莫测的,人的欲望也是无常的... ... 但是,Python 是电池内置的,是足够强大的,是可以支持你所有设想的!
小白愿意分享Pythonic 体验给任何有兴趣的好人,也热切期待好人的好作品!
1.3. 实例下载
使用SVN下载地址:
1.4. 练习
读者做到这一步应该非常非常了解Karrigell的开发流程了, 接下来还是要对已有的web应用进行优化...这些只能通过自己不断的学习慢慢了解 (^_^)
返回 [:ObpLovelyPython/KDays:KDays实例故事]