- 博客(263)
- 资源 (80)
- 收藏
- 关注

原创 android——基础架构设计与实现
作为从业多年的 Android 开发者,我有幸参与了多个从零开始的项目开发,涵盖工具类应用(如安全防护)、内容类应用(如交友直播软件)以及物联网工具(如蓝牙、wifi等智能控制)。基于这些实践经验,我将分享对 Android 应用架构的理解与思考,希望能为开发者同行提供参考。
2025-04-01 20:02:20
708

原创 kotlin——MVVM框架下的大型项目优化、以及activity和viewmodel臃肿的优化
在大型项目中,随着项目越做越大,activity和viewmodel的代码会越来越多,尽量保持Activity和ViewModel的代码精简和易于维护是非常重要的。个人建议700行以上就应该考虑,尽量让代码控制在1000行以内。不然随着代码多维护起来困难,代码混乱,有bug时定位问题难,增加需求代码难等问题就会随之而来,那应该怎么办呢?(Code Review):定期进行团队内部代码审查,发现并修复代码中的冗余和不良编码习惯。中处理的数据过多,可以考虑将其拆分为多个小的。更加专注和易于理解。
2024-06-22 12:01:44
587

原创 android——解决bug的流程以及细节(定位当前activity、定位哪里调用了当前的方法)
解决bug的第一步,当然是稳定的复现bug。根据我的经验,如果一个bug可以被稳定的复现,至少它就被解决了70%。通过观察bug的现象,就可以对bug做个大致的归类或者定位了。是因为数据问题?还是第三方库的问题?还或者是代码的问题?接着就是debug,看日志等常规操作了~如果经过上面的操作,你还是一筹莫展,那么请往下看。遇到bug,先观察bug现象,然后想想大概是什么原因导致的,然后尝试复现它,再调试它,处理它。
2024-06-21 11:01:51
1203

原创 python——根据公司名称查找公司地址(批量)、随机生成姓名、随机生成手机号
根据公司名称查找公司地址(批量)、随机生成姓名、随机生成手机号;各个功能都已经封装成了独立的方法,直接粘贴使用即可。
2022-09-26 22:10:14
6922

原创 vue——后台管理系统之动态路由权限(左侧菜单按角色分配显示)
后台管理系统之——动态路由添加使用(左侧菜单按角色权限动态显示)按照每个角色所拥有的权限来进行对应的展示,实现动态挂载路由,按需显示,官网的说明太过于简单,以至于本人花了很多时间才做出一个完整的动态路由,希望对大家能有所帮助...
2022-07-09 01:55:07
2349

原创 nodejs——后端项目实战(后台基础框架)
3、数据库:mysqlusername:wangyao password:wy1234、使用postman进行post请求访问能获取到数据,代表登录功能完成。
2022-03-19 11:10:42
8909

原创 微信小程序——设计模式(单例,状态模式,观察者模式、代理模式、策略模式【表单验证】)
1、单例// 单例var mySingleCase = function () { // 私有变量和方法 var attribute = "我是‘私有’属性" function showPrivate() { console.log("我是私有方法的输出") } return { publicMethon() { // console.log("我是公共方法--调用私有方法") showPrivate() }, pu
2021-04-16 14:00:51
3215

