Android-observer观察者模式 观察者模式是一种一对多的对象行为模式,当被观察者改变时,所有依赖于他的观察者都会自动更新。常见例子比如Android中的button.setOnclickListener(),broadcastReceiver, rxJava等等。这里通过一个自定义观察者模式来看: 123456789101112131415161718192021222324252627282930313233343536373 2021-12-01 #Android
Android-delegate委托模式 委托模式,与java继承不同的是,它体现的是代码组合的思想。解决问题思路是将委托对象中的某些操作交给其他被委托对象。可以将代码分离,使得某个对象不是那么臃肿。 这是最简单的委托模式: Print 中的 fun print()被委托给RealPrint,fun print()打印。 1234567891011121314151617181920fun main() { var pri 2021-11-24 #Android
Hexo-github打造个人网站 使用hexo+github打造个人网站: 1、安装node.js。输入node -v和npm -v,如果出现版本号,那么就安装成功了。 2、安装git,github账户new repo. 输入自己的项目名字,后面一定要加.github.io后缀,README初始化也要勾上。然后项目就建成了,点击Settings,向下拉到最后有个GitHub Pages,点击Choose a theme选择一个主题 2021-11-21 #Hexo
leetcode-TwoSum算法 Two SumGiven an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.You may assume that each input would have exactly one solution, and you 2021-05-14 #Leetcode
Android-jetpack系列-lifecycle Lifecycle的使用Android jetpack系列有很多组件,lifecycle属于感知生命周期的组件,下面通常代码: 1234567891011121314151617181920212223242526272829303132333435class MainActivity : AppCompatActivity() { private lateinit var myL 1979-11-30 #Android
Android-okhttp3单独使用 最近使用了okhttp3 + mvvm的架构框架,也了解了volley,httpclient,async-http等框架,这些框架之前有的使用过,比起okhttp3来说,okhttp3有各种自定义拦截器,这里介绍下okhttp的各种方法吧。 get请求 构造request时候,直接吧参数拼成name=xx&pwd=xx这种表单格式放在?后面。 1request = 1979-11-30 #Android
Android-源码中的单例模式 单例模式介绍 介绍:单例模式属于项目必用模式之一,因为项目中肯定要有user、database、network这些对象,这些对象一是创建起来耗费大量资源,而是网络请求中需要队列去处理请求(因为会有多个请求的状况),所以我们必须保证只有一个对象。 定义:确保一个类只有一个实例,并且自行实例化并向整个系统提供这个实例。 使用场景:创建一个对象消耗的资源过多。 关键点: · 构造函数不对外开放,一般为p 1979-11-30 #Android
Android-面向对象6大原则源码设计模式 单一职责原则——优化代码第一步Single Responsibility Principle, SRP. 就一个类而言,应该仅有一个能引起他变化的原因。最重要的是,要能划分一个类具体的职责,2个完全不同的功能代码不能放在同一个类中,会引起类文件冗余庞大,后面的代码会越来越难以维护,这是优化代码第一步。例如我们去写一个缓存图片的功能。 1、下载图片 2、缓存图片 在这里基础的用3个类文件去写,d 1979-11-30 #Android
Android-从LayoutInflater.from(context)看源码 在Android中,我们经常通过Context获取系统级别的服务,比如WindowsManagerService、ActivityManagerService等,但我们今天使用RecyclerView.Adapter里面onCreateViewHolder来开始查看代码。 12345678910111213141516171819202122 @Override public Ca 1979-11-30 #Android
English-找对英语学习法第一本书 第一次读一本书如此顺畅,根本停不下来。作者漏屋让我有种崇拜之情,他的学识、人生经历、观念等等让我惊叹,我在这本书面前就是如此无知愚昧。我第一次领教了国内教育的死板教条落后,有识之士花费时间做出的精品让我茅塞顿开。 标准发音 儿童因为心理生理和环境呵护关系,学习英语就该用标准发音,这样学起来快而且发音准。但成年人恰好相反,因为母语已经在大脑留下神经单元,所以学英语就不受控制的向母语去靠拢, 1979-11-30 #English