本节书摘来自异步社区《Android 源码设计模式解析与实战》一书中的第2章,第2.7节Android源码中的单例模式,作者 何红辉 , 关爱民,更多章节内容可以访问云栖社区“异步社区”公众号查看2.7 Android源码中的单例模式在Android系统中,我们经常会通过Context获取系统级别的服务,如WindowsManagerService、ActivityManagerService等,
转载
2023-08-04 17:43:02
43阅读
第十四章、迭代器模式 迭代器模式,又叫做游标模式。是行为型设计模式之中的一个。我们知道对容器对象的訪问必定会涉及遍历算法。我们能够将遍历的方法封装在容器中,或者不提供遍历方法,让使用容器的人自己去实现去吧。这两种情况好像都能够解决这个问题。 然而在前一种情况。容器承受了过多的功能。它不仅要负责自己“
转载
2017-06-18 19:35:00
49阅读
2评论
第十一章、命令模式
命令模式是行为型模式之中的一个。整体来说并不难理解。仅仅是比較繁琐,他会将简单的调用关系解耦成多个部分,添加类的复杂度。可是即便如此,命令模式的结构依旧清晰。
1.定义
将一个请求封装成一个对象,从而让用户使用不同的请求把client參数化。对请求排队或者记录请求日志。以及支持可撤销的操作。
2.使用场景
(1)须要抽出待运行的动
转载
2017-08-13 16:23:00
74阅读
2评论
第十七章、中介者模式 中介者模式也称为调解者模式或调停者模式,是一种行为型模式。 1.定义 中介者模式包装了一系列对象相互作用的方式。使得这些对象不必相互明显作用。从而使它们能够松散耦合。当某些对象之间的作用发生改变时。不会马上影响其它的一些对象之间的作用。保证这些作用能够彼此独立的变化。 2.使用
转载
2017-08-15 13:41:00
89阅读
第八章、状态模式 1.定义 状态模式中的行为是由状态来决定,不同的状态下有不同的行为。当一个对象的内在状态改变时同意改变其行为,这个对象看起来像是改变了其类。 2.使用场景 1.一个对象的行为取决于它的状态,而且它必须在执行时依据状态改变它的行为。 2.代码中包括大量与对象状态有关的条件语句,比如,
转载
2017-06-29 12:11:00
100阅读
2评论
第十八章、代理模式 代理模式也称托付模式,是结构型设计模式之中的一个。是应用广泛的模式之中的一个。 1.定义 为其它对象提供一种代理以控制对这个对象的訪问。 2.使用场景 当无法或不想直接訪问某个对象或訪问某个对象存在困难时能够通过一个代理对象来间接訪问,为了保证client使用的透明性。托付对象与
转载
2017-07-04 16:53:00
34阅读
2评论
# Android移动设计源代码概述
在当今的移动应用开发中,Android平台以其开放性和灵活性备受欢迎。掌握Android移动设计的源代码不仅有助于开发者构建高性能的应用,同时也能提升用户体验。本文将介绍Android移动设计中常用的代码示例、状态图,并对如何运用这些代码进行高效开发进行探讨。
## Android应用结构
在开始之前,我们需要了解Android应用的基本结构。一个典型的
一、Activity相关为什么下边不睡眠可以设置setText(),添加 睡眠1秒就抛出异常?看下面代码:public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreat
转载
2023-09-28 10:25:40
183阅读
《Android源码设计模式解析与实战》读书笔记一、引言这是工作的第10个月了,忙的时候总是不自觉的会发现,时间过得非常快。刚工作时参加培训的各种事情都还历历在目,但是已经是将近一年前的事情了。 并且最近一段时间,工作发生了一些变化,开始带技术团队进行版本开发,工作不再是简单的功能开发,模块开发,而是增添了许多需求的评审,需求的分解,任务的派分,代码的审核等
转载
2023-08-25 17:40:26
31阅读
第二十三章、外观模式外观模式是结构型设计模式之一,它在开发中的运用频率非常高,是我们封装API的常用手段。我们经常使用的三方SDK基本都使用的外观模式,这样可以对用户屏蔽很多实现细节,降低用户使用成本。1.定义要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。外观模式提供一个高层次的接口,使得子系统更易于使用。2.使用场景(1)为复杂子系统提供一个简单接口,对外隐藏子系统的具体实现、隔
之前一直在自己的机器上试着下载Android的源代码。由于某种墙原因,一直没能下载到完整的代码。出现过各种各样的错误,比如repo下载的不完整,git错误等等。下面是我的一些处理方法,留下记录,以备不时之需。 如果是因为repo下载不完整,可以试着用网页把repo加载(可能需要越过墙头),然后另存到本地.把网址复制到浏览器,应该就行了。curl https://dl-ssl.google.c
转载
2023-07-25 19:55:00
208阅读
文章目录1.源码分析概述①.Mybatis架构分析②.门面模式③.设计模式的原则2.日志模块分析①.适配器模型②.动态代理③.日志模块分析3.数据源模块分析①.工厂模式②.数据源模块分析③.数据库连接池源码分析4.缓存模块分析①.装饰器模式②.缓存模块分析5.反射模块分析①.反射过程分析②.反射的核心类 1.源码分析概述MyBatis 源码下载地址:https://github.com/MyBa
转载
2023-12-01 11:45:53
295阅读
《移动软件开发》实验6一、实验目标1、学习使用ScrollView和RelativeLayout以及插件之间的穿插使用;2、仿制一个app的首页。二、实验步骤6.0准备工作6.0.1了解控件属性1.ScrollView内部仅能有一个控件。layout_width:宽layout_height:高示例:2.RelativeLayout相对布局,也是非常常用的布局,比LinearLayout更加灵活,
基于Android的连连看游戏的设计与实现` 手机游戏是消费者利用随身携带的智能移动终端设备能随时随地来进行的游戏。近年来,手机游戏市场得到了很大的发展,手机游戏已成为使用率最高的手机娱乐应用。Android是Google基于Linux平台的开源手机操作系统,是首个为移动终端打造的真正完整和开放的移动软件。随着Symbian系统的逐渐衰落,Android在手机世界里和iOS平分天下,是移动互联网时
转载
2023-09-15 17:12:10
62阅读
免费阅读样章与下载源代码,请访问CSDN读书频道。当当网介绍本书的专题:http://www.dangdang.com/zhuanti2006/4742.shtml第二书店:http://www.dearbook.com.cn/book/176606(当当已经到货)China-Pub:http://www.china-pub.com/computers/common/info.asp?id=347...
原创
2021-07-22 12:00:05
288阅读
android的materialDesignLibrary源代码分析
最近使用了一个框架materialDesignLibrary,发现它能做出很炫的ui,比如按钮,一点击就会有水波荡开的效果,非常有意思!所以就想读一读它的源码,看一些开源框架的源码能学到很多东西。首先先贴一下使用该框架做的一个登陆注册界面吧。
一,CustomView分析
&nbs
转载
2023-07-03 17:37:54
165阅读
如果你希望你的Android设备,如智能手机和平板电脑,在任何时间和任何地方都能够编写代码,那么,不妨看看下面我将介绍的15款Android代码编辑器,它们必将成为你的理想工具。1.Deuter IDE一款基于移动开发的文本编辑器,在线编译器,内置支持Android的集成开发环境。它的虚拟按键可提供常用的编程符号和语法高亮功能,并支持超过40种编程语言,从而能让你在旅途中写代码变得从未如此简单。官
转载
2024-08-26 12:51:06
109阅读
Android设计模式2 Template MethodGOF-23 模式分类目的创建型(Creational)模式将对象的部分创建工作延迟到子类或者其他对象,从而应对需求变化为对象创建时具体类型实现引来的冲击。结构型(Structural)模式通过类继承或者对象组合获得更灵活的结构,从而应对需求变化为对象的结构所带来的冲击。行为型(Behavioral)模式通过类继承或者对象组合来划
转载
2023-07-19 16:19:08
216阅读
要下载源代码,那么就得先打开官方的网站,看官方怎么说下载源代码。官方地址为:
http://www.android.com/
,进去后,把页面拉到下方,找到图中显示的这个图标:
点击左边的这个Partners链接,然后就到了一个有关源代码工程的界面,进去后,再点下面的这个图标: 点击这个链接后就出现了下面的这个界面: &nbs
转载
2023-07-27 16:28:51
417阅读
Java设计模式-代理模式之动态代理(附源代码分析)
动态代理概念及类图
上一篇中介绍了静态代理,动态代理跟静态代理一个最大的差别就是:动态代理是在执行时刻动态的创建出代理类及其对象。
上篇中的静态代理是在编译的时候就确定了代理类详细类型。假设有多个类须要代理。那么就得创建多个。
另一点,假设Subject中新增了一个方法,那么相应的实现接口的类中也要相应的实现这些方
转载
2017-04-23 12:14:00
308阅读
2评论