首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
爱穿衬衫的程序员
掘友等级
Android研发工程师
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
赞
20
文章 19
沸点 1
赞
20
返回
|
搜索文章
最新
热门
Glide源码分析Two
假设你去面试,面试官问你使用什么图片框架,你说你用Glide。面试官并不是想让你说Glide,而是你选择Glide图片加载框架的原因和理由。它与其他图片加载框架的优缺点。 我回答你,当然不是这么简单,但这确实是最主要最底层的架构,所有的图片加载框架都一样,区别在于在这个基础上延…
Glide源码分析One
Glide图片加载三步曲源码分析
设计模式--代理模式(Proxy Pattern)
为其他对象提供一种代理以控制对这个对象的访问。 当无法或不想直接访问某个对象或访问某个对象存在困难时,可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,委托对象与代理对象需要实现相同的接口。 远程(Remote)代理:为一个位于不同的地址空间的对象提供一个本地的代理对…
设计模式--装饰模式(Decorator Pattern)
动态的给对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。 在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职责。 需要动态地给一个对象增加功能,这些功能也可以动态地被撤销。 当不能采用继承的方式对系统进行扩充或者采用继承不利于系统扩展和维护时。 …
设计模式--适配器模式(Adapter Pattern)
适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。 想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。 系统需要使用现有的类,而这些类的接口不符合系统的需…
关于Paging + Room,RecyclerView刷新时的空指针异常
数据能正确获取,并正确刷UI。但是,当数据超过30条(后面交代为什么是30)时,具体效果如下: 这会造成一个问题,当我需要删除一条数据时,删除后刷新UI,adapter的getItem()方法是会返回null,而我之所以用Paging + Room的形式,就是为了删除,因为Pa…
设计模式--原型模式(Prototype Pattern)
用原型实例制定创建对象的种类,并通过复制这些原型创建新的对象。 一个对象需要提供给其他对象访问,而且各个调用者可能都需要修改其值时,可以考虑使用原型模式拷贝多个对象供调用者使用,即保护性拷贝。 原型模式是在内存二进制流的拷贝,要比直接new一个对象性能好很多,特别是要在一个循环…
设计模式--建造者模式(Builder Pattern)
Builder模式是一步步创建一个复杂对象的创建型模式,它允许用户在不知道内部构建细节的情况下,可以更精细地控制对象的构造流程。该模式是为了将构建复杂对象的过程和它的部件解耦,使得构建过程和部件的表示隔离开来。 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同…
设计模式--抽象工厂模式(Abstract Factory Pattern)
为创建一组相关或者是相互依赖的对象提供一个接口,而不需要指定它们的具体类。 一个对象族具有相同的约束时,可以使用抽象工厂模式。 一个系统不应当依赖于产品类实例如何被创建、组合和表达的细节,这对于所有类型的工厂模式都是重要的。 系统中有多于一个的产品族,而每次只使用其中某一产品族…
设计模式--工厂方法模式(Factory Method Pattern)
定义一个用于创建对象的接口,让子类决定实例化那个类。 在任何需要生成复杂对象的地方,都可以使用工厂方法模式。 工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了面向对象的多态性,工厂方法模式保持了简单工厂模式的优点,而且克服了它的缺点。在工厂方法模式中,核心的工厂类不再负…
下一页
个人成就
文章被点赞
34
文章被阅读
4,468
掘力值
247
关注了
16
关注者
4
收藏集
0
关注标签
16
加入于
2017-02-10