自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

android_Mr_夏

相互学习,相互进步

  • 博客(33)
  • 资源 (2)
  • 收藏
  • 关注

原创 java虚拟机内存区域(详细)

java虚拟机 通过上篇我们了解到.java文件通过javac编译成.class文件,然后.class文件运行在java虚拟机,下面针对虚拟机对象回收以及内存分配进行分析。java内存机制java垃圾回收机制java内存区域java垃圾回收机制 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区...

2018-05-22 15:01:11 950

原创 android中热修复与插件化(一)

简介 目前android技术最前沿莫属热修复与插件化的技术点,当下用得最多的就是阿里的Andfix,和微信的Tinker框架,针对源码的实现,再次做个记录。热修复给我们解决的问题刚上线的APP应用,由于测试的疏忽,发现了一个严重的bug。针对一些小功能,不想再次经历发布,打包发送给用户。 插件化解决的问题解决应用越来越大所带来的问题(方法超过65535)解...

2018-05-03 13:49:40 801

原创 数据库拆分

数据库拆分是面对互联网和大数据时代挑战的有效解决方案。传统的单一数据库架构在处理大规模数据和高并发访问时,常遇到性能瓶颈、可用性问题和扩展性限制。为应对这些问题,数据库拆分将庞大的数据库划分为多个较小的数据库实例,通过垂直拆分和水平拆分的方式,分散数据存储和处理负载,从而提升系统性能、可用性和扩展性。这种策略不仅降低了维护成本,还增强了系统的适应性和灵活性,适用于各类高需求应用场景,如电商平台、社交网络和物联网应用等。

2024-06-24 17:04:54 921

原创 Android常用设计模式-抽象工厂模式

抽象工厂模式是一种创建型设计模式,它提供了一种方法来创建一组相关的对象,而不需要关心这些对象的具体实现方式。该模式可以将对象的创建和使用分离,从而提高代码的可维护性和可扩展性。在抽象工厂模式中,我们定义一个抽象工厂接口,用于创建一组相关的对象。该接口中通常包含多个工厂方法,每个工厂方法用于创建一个特定类型的对象。然后,我们可以根据需要实现该接口,以提供具体的工厂实现。抽象工厂模式是一种常用的设计模式,它可以帮助我们创建一组相关的对象,而不需要关心这些对象的具体实现方式。

2023-03-26 19:52:12 523 1

原创 Android常用设计模式-工厂模式

工厂模式是一种创建型设计模式,它提供了一种创建对象的方式,而不需要将对象的创建过程暴露给客户端。在 Android 应用程序开发中,工厂模式经常被用来创建一些常用的组件,比如对话框、菜单、按钮等。在 Kotlin 中,我们可以使用 companion object 关键字来实现工厂模式。通过在 companion object 中定义工厂方法,可以方便地创建对象,而不需要将对象的创建过程暴露给客户端。工厂模式的优点包括隔离复杂的对象创建逻辑,提供灵活的扩展能力,以及统一管理对象创建过程。

2023-03-25 21:35:25 819

原创 Android常用设计模式-单例模式

android常用的设计模式-单例模式

2023-03-25 19:59:08 654

原创 Python 数据容器(4) - dict(字典、映射)

python 数据容器->字典

2022-11-29 14:30:02 393

原创 Python 数据容器(3) - set(集合)

Python 数据容器- (set)

2022-11-27 23:18:11 289

原创 Python 数据容器(2) - tuple(元祖)

python数据容器-tuple(元祖)

2022-11-27 18:21:38 460

原创 Python 数据容器(1) - list(列表)

python数据容器知识点

2022-11-27 17:34:01 417

原创 保姆级python安装教程(windows、macos、linux)

最近在重温python课程学习,当中想记录一下自己在课程中所遇到的一些安装笔记,同时将这些记录下来,分享给大家。一起学习,一起进步。

2022-11-22 21:53:17 2205

原创 IOS之oc学习笔记(2)

IOS学习笔记(2)语法概述oc没有包名的概念在java中为了防止两个类名冲突,可以将两个类放置不同的包里面,OC是没有包的概念的,取而代之的是开发人员给类名加上前缀,使用前缀可以有效的防止类名冲突;oc的数据类型#mermaid-svg-cSKhl4apPSkgCESs {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-cSKhl4apPSkgCESs .er

2022-05-23 22:44:50 345 2

原创 IOS之oc学习笔记(1)

