ThinkPHP框架用了好多次,从小白开始到现公司都在用...从一开始,我就很纳闷的是:

`Model::find()` 为啥不是 `protected` 而是 `public`

因为public意味这可以在任何地方都调用...于是,项目刚开始的时候 action BO 各种地方都有 find()

当有一天我想把 find() 等方法收回的时候,发现各种奇葩的调用方式和各种表关联都有了,于是我发现要重写find()方法时要把join,field等方法也写一次(就是对已经存在的_where进行拆分)...那个叫痛苦...

最痛苦的地方莫过于对join的处理,很多新人需要其它表字段的时候就随手写了一个join...
不过更气人的是,我写了一个`getList方法,竟然有人在我这里面调用join`...然后一夜间,某个页面慢到家了

痛定思考了好几天之后,发现要么是我的要求不严格,要么是这个框架已经快不适合我们了...前一条我做不到是因为我进来的时候和其他几个同事是平级的,没法约束... 后面那个想换也来不及了...于是只能开始把join改成单条sql

封装和接口设计..最大的不是你瘦了什么,而是放了什么,因为一旦想收回..痛苦难堪..

借钱容易,收钱难...


罗音
2k 声望31 粉丝