由于项目的原因,从刚接触php编码的时候就面对了web框架。从起初的接触框架到现在的应用框架乃至开发自己的web框架,有这一系列的感触。很好的遵循这些约定是我们利用好框架的关键。只有遵循好这些约定熟读框架的执行流程才能把web框架应用的得心应手达到提高开发效率的目的
编码约定
要想很好的利用一套web框架去提高自己的开发效率,最为主要的就是要遵守web框架的一系列规则。比如说文件名,类名,属性名,方法名以及对应的命名规范。每一套框架都有着自己独特的规则,利用到这些规则去路由去定位,按照框架的约定去执行整个流程。
分离式配置
之前的配置性数据往往包含在一个类文件中,这样想要去查找配置数据的时候只要去配置文件中去查看或者修改对应的参数配置就可以了,但是随着配置参数的增多,配置类别的增多,在单独一个文件中查看和查询相对比较麻烦,因此如果项目较小配置较少的时候可以采用单配置。一旦项目按照不同的功能或者用途去配置,我们就很有必要把配置文件进行拆分,放在不通的配置文件中,更利于查找修改和管理。
多选择扩展
在doggy框架中,对于cache采用了两种缓存方式一种是文件系统缓存,一种是memcache内存缓存;对于storage也采用两种形式一种是文件系统 一种是分布式系统。从这两方面来看,为了满足不同的需求采用合理的接口,各分支按照去实现这些接口就可以了。而框架本身的开放API是对这个接口的封装调用,外部程序调用的封装API的 具体方法来实现调用不同的接口。如果再有新的扩展,只要按照需求去实现框架接口就可以了。
流程控制
流程控制在web框架中应用相当重要,和传统的php开发不同。在系统开发中由于框架对代码的封装,有时候很难去判断和监控是程序的哪个环节除了问题,所以在框架中的流程控制即日志输出相对比较重要,当一个流程无法完成的时候,可以去分析这些流程日志,查找是哪个环节出了问题。然后对症下药去查找相应的模块。流程控制日志应该包含两个部分一个部分是框架的流程控制日志,另外一个是应用程序的流程控制日志。框架本身应该提供流程控制日志的接口,在应用程序中的不同流程内去开启这个接口去实现应用程序流程控制日志的输出。
错误输出
在整个项目中错误出现的地方有php本身的错误,这些错误可通过查看php本身的日志文件去分析;框架级的错误,即web框架本身的bug引起的错误,这些错误是很难去抉择,而这一部分的错误分析,只能通过分析框架的流程控制日志去分析哪个环节出了错误;再一个错误就是应用程序本身的错误,这一部分的错误要依赖于应用程序本身的流程控制日志和框架的流程控制日志两个部分来结合判断是应用程序本身的错误还是框架导致的错误。
异常抛出
在项目的运行过程中,很多时候会出现异常情况。比如数据库连接异常,sql执行异常等;框架应当将框架级的异常抛出截获并输出到框架异常日志;应用程序本身的异常则由框架提供的异常操作接口去将异常信息截获放到引用程序的异常日志内;以便于分析这些异常。