原创 uniapp——网络请求的封装、全局样式,全局变量、传值(父子组件,不同页面等)
网络请求的封装根据thorUI开源框架给出的代码进行封装,还有如果需要token来请求的话,需要自己去获取token,然后写到代码:const tui = { delayed: null, //接口地址 interfaceUrl: function() { return 'https://www.thorui.cn' }, /** * 请求数据处理 * @param string url 请求地址 * @param string method 请求方式: GET or POS
2020-12-30 15:21:26
4225
1

原创 微信小程序——数组操作 (增加删除修改遍历)map、filter、forEach、find的用法、二维数组,排序,求和、指定长度数组赋值
Array.push() ->在数组后面继续插入内容Array.pop() ->拿走数组最后一个内容Array…shift()->拿走数组的第一个内容 (unshift也是拿走最后一个)Array.reverse()->对数组从大到小排列Array.sort()->对数组从小到大排列**Array.splice(起始位置 , 位数,”增添内容”)->从数组中取出以起始位置开始的位数的内容,并写入增添内容,可用来删除内容与替换,例如people.aplice(1,2,“name”)
2020-06-23 09:21:51
47950
3

原创 微信小程序个人中心-我的界面
个人中心-我的界面简介我们在开发微信小程序的时候,基本上都会有一个个人中心的界面,简称我的界面,里面有保存每个用户的个人信息,个人设置,个人的数据记录。所以本文主要针对这个页面做了一个自己熟练的界面,下面来看看效果图:效果图...这种效果的整体布局固定不变,如果想要更好看的效果,可以修改里面的图片小图标,还有背景颜色,又或者加上动图都是可以的,但是整体的框架基本就是这样,所以下面来...
2020-04-24 17:14:51
55592

原创 kotlin扩展函数(防抖)、节流
简介如果说java是开发android的绿皮车,那么kotlin就像是开发android的动车高铁,至于为什么这么说,其中的原因之一:扩展函数至于什么是扩展函数,本文不做过多的介绍,不懂的,需要补基础的可以找某度,本文只介绍怎么使用使用结构如下图,其中ActivityExtends,ContextExtends,ImageViewExtends都是扩展函数罗列其中的几个功能作为演示1、...
2020-04-17 15:23:18
8329
1

原创 微信小程序中好看的按钮样式(渐变色)、view的点击变色效果、按钮漂亮的圆角边框、解决hover设置失效
在.wxss文件中代码如下:/* border-radius: 98rpx;是控制按钮边变圆 */.goodbutton { margin-top: 30px; width: 80%; background-color: rgb(252, 126, 67); color: white; border-radius: 98rpx; background: bg_red...
2018-09-22 09:56:54
42371
11
原创 工具——(常用的软件)视频编辑器
2、图标无损放大:oCam 或者 Adobe Illustrator CS6。4、截图置顶工具:Snipaste 或者。3、图片编辑:Photoshop CS6。6、文本日志工具:Notepad++1、视频编辑器:filmora 9。5、抢票:Bypass。
2025-03-27 15:44:43
148
原创 android——屏幕适配
在 Android 开发中,屏幕适配是非常关键的。因为 Android 设备具有各种各样的屏幕尺寸、分辨率和像素密度。如果没有进行良好的屏幕适配,应用可能会出现显示不完整、元素拉伸或压缩变形、字体大小不合适等问题,极大地影响用户体验。屏幕适配是一个综合性的工作,需要结合布局、资源和代码等多种方式,以确保应用在各种 Android 设备上都能有良好的显示效果。
2024-12-26 14:01:33
1401
原创 图片无损放大(免费)
下载地址:我用夸克网盘分享了「Lossless.Zoomer.x64_3.1.0.zip」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。我们可以使用软件工具:Lossless.Zoomer.x64_3.1.0 来进行无损放大(免费)链接:https://pan.quark.cn/s/e6599ccfeb29。1、使用Lossless.Zoomer.x64_3.1.0。使用左上角的设置--打开--只能放大jpg的文件。
2024-12-23 14:48:49
258
原创 android——jetpack startup初始化框架
Android Jetpack Startup是一个库,它简化了Android应用启动过程,尤其是对于那些需要处理复杂数据绑定和初始化逻辑的应用。它的核心在于提供了一个。这样的自定义方法中。这种做法可能导致UI阻塞,特别是当初始化操作耗时时,用户体验可能会变差。,用于声明应用的初始化逻辑,这个逻辑会在首次启动时异步运行,而不是直接在。AsyncInitializer 类。中初始化,所有的代码通常会放在。LogInitializer类。或相关生命周期方法内,如。
2024-11-05 10:41:33
436
原创 android——自定义控件(不停变化的textview、开关switch、动画效果的打勾)
*** 自定义开关Switch*///默认的宽高比例//动画最大的比例//画跑道型背景//画背景上的字//开启//关闭//画白色圆点//是否正在动画//监听init();init();init();Log.e(TAG,"init()被调用");// 开启的文字样式// 关闭的文字样式@Override。
2024-10-10 10:02:47
541
原创 kotlin——设计模式之责任链模式
使用责任链模式可以避免大量的条件语句,使代码更加可扩展和可维护。同时,它也符合单一职责原则,每个处理者只需要关注自己的责任,而不需要关注其他的逻辑。
2024-09-23 10:40:21
553
原创 kotlin—— withTimeoutOrNull的介绍和使用场景
是 Kotlin 协程库中的一个非常有用的函数,它允许你在指定的时间内执行一个代码块,如果在指定的时间内代码块没有执行完毕,那么它会返回。,而不是抛出一个异常。这个函数在处理可能需要较长时间完成的操作,但又不想让程序因为等待这个操作而阻塞的场景中非常有用。
2024-09-20 19:03:19
713
原创 android——workermanager
Android Jetpack WorkManager是一个库,它简化了后台任务管理和异步工作处理,使得开发者可以编写更易于管理、可靠且响应用户交互的应用。WorkManager可以帮助你在合适的时间执行长时间运行的任务,比如定期数据同步、清理缓存等,而不会影响用户体验。。
2024-08-22 13:56:07
388
2
原创 android——设计模式(工厂模式)
Android 设计模式中的工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,而不必暴露其内部的创建逻辑。在Android中,工厂模式通常用于管理复杂组件实例化的过程,比如创建各种View、Activity、Fragment等。通过将组件的创建过程封装在一个单独的类或者接口中,可以方便地改变实现细节而无需修改客户端代码。
2024-07-05 11:49:40
514
原创 android——Livedata、StateFlow、ShareFlow和Channel的介绍和使用
LiveData是一种在Android开发中用于观察数据变化的组件。它可以被观察者注册并在数据变化时通知观察者,从而实现数据的实时更新。LiveData具有生命周期感知能力,它会自动管理观察者的生命周期,确保观察者只会在活动状态下接收数据更新。示例代码// 模拟获取新数据) {// 更新UI显示})StateFlow是一个具有生命周期的可变状态流。它在流中保存了一组数据,并在数据发生变化时通知观察者。
2024-06-28 18:12:44
919
原创 node——使用localtunnel做内网穿透、mock数据、刷新token的后台用js
内网穿透是一种。将您的本地主机公开到世界各地,使之能访问,无需混淆DNS或部署。此外,内网穿透的好处包括方便远程访问内网资源、进行功能测试和实现远程控制等。它对于需要在外网环境下访问内网服务的开发者、IT管理员以及普通用户都非常有用。
2024-05-11 19:30:52
928
原创 android ——MMKV保存bean实体对象、保存数组bean
MMKV是一款基于 mmap 内存映射的 key-value 存储库,专门为移动端开发设计。相比于传统的SharedPreferences和SQLite等存储方式,MMKV具有更快的读写速度和更小的存储空间占用。同时,MMKV还提供了多线程安全的支持和可配置的加密选项。因此,在移动端开发中,MMKV被广泛应用于数据持久化和缓存优化等方面。
2024-05-10 17:54:00
1217
原创 android——关于app性能优化篇
应用性能优化是指通过各种技术手段和优化策略,提高应用程序的性能,使其能够更高效地运行和响应用户操作。下面介绍一些常见的应用性能优化方法。
2024-05-10 17:31:25
1140
原创 SVN——代码管理以及命令、svn代码迁移到git
SVN(Subversion)是一个版本控制系统,用于管理文件和目录的变更历史记录。它是一个开源的软件,广泛应用于软件开发团队中。版本控制:SVN可以跟踪文件和目录的变更历史,记录每个版本的修改内容,方便团队成员之间的协作和代码管理。分支和合并:SVN支持创建分支,可以在不同的分支上进行独立的开发工作,并在需要时将分支合并到主干上。冲突解决:当多个人同时修改同一个文件时,可能会产生冲突。SVN提供了冲突解决的功能,可以帮助团队成员解决冲突并合并修改。
2024-04-28 14:50:04
3369
原创 java——分页(先加载全部数据,然后把数据分页进行加载)、异步任务AsyncTask
1、先加载全部数据,然后把数据按照20条一页进行加载(不需要UI主动去调分页)2、异步任务AsyncTask。
2024-04-08 18:59:02
453
原创 android——枚举enum
在Kotlin中,枚举(Enum)是一种特殊的类,用于表示固定数量的常量。它允许你定义一组命名的常量值,这些值在程序中具有固定的意义。Kotlin的枚举功能强大,支持多种特性,如伴生对象、构造函数、属性、方法等。
2024-03-29 16:21:30
1101
pdf-to-ppt.zip
2024-08-01
介绍 该项目基于MVVM项目MVVMHabi,kotlin 语言编写的android MVVM模式基础框架
2023-12-15
xml和compose的结合 二级列表GCP列表的简单示例(包括二级列表选中则自动选中一级列表,列表绑定数据)
2023-12-11
Hilt 实现依赖项注入 Hilt-Android.rar
2023-06-14
TabLayout+viewpager自定义.zip
2023-05-06
kotlin compose代码的列表,包括单选,多选
2023-03-22
compose中的ConstraintLayout
2023-03-13
basequickadapter结合recycleview使用、二级子项(泛型版本)
2023-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人