快速体验 web开发
Contents
以实际功能站点来讲述KarriGell 的愉快应用 ::-- ZoomQuiet [2005-12-10 11:45:59]
1. 缘起
1.1. K0日: 预定
定场诗
前有樱桃,后涡轮;还是推车最贴心。 (CherryPy TurboGears KarriGell) 最贴心,不省心, 一切都要想清楚。 想清楚,就清楚, 一切清楚才清爽! 要清爽,常重构! 没有最爽只有更爽是也乎!
近来,工作之余,使用KarriGell快速重构了原先的一个问卷小系统—— EasyPaper ,对KarriGell 的Web开发感到非常的爽!想分享这种快乐给大家,就结合实际开发的历程和其它的体验,虚拟了一个故事。
- 进入故事前,首先请首肯假设:
- 你对互联网有所了解
- 知道HTML
- 了解CSS
- 了解DHTML
- 了解动态网络的含义
- 理解有PHP或是ASP的开发思路
- 了解Python
了解CherryPy
否则,你会有些迷惑不解的说(~__~)
本故事面向那些控制欲强的人,如果快捷实现的快感,要大于驾驭一切的控制感的程序员并不适合,本故事,他们一定会感觉这样开发太……ugly ~__~
故事约定:
[desc] pname = 啄木鸟问卷 之 “基本知晓” desc = 自学问卷v0.7 learn = <a href='http://wiki.woodpecker.org.cn/moin/CPUG'>CPUG首页</a> # 问卷状态: 0 设计中|1 发布中|2 发布过 done = 0
[ask/1] question= 啄木鸟社区首页在哪里? a = woodpecker.org.cn b = python.cn c = 不知道…… key = a # 正确答案 [ask/2] ... }}}
2. K日故事
::-- ZoomQuiet [2005-12-11 04:52:04]
Contents
3. K日继续:跟自个儿较劲
提出自个儿的建议,为社区贡献
- 应该说,到这会儿,你就要考虑将体验中爽的整理为文章分享,不爽的汇报社区以支持改进……
3.2. 优化
- 减少硬盘的读取次数
- 减少内存占用空间
- 加速响应处理
- 增加并发响应能力
- 等等,是任何功能站点毕定要面对的优化难关…………
3.3. 经验总结
在KarriGell 中摸爬滚打几日,也算体会到一些所谓经验
教程要多看!
- 开始在 pure pih 中纠缠,想来真的累哪!要是早点对 KS 的方便有所体验,就可以节省不少时间
Cheetah 模板系统,已经在 KarriGell 2.2 系统中内含了,没有注意才使用了原始的方式来使用
不过,后来充分信任 HTMLTags 函式化的NHML 生成,感受就非常好也……!
- 勇于尝试,接受不同的思路
- 同时也要勇于抛弃不好的代码
只有更好,没有最好!!
但是,保证当前够用最重要^__^
3.3.1. 有关KarriGell 调试
- 页面空白,源代码都为空时,一定是Python 崩溃,或是不吻合语法规则,根本没有运行起来!
不过,KarriGell 足够皮实,不会崩溃的,马上Ctrl+z 几次,就可以知道哪少括号什么的了
有时候 print object 页面没有任何变化,不要担心
- 看一下子HTML 的源代码吧!
类似<mod_ks.Script instance at 0x00E56DF0> 这样的Python 对象属性输出,在页面中会被浏览器处理为非法HTML节点而不显示的!
- 作为一个快捷开发为豪的人,一定要不求甚解……
- 好使就成,至于到底为什么,先别想,将来自然会明白的,
要知道人脑有下意识的,你的所有疑问会在后台进程中一直运算到解答为止,即所谓灵感是也乎
有时候,明明白白是个字典,但是就不让你使用看到的键值来调用内容,那未就使用.keys()[]的方便来调用,反正,你只是要内容,不管键名的小脾气的
3.3.2. 有关站点组织
- 重构是自然的
- 设计不如实现
- 开始一定是模糊的遐想,只有快速变为可接触的功能,才可以进行改善
这样的开发才是最自然的
冲动->弱功能->利用已有的模块->可用->优化->如果牵连出多于三个以上的大问题的修改,立即换个方法 ^ | | | +----------------------------------+
- 面向数据是核心……在理性用户面前
- 要连续作业!!不然的话的随意定的变量是干什么的,你明天一定想不起来
- 所以,也只有 Python 才有可能在少量的变量和代码中,实现你的想象
3.3.3. 有关CSS设计
CSS提供了标准快捷的外观控制的同时也是有问题的...
- 在敏捷开发中,你可以利用 CSS 快速改变外观,
- 但是与语言不同的在于,CSS 不能进行编辑判别,你只能 为不同的情况设立专用的ID或是类来协助命中
- 导致,CSS的设定增长的速度可以比你使用的函式还要快
- 可惜,现在没有什么好的想法来进行有效,聪明的控制
3.4. TODO
- 利用几天空闲时间,快速将原来的 数据库为 基础,PHP版本的简单问卷系统重构为纯Python的
- 大多数功能都是随想随实现的,没有进行规划,要进一步开发的话:
3.5. 实例下载
3.6. 讨论
返回 KarrigellWebDev -- 快速体验K开发
4. 反馈
自由讨论
- 不错,快速中文karrigell教程。 --tomz
咳咳咳,还没有公告发布哪……(~__~)||| 这才发现,幸好有Leo 将以往的尝试全部快捷保存下来了,这才使回忆不是很痛苦的事儿……堆积代码很简单,但是要讲好故事就不是简单的事儿了……向大师们学习中 -- ZoomQuiet