知乎专栏 |
选择一个好的开发框架,很重要。不过大部分框架都针对于软件开发,而我们要的是轻量级,适合高负载,灵活的框架。
框架的分类
上面框架可以满足我们绝大多数需求,如URL定义,Session/Cookie管理,多语言国际化,数据库访问等等。
Java和.Net我没有太多的经验,php我有10+年经验,我在各种框架之间做比较发现CodeIgniter框架比较适合我们的需求。
框架是没有100%完美的,你仍需要对它进行二次开发。如果你有充足的时间,针对自身系统系统的特点设计一个更适合您网站的框架,这是最好的选择。
设计一个框架需要用到很多知识,需要有丰富的经验。目前主流框架都是基于MVC设计思想,要设计一个框架你必须了解MVC (Model-View-Controller) 参考:http://www.itisedu.com/phrase/200604231324325.html
开发一个框架包括那些重点呢,下面我把一些要点一一列出,然后一个个地突破,我这里使用php为例子,上面我已经说过语言只是工具,所以学习是设计思想,不要拘泥于语言:
JS封装(javascript)
模板(template)
url
session/cookie
语言包(language package)
编码(unicode)
数据库访问(database OR Mapping)
权限(Permission)
如果重新开发一个框架,我认为太现实,我的建议使用现有pear库,搭建一个MVC框架。例如:
Model(pear db)
View(smarty template)
Controller (pathinfo)
Python web2py
Php CakePHP,Zend,CodeIgniter
Perl Catalyst
Java Struts,Spring MVC
ruby on rails