最近的一些编程体会(未完)

原创 2005年05月30日 01:14:00

1,要考虑和优化数据库物理模式实现
    从数据库概念模式转换到数据库物理模式时,不应该完全信赖PowerDesigner等工具自动转换功能,而更应该从业务需求所对应的数据操作来综合考虑物理模式中,数据库的文件I/O存储,表设计所遵循的范式,设计字段的应该考虑的数据类型,数据操作应该考虑的索引,以及为实施数据库完整性而做的各种约束等,数据库的数据完整是不应该依赖于程序的业务规则,而应该数据库内部实现自己的满足业务需求的一套完整性约束,最近回头看了以前做的项目的数据库设计,在数据库关系图中,各个表之间竟然是没有任何关系的 ?除了主键约束,default选项外基本就没有别的约束了,我不知道这样的数据库设计到底有多靠 ?

2,不要掉入缓存陷阱
   在程序中,提高程序性能的方法很大程度上和缓存有关系,起码我以前写程序都是大面积使用缓存的,理由就是数据库连接资源是宝贵的,把内存当成无限的资源了,忽略了其他的所有问题,比如在访问量很大的时候,频繁出现OutOfMemoryException异常或者IIS频繁启动对内存进行回收进程等问题,自从我写了 "" 后,我对使用缓存的态度只有两个字:谨慎

3,预编译ASP.NET所有文件
  ASP.NET应用程序在初次访问时需要执行一次编译过程,在这个过程当中,需要比较多的资源,在这种情况下服务器很容易出问题,象服务器,IIS重起等, AspNetCompiler 可以把所有程序文件编译进程序集,对程序部署和运行性能有一定作用,可以考虑使用

4,合理的异常处理。
  相对底层的代码可以包装异常,但不可以直接处理掉,应该以合适的方式再抛出。对异常进行记录和提供友好界面应该属于系统行为而不是出现异常所在function或者function调用者的行为。但是function调用者可以根据需要多异常多处理。

5,开发没有套路。
  Community Server,.Text,duwamish7 ,petshop等都属于很优秀的开源项目,值得大家深入研究和学习,也更应该把学习到的思想应用到自己项目开发中。但是需要警惕思维陷入这些项目所设定的框框中。因为你会发现他们都很相似。我就见过有人把一个很简单的网站按照asp.net forums论坛的开发方式来开发。应该可以想象到,他们会有多惨吧? :(

6,不闭门造车,防止“过度引进”
   在我们开发中,应该多使用优秀的开源项目,不要什么都自己来写一套。比如日志记录,可以用log4net,生成rss可以用rss.net,搜索可以用dotlucene等等。但是如果你的项目用了N多开源项目,那就应该反问。我们的团队都熟悉这些开源项目吗?风险在那?

 

有用的连接:

编写高性能 Web 应用程序的 10 个技巧

MySQL 存储过程编程(汉化未完)

  • 2011年11月02日 12:28
  • 2.6MB
  • 下载

Matlab2014b与C/C++(VS2013)混合编程(未完)

很多精通单一语言,c语言或matlab的人,在处理经常遇到Matlab与C/C++混合编程的问题,而且都会出现各种编译问题,使得这两种语言之间产生了代购,因为我对这些问题也比较反感,因此做一个简单认识...

MFC控件编程:列表控件、树控件、属性页对话框 (未完)

一、列表控件
  • eldn__
  • eldn__
  • 2014年08月01日 21:51
  • 2003

VB6 IP控件 转VB.NET(未完)

  • 2010年07月13日 23:31
  • 65KB
  • 下载

【Nginx源码剖析-数据结构】双向链表(queue)【未完】

Nginx的双向链表一、双向链表的主要作用链表是一种顺序容器,其主要优势在于可以高效的插入、删除、分割、合并。 在对链表进行移动时,不需要过多的操作,只需要修改指针域的指向。 双向链表是链表的加强...

二人军棋(未完)

  • 2007年01月22日 22:27
  • 525KB
  • 下载

探索 ES6(未完)

  • 2017年04月13日 20:56
  • 407KB
  • 下载

四面体中的二面角(未完)

四面体中的二面角     看到网上讨论两面角计算的网页不少,但总觉得讲得比较简单了一些,不够完全彻底,对我们有时可能不够用或不适用。例如求的不是角度,而是其余弦;没有讲到极性和方向;已知的是两个平...
  • zzwu
  • zzwu
  • 2013年01月10日 11:06
  • 1910

鲁东大学Online judge(未完)

  • 2016年10月03日 19:15
  • 791KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:最近的一些编程体会(未完)
举报原因:
原因补充:

(最多只允许输入30个字)