Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

设计模式在项目中的应用

设计模式在项目中的应用

简单工厂设计模式在项目中应用项目使用场景:根据不同的厂家,有不同的报表打印形式,而对于报表的打印他们有公共的部分,打印报表头、打印底部、和打印中间部分。我们可以使用简单工厂模式,抽象出打印报表的接口,不同的厂家实现不同的打印接口。单例模式在项目中应用场景1:在DOM读取配置文件的时候,因为经常被用到这个类,我们可以设置一个全局类,不用每次都new那么多的类,节省资源消耗。场景2:在spring的IOC依赖注入的时候,默认的是采用单例模式,例如control...
10行Java代码实现最近被使用(LRU)缓存

10行Java代码实现最近被使用(LRU)缓存

在最近的面试中,我曾被多次问到,怎么实现一个最近最少使用(LRU)的缓存。缓存可以通过哈希表来实现,然而为这个缓存增加大小限制会变成另一个有意思的问题。现在我们看一下怎么实现。最近最少使用缓存的回收为了实现缓存回收,我们需要很容易做到:查询出最近最晚使用的项给最近使用的项做一个标记链表可以实现这两个操作。检测最近最少使用的项只需要返回链表的尾部。标记一项为最近使用的项只需要从当前位置移除,然后将该项放置到头部。比较困难的事情是怎么快速的在链表中找到该项。哈...
[翻译]用 JSON 构建 API 的标准指南

[翻译]用 JSON 构建 API 的标准指南

如果你和你的团队曾经争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 anti-bikeshedding 武器。通过遵循共同的约定,可以提高开发效率,利用更普遍的工具,可以是你更加专注于开发重点:你的程序。基于 JSON API 的客户端还能够充分利用缓存,以提升性能,有时甚至可以完全不需要网络请求。下面是一个使用 JSON API 发送响应(response)的示例:{"links": {"posts.author": ...
HTML5 input事件检测输入框变化

HTML5 input事件检测输入框变化

之前一直用change事件来监听输入框内容是否发生变化,只有当输入框失去焦点时才会触发,没想到html5还有个input事件,只要输入框内容发生变化就会立即触发,既然有这么好的东西我们干嘛放着不用呢,接下来就来给大家介绍一下:如果我们页面上有这样一个简单到极致的输入框:<input type="text">那么我们现在用jquery给它绑定input事件,如下:$("input:text").bind("input propertychange...
Apache HBase 出现信息泄漏漏洞

Apache HBase 出现信息泄漏漏洞

Apache HBase 因为远程拒绝服务、发现信息泄露漏洞和信息完整性出现问题。受影响的版本有:HBase 0.98.0 - 0.98.12HBase 1.0.0 - 1.0.1HBase 1.1.0HBase 0.96(受波及了)逻辑错误导致 HBase 最安全的配置部署到 ZooKeeper 上处理其协调状态不安全的 ACLs。任何人都可以通过远程访问登录 ZooKeeper,与此相关的有 HBase 客户端将降低甚至是完全不可用。任何连接到 HBa...
深入理解进程间通信之消息队列

深入理解进程间通信之消息队列

消息队列是消息的链接表,包括Posix消息队列system V消息队列。有足够权限的进程可以向队列中添加消息,被赋予读权限的进程则可以读走队列中的消息。消息队列克服了信号承载信息量少,管道只能承载无格式字节流以及缓冲区大小受限等缺点。消息队列是随内核持续的。IPC持续概念随进程持续IPC一直存在到打开IPC对象的最后一个进程关闭该对象为止。如管道和有名管道;随内核持续IPC一直持续到内核重新自举或者显示删除该对象为止。如消息队列、信号灯以及共享内存等;随文...
深入理解进程间通信之信号

深入理解进程间通信之信号

信号及信号源信号本质 信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候到达。 信号是进程间通信机制中唯一的异步通信机制,可以看作是异步通知,通知接收信号的进程有哪些事情发生了。信号机制经过POSIX实时扩展后,功能更加强大,除了基本通知功能外,还可以传递附加信息。信号来源 信号事件的发生有两个来源:...
<< 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 >>