
软件设计
GeeLoong
这个作者很懒,什么都没留下…
展开
-
一分钟进一步了解面向过程、面向对象、面向接口、面向抽象
计算机是用来解决处理一些问题或事情的,而所谓的问题或事,则是由一个个的客体所触发的,所以在现实世界中存在的客体,则才是问题域的主角,这也是人类解决问题的基本思路; * 客体,即是客观存在是实体,客体由一些属性和行为来描述; 举个例子,如:现实生活中的泥石流事件,我们最好的解决办法不是针对事件本身,而是针对引起这事件的实体, 所以我们一般会将问题转移到山这个客体上,然后对山体进行一些如绿化、水泥...原创 2020-04-19 04:35:24 · 679 阅读 · 0 评论 -
【经典】异常处理及设计干货
导语 异常处理是程序开发中必不可少操作之一,但如何正确优雅的对异常进行处理确是一门学问,笔者根据自己的开发经验来谈一谈我是如何对异常进行处理的。 由于本文只作一些经验之谈,不涉及到基础知识部分,如果读者对异常的概念还很模糊,请先查看基础知识。 如何选择异常类型 异常的类别 正如我们所知道的,java中的异常的超类是java.lang.Throwable(后文省略为Throwable),...转载 2018-12-27 01:34:35 · 1005 阅读 · 0 评论 -
【经典】接口设计之幂等设计
最近做的项目的性能调优中关于幂等设计的一些总结 场景:假设有这样一个方法,包含了一些DB操作,check if existing then update else save. 如果两个线程同时去执行这个方法,并且他们处理的是同一条数据,期望应该是其中一个线程是save,另外一个是update。但是有可能线程的处理时间相当重合,线程A在check的时候,线程B也在check,这时A和B都认为数据不...转载 2019-04-17 10:16:08 · 415 阅读 · 0 评论