A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 立姐 于 2014-9-1 16:12 编辑

以下是我的多年编程经验总结,下列排序无特定顺序:


1.当性能出现问题的时候,最好能在应用层处理和解决,尽量不要把它放到数据库层里去。


排序和分组就是典型例子。在应用层做性能提升总是比在数据库层做要来得容易的多。对于这点,不管是服务器端的MySQL数据库还是移动设备端的sqlite数据库都是如此。我可以来解释一下:我们对一些特定的查询应用以上的方法虽然不能减少客户端的响应时间,但是可以减缓数据库服务器的压力,避免数据库成为所有客户端的瓶颈。


2.尽可能地避免并发计算。


如果实在没法避免,那么记住,功能越强,程序就会越复杂。尽量避免直面线程。并且尽可能的在更高层次的抽象层上处理问题。举个iOS系统的例子:GCD、分派和队列操作绝对是我们可爱的好助手。相信我,人脑是不具备推理暂存的无限情形这一功能的——这是我亲身经历的惨痛教训给予我的第一手资料。


3.状态越少越好,最好保持局部化。实用至上。


4.短小又可自由组合的方法是我们的得力助手。



5.注释有时候是有害的


因为随着时间的流逝,它会变得过时然后误人子弟,但是如果不注释同样是不可取的。不要啥鸡毛蒜皮的小事都拿来注释,好钢要用在刀刃上,如果有必要,我们甚至需要大段大段地写下战略性的长篇注释以备不时之需。因为,有时候记忆是个超能忽悠人的东西,搞不好你一觉醒来,甚至仅仅只是去喝了一杯咖啡回来,就忘记了。


6.不要妄自猜测


如果你觉得某个用例场景”应该不会有问题的吧“,那么可能过不了多久它就会大发淫威,成为发布产品中让你遭受惨痛教训的原因。相信自己的直觉,不要图省事就放任有疑问的地方不管,得主动测试、积极验证。


7.如果有疑问的话,将所有顾忌与团队交流沟通。


8.做正确的事——地球人都知道。


9.用户不是傻瓜,他们只是没有耐心去了解你所谓的捷径。


10.如果一个开发人员不被分派到维护系统(参与创建的)的团队中去,不能查看他们的猜想,那么他们曾经在这个系统上面付出的心血和汗水将会付之东流、化为乌有,而这时却发现了一些问题又需要参与进去——不要喊苦喊累,不要怨天尤人,你可知道这可是在成为一个更为睿智的专业程序员的节奏?


11.任务清单会是我们的好搭档。


12.积极主动让我们的工作更有趣,但是这需要努力。


13.突如其来的系统崩溃,仍然是我的噩梦。做好监控、日志和警报。清楚各种假警报,避免感觉钝化。保持系统对故障的敏感度和及时警报。


14.最后,别忘了我们是”拿人钱财,与人消灾“的,管理各种复杂的问题,做好相应的工作。


点评

都是精华,新年快乐!  发表于 2015-2-16 21:27

112 个回复

正序浏览
顶顶顶  火速顶起,加油
回复 使用道具 举报
赞赞赞,火速mark~~
回复 使用道具 举报
学习了,要好好看看
回复 使用道具 举报
细细看过。
回复 使用道具 举报
不错 。。。。。
回复 使用道具 举报
加精华................
回复 使用道具 举报
+1+1+1+1+1+1+1+1+1+1+1
回复 使用道具 举报
还没涉及到这些东西~~
回复 使用道具 举报
wws 中级黑马 2015-3-24 20:17:07
104#
干货,不错!
回复 使用道具 举报
已收藏
回复 使用道具 举报
前辈的经验之谈,受教了
回复 使用道具 举报
说的太好了,十分赞成
回复 使用道具 举报
我代表习大大给你点个赞
回复 使用道具 举报
前辈的经验之谈,受教了。
回复 使用道具 举报
领教了,会记住的
回复 使用道具 举报
已收藏,虽然我是小菜鸡
回复 使用道具 举报
感谢前辈的经验分享,受教了
回复 使用道具 举报
我代表全国人民给你点个赞
回复 使用道具 举报
正在通往大神的路上
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马