IOS之oc学习笔记(1)OC的简介1.Objective-C简称Obj-C或者OC,Objective的意思就是面向对象的。OC其实就是在C语言的基础之上,封装了一层面向对象的语法,他并不是一门全新的编程语言。2.OC是Mac OS X系统和iOS系统的主要开发编程语言。3.C程序的源文件的后缀名为.c,OC程序的源文件是后缀名为.m,m就是message的意思。因为OC是完全兼容C语言的,所以在.m文件之中是可以写任意的C代码。并且OC中main函数仍然是OC程序的入口,作用和C语言中的是一样

2022-05-22 20:02:57 656

原创 软件开发模式之敏捷开发(scrum)

###简介这几年关于敏捷开发在互联网企业中越来越广泛被使用到,运用的比较多的当属scrum敏捷开发和xp敏捷开发,人人都在谈论敏捷开发。那什么才是敏捷开发呢?####目录####什么是敏捷开发敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

2018-08-08 19:18:20 121926 10

原创 git使用教程

安装Git windows版的Git,从这里进行下载,然后按默认安装完成。在开始菜单里找到”git->Git Bash”就说明安装成功。创建版本库 版本库又名仓库(repository),可进行版本管理的目录。 所以创建一个版本库,首先: 1.mkdir learngit 创建目录 ...

2018-05-11 09:48:28 313

原创 第一个快应用(quickapp)demo

