[29期] 做完项目的一些体会

来源:互联网 发布:python编程入门书籍 编辑:程序博客网 时间:2024/05/03 20:20
前言:
在第一个项目中我觉得我有两个地方感受比较深刻,第一个就是要有一个良好的心态,第二个就是要有扎实的基本功。我就分开说说我对这两部分的体会


心态篇
在做项目的过程中深刻的体会到一个良好的心态对做项目的影响。在程序遇到问题的时候第一反应如果是:’唉,怎么又出现问题了……,这种心态绝对会影响到问题解决的速度。但是如果你的第一反应是:’哈哈,终于出现问题了,解决了它,我的经验就又多了,我就又变强了!。这个时候心态就很好,对于问题的解决绝对会有帮助。所以要养成习惯,在遇到问题时默默对问题说一句(也算是对自己的鼓励):’小问题,你奈我何!
在项目中第二个需要的良好心态就是耐心,要把一个项目想象成一个马拉松而不是短跑。有时候可能一激动做上一天的项目,然后第二天干别的去了。这种短跑式的做法最终会被项目拖死的。跑马拉松最重要的就是要匀速,在项目中也一样,有耐心,慢慢来,而不能为了追求速度晚上做到两点然后第二天十二点起床。我的做法是每天做8-10个小时的项目,每个小时休息10分钟。感觉还可以。

技术
第一次做项目,总是会有这样那样的问题,其中最大的问题就是技术上的问题。我感觉最影响我做项目的问题就是对于知识点的熟练程度。比如一些系统函数的应用,参数的输入顺序,每次都要查手册,很影响效率,而且一不小心参数弄反了很影响心情。因此对于常见的函数要极其的熟悉,包括每个参数的顺序和作用。我的解决方法就是找一个小本子,每次遇到不熟悉的函数需要查手册之前先把函数抄下来,有空就看,慢慢不熟的函数都熟了。
过了系统函数那一关后就到了考验逻辑思维这一关了。对于这一关的克服只能是多做总结。在遇到问题时先不要着急立刻去找人解决,要先把问题描述清楚记录下来,然后再想办法解决。在问题解决了之后不要立刻就做别的,回过头来想想自己第一次是哪里没想到,记录下来,这是自己的知识盲点,常看常练,这个东西一口吃不成胖子,只能慢慢来,量变引起质变。坚持下去,就会发现自己变强了。下边是我在项目过程中的一些总结,有些现在看来很简单,但当时费了一番功夫才弄出来的。
1 . 数据库的良好设计可以简化很多后期的代码,所以在设计数据库的时候充分考虑到表和功能的结合,以方便后期的调用;
2.页面之间使用’?’传值的时候不要使用id,要让命名有意义,如uid(表示用户id)sid(表示板块的id)tid(表示帖子的id)
3. 首页:index.php,首页的实现比较简单,将板块的内容单独存在一个表中,首页的实现只要循环从数据库中拿出需要的数据就可以了。但是为了实现超链接的功能,必须在输出板块的描述的时候同时要使用‘?’传参以方便下一个页面的接受(segment.php)
4. 每个单独的板块页面:segment.php.实现的方法同首页类似,但不同的是要得到从首页传过来的参数(sid),然后在主题贴里边寻找到属于该板块的所有主题贴(通过板块id来查找,并将所有的结果循环输出)。为了实现超链接的功能,这里要注意的是输出主题贴的同时也要使用’?’传参,以方便下一个页面的接受(content.php)
5. 每个主题帖的页面:content.php.接受从segment.php传过来的帖子id,先输出主题贴的内容,然后去回复表里边搜索所有主题贴为此贴id的回复贴,并循环输出。
6. 增加板块(addSeg.html):通过form表单传值,addSeg.php文件直接往板块的表里边插入即可(有自增键)
7. 发表主题帖子(theContent.php):只有进入到某个板块中的时候才会有发表主题帖子的功能。发表主题贴的时候要注意接受index.php传过来的板块id并将其做为主题贴的bid插入到数据库当中(即主题贴所属的板块)。同时要注意的是发表贴之后如果要跳转到原来的板块需要在跳转的时候再传一次板块的id
8. 本来有一个recontent.php专门用来回复帖子,但是后来把这个页面加到content.php中了。Recontent.php只是用来插入数据库然后跳转回主题贴浏览状态。插入数据和发表主题帖子类似,只有进入到主题帖页面(content.php)中才会有回复的功能。发表回复的时候要注意接受theContent.php穿过来的主题贴id,tie,将其作为自己的一个属性插入到数据库当中。同时要注意的是发表回复之后如果要跳转到原来的主题贴当中的话则需要在跳转的时候再传一次帖子的id.
9. 有些功能(比如回复功能),第一次回复后可以自动跳转到帖子的页面,但是此时该页面可能会有数据的丢失,比如板块的id。对于帖子没有影响,但是一些细小的超连接可能会失效。要注意每次留言后跳转页面的的时候不要丢失数据
10. 对于验证码,要有一个文件(yzm.php)专门生成该图片,然后将验证码的内容用SESSION传值以用来后期的验证(生成验证码的函数生成图像后返回的$String)
11.创建表的时候mysql_affected_rows()的值为0(验证判断条件的时候容易错)
12.关于Include文档,在修改被包含的文件时可能对页面没影响。这时先改一下Include中任意一个字母,刷新报错后再改回来就可以了。貌似不这样就不会重新包含文件(对于这个BUG真是无语了)
13.关于命名规则,在做的过程中对于命名始终无法很顺利,什么时候用拼音,什么时候用英文,什么时候用简写(passwdpasswordFengshafs的选择),什么时候用完整的名称(contentcon的选择)
关于包含文件:
14. 在连接数据库的时候,直接包含common.inc.php.这个文件包含了函数和常量。其中函数connect()直接就连好了数据库(:无须传任何参数,直接返回一个资源),但是没有选择数据库,需要运行一下mysql_select_db();同时这个函数也规定了Phpmysql握手时的字符集(DB_CHARSET)//这个是我自己使用的。。。
总结篇


其实写了这么多,仔细想想也就两条:心态要好、常做总结。在做项目的时候一定要牢记这两条。还有就是对开发进度的把握,现在还没有成熟的体系方法,这是需要后边加强学习的。

原文地址:http://bbs.lampbrother.net/read-htm-tid-92432.html

阅读(33) | 评论(0) | 转发(0) |
0

上一篇:兄弟连,一个很不错的名字。

下一篇:[27期] 我的职业规划--武哲--LAMP27

相关热门文章
  • 毕业五年(续)
  • 毕业五年
  • 职业生涯规划
  • 中国软件开发工程师之痛...
  • 闲置书处理!
  • 大家都是用什么来管理hadoop集...
  • 网站被人挂了吗,添加了些程序...
  • Nginx如何保证不走宕机的那个...
  • 大家谈谈MYSQL客户端和服务器...
  • 以下代码运行后为何会输出5?...
给主人留下些什么吧!~~
原创粉丝点击