1.如果性能不佳,就在应用层处理,别放在数据库层。
排序和分组就是一个例子。在应用层操作性能提升总是比在数据层操作容易。在这点上,无论是服务器端的MySQL数据库还是移动设备端的sqlite数据库都是如此。让我来给大家解释下:大家会对一些特定的查询应用方法虽然不能减少客户端的响应时间,不过还是可以减缓数据库服务器的压力,这样可以避免数据库成为所有客户端的瓶颈。
2.避免并发运算
有时可能没法避免,那么一定要知道,功能超强,程序当然就越复杂。最好避免直面线程。一定要在更高层次上处理问题。就拿ios系统的例子来说:GCD、分派和队列操作可是我们的好帮手。要明白一点就是,人的大脑是不具备推理暂存的和无限情形这个功能的,这可是个人经历过的惨痛教训,希望大家参考并且有用。
3.单一责任,对象状态尽量越少越好,实用才是硬道理。4.简洁,组合,而非聚合5.不些地方尽量不用注释,因为有时会适得其反。
慢慢的随着时间的流逝,你的那此注释可能会变的过时,但如果都不注释也是不对的,只要不是什么小事都拿来注释就好,大家要懂得把握好度,那个可以注释那个不用注释。有些地方我们可能还要写上大篇的注释,因为人的记忆总是有限的,可能过一天后就忘记了。
排序和分组就是一个例子。在应用层操作性能提升总是比在数据层操作容易。在这点上,无论是服务器端的MySQL数据库还是移动设备端的sqlite数据库都是如此。让我来给大家解释下:大家会对一些特定的查询应用方法虽然不能减少客户端的响应时间,不过还是可以减缓数据库服务器的压力,这样可以避免数据库成为所有客户端的瓶颈。
2.避免并发运算
有时可能没法避免,那么一定要知道,功能超强,程序当然就越复杂。最好避免直面线程。一定要在更高层次上处理问题。就拿ios系统的例子来说:GCD、分派和队列操作可是我们的好帮手。要明白一点就是,人的大脑是不具备推理暂存的和无限情形这个功能的,这可是个人经历过的惨痛教训,希望大家参考并且有用。
3.单一责任,对象状态尽量越少越好,实用才是硬道理。4.简洁,组合,而非聚合5.不些地方尽量不用注释,因为有时会适得其反。
慢慢的随着时间的流逝,你的那此注释可能会变的过时,但如果都不注释也是不对的,只要不是什么小事都拿来注释就好,大家要懂得把握好度,那个可以注释那个不用注释。有些地方我们可能还要写上大篇的注释,因为人的记忆总是有限的,可能过一天后就忘记了。