简介 随着3月20号北京开发的快应用(quickapp)的发布,各大手机应用厂商加入了快应用这个行列,该应用模块以标准js语法+重组css标签+Flexbox布局+mvvm模式。类似于微信小程序的依附在微信中,而快应用依附在各大应用市场,可搜索直接打开,无需安装的便捷操作方式。环境搭建(window平台)安装nodejs(官网)。安装hap-toolkit(打开cmd-&...

2018-03-26 15:25:05 12615 6

原创 Execution failed for task ':app:preDebugAndroidTestBuild

简介当我们平常运行AS编译器,发生如下错误 Error:Execution failed for task ‘:app:preDebugAndroidTestBuild’. Conflict with dependency ‘com.android.support:support-annotations’ in project ‘:app’. Resolved versions

2018-02-05 15:01:55 49757 5

原创 java中class文件解析

简介 开发一个android项目流程,编写xml布局,处理所对应的Activity的界面,运行项目,这些常规操作,我们再也熟悉不过,但是ide所在底层实现java源码->….->APK生成,这些究竟是怎么产生的?是时候探究一番了。class文件结构深入解析什么是class文件? class文件全名称为Java class文件,主要在平台无关性和网络移动性方面使Ja

2018-02-02 11:33:41 837

原创 android事件分发机制

简介 我们都了解到android上面的view控件是以树形的形式存在的,当我们点击最上层的view控件,这个控件的点击事件究竟分配给谁?那么接下来对于android的事件进行分析。目录1.android事件分发机制的起因 2. 三个重要的事件分发的方法 3. 事件分发流程android事件分发机制的起因android上面的view是树形结构的,从最顶层的A

2018-01-30 10:51:35 248

原创 view的绘制机制(三)

简介 上一遍我们分析了ViewRootImpl对象以及view的measure()方法进行分析,接下来我们继续分析layout()和draw()方法。目录layout()draw()layout()从上一篇博客中我们了解到ViewRootImpl中的performTraversals()方法中调用了performLayout(),首先查看源码: pr

2018-01-29 13:08:29 258

原创 view的绘制机制(二)

简介 上篇文章描述了渲染android布局的源码分析view的绘制机制(一),分析了在Activity中onCreate()方法中执行setContentView()的内部实现机制,以及LayoutInflate对象对于布局进行pull,从而添加到父布局。做了这么多的铺垫,我们也需要对于view的绘制正式进入分析。目录ViewRootImpl流程分析分析onMeasure

2018-01-25 09:42:16 283

原创 view的绘制机制(一)

简介 我们在学习android的时候,直接在xml中指定android的标签,就能显现出各式各样的界面,但是我们并不了解其中的绘制流程,从而抱着一个学习的心态,从源码角度去查看view的绘制机制。目录1.view的绘制流程(一) 2.总结view的绘制流程在进行分析之前,我们可以先看看下面的流程图: 每个Activity都持有Window的对象,Andro

2018-01-22 16:23:55 302

原创 android用proGuard代码混淆

简介 因为java是一门跨平台语言,java虚拟机会把java源代码编译成.class文件,从而各种软件可对.class文件进行反编译,造成代码不安全,以至于android引入了proGuard对.class文件进行混淆。目录proguard是什么?proguard技术的功能proguard工作原理proguard在android中的运用proguard是什么?

2018-01-19 10:43:35 325

原创 AsyncTask源码分析

简介 分析完handler的机制之后,进阶我们分析一下AsycTask的常规操作,以及实现的源码,我们可以从一下几个方面去分析1.什么是AsyncTask? 2.AsyncTask的使用方法 3.AsyncTask内部原理 4.AsyncTask的注意事项什么是AsycTask? 我们可以用一句话进行总结: AsycTask本质就是封装了线程池和ha

2018-01-17 13:12:56 258

原创 handler源码分析

简介 在android中,更新ui界面操作只能在ui线程中进行,在主线线程之外的线程中直接更新页面显示的问题是:系统会报这个异常:android.view.viewroot$calledfromwrongthreadexception: only the original thread that created a view hierarchy can touch its views.

2018-01-12 17:42:58 259

原创 android binder机制总结

简述 新的一年,祝愿自己在新的一年越来越好,在新的一年里,借用csdn这个平台对android做一个系统的整理,对于binder机制,在网上的文章多得数不胜数,每篇基本都是大同小异,所以在这里也做一个知识的笔记,给自己以后做个复习。目录什么是binder?binder通讯机制的介绍什么是binder?我们都知道android运行的底层是linux中。 linux对每个应用的分配:

2018-01-04 10:38:54 319

原创 android webview全面使用讲解,以及一些遇到的坑

简介 webview是在android中渲染web页面的控件,它在android4.4之前是基于webkit引擎,在之后是基于Chromium引擎。webview的基本使用当前使用ide为:AndroidStudio3.0,测试机为华为荣耀8,系统android7.0事例:1.因为webview加载的页面基于web,所以我们必须在AndroidManifest中添加网

2017-12-25 12:59:40 1314

原创 Service的进程保活

简述 android系统在内存不足会回收一些后台服务,保证系统的流畅运行,对于service的进程保活也违反了android系统对于内存回收机制的原则性,我们下列所做的只能增强service在系统的存活率,真正做到永驻后台服务service的基础 要了解service保活必须首先了解service的基础,关于service的启动方式以及service的生命周期,这点并不在我们...

2017-12-21 11:00:09 962 1

原创 android中的第五大组件->Fragment

简介 fragment在android中是以碎片的形式依附在activity中,常被成为android控件中的第五大组件,现在更多的形式都是以单activity+多fragment的app结构。在相同界面中,用fragment比activity所占用内存要小的多,如果我们考虑到性能优化这方面,我们也可以优先考虑使用fragment。我们可以从以下几个方面进行解析。fragment为...

2017-12-18 15:00:18 488

原创 idea maven项目来搭建ssm整合

maven项目搭建ssm最近在学习java服务器这块,用到了spring,springmvc,mybatis框架的知识,在此做个笔记,整合ssm框架。(maven版本为:2017.2.5,jdk1.8.42) 搭建ssm可分为以下几个步骤: 创建项目 在pom.xml中添加依赖 配置整合mybatis的过程 配置jdbc文件,mybatis-config文件 配

2017-12-14 17:38:24 4161

原创 maven配置spring所需要的依赖

maven配置spring所需要的依赖 今天有maven搭建spring框架,所收集到的spring依赖,在这里做个记录,方便以后查找。<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <vers

2017-12-14 14:03:37 8177

原创 java集合知识点总结

java集合知识点总结 集合中主要包含3个接口在(package java.util(Collection,Map,Iterator)) 层次关系:实线边框为实现类,折现边框是抽象类,点线边框的是接口Iterator接口,List接口存在iterator()方法,遍历集合中的元素Iterator主要有:> 1.hasNext()是否还有下一个元素。 2.next()返回下一个元素。

2017-12-13 13:19:42 7047 2

原创 activity生命周期(这篇足够了)

activity生命周期(这篇足够了)摘要 做安卓开发已经4年多了,所接触的知识点也比较零散,在这里记录一下android方面的知识点,方便自己以后复习,有什么不足的,以及错误的欢迎拍砖。activityactivity从开始到结束的四个状态。activity的生命周期。activity的进程优先级。activity的四个状态关于activity的...

2017-12-07 14:35:02 144820 15

spring+mybatis+springmvc

运用idea的maven项目,对spring+springmvc+mybatis进行整合

2017-12-15

maven项目ssm整合

maven项目整合ssm的基本实现,运用的是mysql数据库,可下载直接运行

2017-12-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除