1.编码规范化可读性优化
编码规范我想一般程序员不会不了解,如果你这方面是空白你应该好好补补基础了,做到编码规范是一个好的程序员的最基础要求,一个团队也应该有自己的编码规范。所以程序的优化也应该包含到这个方面,在你开发程序的过程中可能会有些遗漏,所以在我们进行编码规范化可读性优化是很有必要的。其实一份再好的程序代码若干年后你自己都未必能看的懂更不用说别人来看你的代码,使你自己写出的代码有更好的可读性,这个是一个好的程序员应该做的,并且是对一个团队和你自己作品的责任感。
优化方向就是使你的代码更清析更易懂。
2.程序效率、流程逻辑优化
程序效率的优化是最重要的,程序运行速度是程序代码好坏最重要的因素,程序逻辑其实就是你的解决思路,解决思路并不是唯一的,所以我们可以对它进行优化。逻辑的设计也和可读性有一定的关系,逻辑清晰可读性就更强。
优化的方向就很明确了提高速度,清晰逻辑。简单的逻辑并不代表一定是速度快,复杂的逻辑并不一定是慢的。所以在这两方面是关联。
3.SQL优化,减少查询次数
在使用数据库的程序中我们知道数据库的查询是在整个程序执行中占很大比例的,所以SQL的优化是非常重要的。
优化的方向一方面是SQL语句本身的优化,熟悉SQL的人应该会知道,不同的SQL写法执行的效率差别是很大的,如:尽量不对字段加函数操作 ,更多的大家可以去查找高效SQL这方面的资料。第二在一个页面中减少查询次数,这个道理很清楚,我们可以把整个页面的SQL都输出来进行分析,是否可以合并语句,是否可以做冗余字段等等,尽量减少SQL的查询次数,坚绝不在循环中使用查询。
4.缓存优化
缓存优化其实就是对上一点的补充,但缓存优化是很重要的,所以可以单独列为一点。缓存的数据主要就是从数据库中读取出来的。
对缓存的一些介绍:
1.静态页
静态页是所有大型网站不必有的处理方式,主要对一级页面和所有信息的详细页面的处理。其实静态页就是一种缓存处理,可以最大的降低服务器的负载,还有就是对SEO上的好处。静态页处理属于永久缓存,对于信息的详细页面只有在数据修改时才进行更新和当模版修改时进行批量的更新,对于一级页面进行编辑手动更新和定时更新。
2.小数据的永久缓存
像数据字典,新闻栏目,后台角色、用户等数据少长期不更新的数据可以进行永久的缓存处理。涉及到读取只读取缓存,只在修改数据时直接生成缓存。
3.访问频率高的数据按时缓存
像一些信息的点击率排行,最新数据等数据访问和更新频率高但如果都直接读取数据库肯定对赞成很大的负载,这种类型的数据就必须对数据缓存后定时更新。这里用memcached内存缓存是最好的处理方式。
当然缓存也应该适当,应该只把需要缓存的数据进行缓存。
5.html,css,js文件优化,减少冗余代码
这一点与服务端程序没有关系,主要是与浏览器相关的几方面。html的结构是会影响到浏览器的解析,所以好的html代码也会影响访问速度。相比之下客户端的代码就不允许有一点无用的东西存在,能把文件减少一K就应该减少。js虽然是在客户端执行但也应该去考虑它的效率问题,网络上也有这方面的文章介绍。
6.可用性优化
可用性优化主要指的是UED方面的,并不是每一个团队都有专门的UED,作为web程序的开发人员也应该有这方面的意识,去了解用户,而不是埋头写代码。努力使你开发的页面对用户更友好,更容易使用。
7.框架架构优化
如果有使用到开发框架,也应该考虑到对框架的优化,减少框架本身占用的资源。
其它:服务器架构优化、数据库优化
这些方面和程序开发没有直接关系,但和web程序的运行也是关系密切的,所以顺便提一提。