
1.前言 在Dart库中,有两种实现异步编程的方式(Future和Stream),使用它们只需要在代码中引入dart:async即可。本文主要介绍Stream的相关概念及利用...
这个文章解决了什么问题? 最近我研究了一下Flutter,但是在使用Navigator的时候遇到了一个很头痛的问题,就是当我们去来回切换导航按钮时,Flutter会重新bui...
我也出现了这个问题,请问你解决了吗
Retrofit处理https请求问题描述一些通过CA认证的,https是可以直接访问的,但一些自签名证书,用retrofit直接访问则会走到onFailure里,错误信息是无法通过证书验证。 onFailu...
大部分应用程序都包含多个页面,并希望用户能从当前屏幕平滑过渡到另一个屏幕。移动应用程序通常通过被称为“屏幕”或“页面”的全屏元素来显示内容。在 Flutter 中,这些元素被...
概念 适配器模式是一种结构性模式,一般用于不兼容的情况出现时,比如笔记本电脑的电源适配器,就是转换电压的。代码同理,它结合了多个独立接口的功能。 角色 目标抽象类接口:定...
概念 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式是实...
概念 建造器模式,是一种使用多个简单对象构造成一个复杂对象的创建型模式。当然,我首先想到的就是Android 里面AlertDialog的创建。利用了AlertDialo...
概念 顾名思义,就是无论如何,只让生成一个实例对象的模式了。本篇主要介绍几种单例模式的写法。 懒汉式,线程不安全 最基本的实现,但最大的问题就是不支持多线程。 懒汉式...
概念 上一篇介绍了简单工厂,简单工厂是用来创建一个对象的,而抽象工厂则不同,他是用来创建一组对象的。 角色 抽象工厂:声明了一组用于创建一族产品的方法,每一个方法对应一种...
概念 工厂方法模式,就是用工厂生产对象的一种创建型模式,主要作用是把对象的创建交由子类进行。 角色 抽象产品:描述产品的的公共接口。具体产品:实现抽象产品。工厂类:根据传...
概念 封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 角色 先上一张图: 抽象访问者:抽象类或者接口,声明访问者可...
概念 既然是解释,就是把一个句子翻译成我们需要的数据的一种模式。书面化的解释是:给定一个语言,定义它的文法表示,并定义一个解释器,这个解释器使用该标识来解释语言中的句子。...
概念 说起中介者模式,就想起平时买房和租房的时候的中介,还有聊天室,中介者模式就和这些很像。我们靠一个中介者来处理类与类之间的交互关系。 角色 抽象中介者角色:定义了交互...
概念 状态模式,就是和对象的 状态相关的行为型模式。根据状态的不同,类的行为也不同。 角色 抽象状态类:定义了状态类的通用方法。具体状态类:实现抽象状态类。环境类:提供当...
概念 说到备忘录,就想起打游戏时候的存档,还有各种软件的保存,ctrl+z回退,备忘录也差不多是这个样子。 角色 发起者:相当于游戏里面的当前角色的状态。备忘录(存档):...
概念 说到命令模式,我就想到了公司让开发产品的时候,这里就靠这个举个例子。先来段具体的定义:将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队...
概念 说到责任链模式,我就想起了okHttp中设置拦截器的时候了,今年、中外、开花,关注。 其实责任链就是将多个处理连接成一条链,然后处理一个对象,正常点的解释:使多个...
概念 根据网上的介绍,迭代子模式又叫游标(Cursor)模式,是对象的行为模式。迭代子模式可以顺序地访问一个聚集中的元素而不必暴露聚集的内部表象(internal rep...
概念 模板模式是设计模式中较简单的一种,主要是定义一个抽象的模板类,剥离出一些需要的公共方法。 通俗点的理解就是 :完成一件事情,有固定的数个步骤,但是每个步骤根据对象...