自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (1)
  • 收藏
  • 关注

原创 初识动态规划(dynamic programming)算法基本思想

初识动态规划(dynamic programming)算法基本思想​目录一、常见算法:二、动态规划描述:三、斐波那契数列四、给定一个数组,求任意不相邻数字的最大值五、解决动态规划问题的一般步骤六、课后小练习​一、常见算法:1、动态规划算法;2、分治法;3、贪心算法,一种对某些求最优解问题的更简单、更迅速的方法,4、回溯法,一种选优搜索法;5、分支限界法。二、动态规划描述:来自百度词条的介绍:是运筹学的一个分支,是求解决策过程最优化的过程。20世纪50年代初,美国数学家贝尔曼(R.B

2021-11-12 15:29:57 433

原创 初窥元宇宙

初窥元宇宙一、什么是元宇宙二、元宇宙现状三、元宇宙所需要的技术四、元宇宙发展作者:redsailfish一、什么是元宇宙  Metaverse译为元宇宙,是由meta(超越)和取自universe(宇宙)的verse两个单词组合,此概念出自尼尔·斯蒂芬森(Neal Stephenson)1992年发布的科幻小说《雪崩》。元宇宙可以看做是当前存在的延伸,是一个脱胎于现实世界,又与之平行、相互影响的在线虚拟世界,是互联网下一个阶段的发展方向。人们可以通过虚拟形象在元宇宙内生活,其中有完整的经济和社会系统。

2021-11-05 15:21:36 4630

原创 SnapKit源码解读

SnapKit源码解读什么是SnapkitSnapKit是一个使用 Swift 编写而来的AutoLayout 框架,通过使用Snapkit,我们可以通过简短的代码完成布局,使用view.snp.makeConstraints { (make) inmake.center.equalToSuperview()}DSL(Domain specific Language)特定领域语言DSL是为了解决某些特定场景下的任务而专门设计的语言。如果能把一些设计师产出的长宽、色值、文字、居中、距上等

2021-03-27 11:42:37 521

原创 浅谈iOS-Block

浅谈iOS-Block对于 block 的语法,只放一张图即可。Xcode 的默认编译器 clang ,在学习 Objective-C 中的 block ,会经常使用的 clang 的 -rewrite-objc 命令来将 block 的语法转换成C语言的 struct 结构,从而供我们学习参考。1:Block本质block本质上也是一个OC对象,它内部也有个isa指针block封装了函数调用以及函数调用环境block封装函数及其上下文block底层结构图struct __block_im

2021-03-26 19:05:34 193

原创 Flutter的滑动原理

1 Flutter 的滑动原理1.1 PageView的核心结构(一) PageViewPageView就是基于Scrllable进行了定制,通过封装Notification获取到ScrollNotification类的通知,根据通知信息里的偏移判断当前页面是否发生了切换,然后回调onPageChanged。(二)RawGestureDetector手势收集类,在Scrollable的setCanDrag方法中,绑定了VerticalDragGestureRecognizer或者Horizont

2021-03-26 13:56:38 1865 1

原创 swift/dart代码规范检查工具介绍

swift/dart代码规范检查工具介绍简介:本篇主要介绍swift和dart代码规范检查工具,以及他们的工作原理,操作过程,代码规范规则。1 swift代码检查工具-swiftlint1.1 介绍swiftlintSwiftLint 是 realm 公司开发的一个插件,专门用于管理 Swift 代码的规范。1.2 swiftlint工作原理SwiftLint 的工作原理是检查 Swift 代码编译过程中的 AST 和 SourceKit 环节,从而可以摆脱不同版本 Swift 语法变化的

2021-03-19 12:03:47 1597 1

原创 深度解析statelessWidget与statefulWidget

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、问题引入二、概念标注三、生命周期StatelessWidget延伸-InheritedWidget1.引入库2.读入数据总结前言请思考以下几个问题(1)简述Widget的StatelessWidget和StatefulWidget两种状态组件类(2)StatefulWidget 的生命周期(3)flutter常说的三棵树,是哪三棵树?互相之间有什么关系一、问题引入参考文章:https://juejin.cn/

2021-03-12 09:08:41 570

原创 RxJava中的观察者模式和线程切换

观察者模式为了方便查看Rxjava的源码,举一个最简单的使用rxjava的例子。Observable.create(new ObservableOnSubscribe<Integer>() { @Override public void subscribe(ObservableEmitter<Integer> emitter) throws Exception { Log.d(TAG, "subscr

2021-01-22 14:55:30 207

原创 网页优化之WebView预加载

前言现在许多app都嵌入了H5页面,H5具有开发周期短、灵活性好的特点。但是WebView的性能问题却一直影响着用户体验。特别突出的就是加载速度慢和消耗流量。在项目中,我做了一个测试,加载一个默认结果页所需时间(测试手机一加8)在强网情况下,不考虑加载url所需的164ms情况下,Webview初始化及在loadUrl情况下初始化配置文件耗时448ms+365ms=813ms,即当我们第一次打开WebView时将近1s的时间在做初始化操作,这段时长足以让用户感知。由于webview初始化时间过长,

2021-01-13 16:23:00 3450

原创 NestedScrolling+SmartRefreshLayout+RecyclerView(ViewPager)滑动冲突问题

思路一:通过下方RecyclerView滑动带动整体布局滑动mRecyclerView.setOnScrollChangeListener(new View.OnScrollChangeListener() { @Override public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) { tot.

2021-01-13 16:22:12 2830 2

原创 鸿蒙简介以及从零开始开发一个HarmonyOS应用

鸿蒙简介以及从零开始开发一个HarmonyOS应用 文章目录 一、鸿蒙系统介绍二、从零开始开发一个鸿蒙harmonyOS应用 1.环境搭建2.项目工程结构介绍 一、鸿蒙系统介绍 HarmonyOS是一款“面向未来”、面向全场景(移动办公、运动健康、社交通信、媒体娱乐等)的分布式操作系统。在传统的单设备系统能力的基础上,HarmonyOS提出了基于同一套系统能力、适配...

2021-01-05 16:58:49 4935

原创 Flutter 与原生交互

Flutter 与原生交互一.信息传递方面1.通过dart的Channel进行通信平台通道的作用是在 Flutter 和设备之间传递消息,如下所示:Flutter 中平台特定的 API 支持并不依赖于代码生成,而是依赖于灵活的消息传递方式:应用程序的 Flutter 部分通过平台通道(Platform Channel)将消息发送到该应用程序的设备平台(Android 或 iOS)设备平台通过对平台通道的监听接收到消息之后,调用设备平台上对应的 API(使用设备平台原生开发语言),然后将响应数据

2020-12-30 15:51:10 1626

原创 你有多忽视Jet Pack,使用的时候你就会觉得有多香

JetPack什么是JetPackJetPack常用工具架构组件行为组件实践案例JetCompose又是什么(暂时作为了解,kotlin用不熟伤不起)?什么是JetPack先附上官网:https://developer.android.com/jetpack期待解决的问题:遵循最佳做法:Android Jetpack 组件采用最新的设计方法构建,具有向后兼容性,可以减少崩溃和内存泄露。消除样板代码:Android Jetpack 可以管理各种繁琐的 Activity(如后台任务、导航和生命周期管理

2020-11-12 14:08:48 725 1

原创 Flutter中ListView复用原理探索

Flutter三棵树之间的关系众所周知flutter中有三颗非常重要的树形结构,分别为widget树,element树和renderObject树其中widget树,存放渲染内容,只是一个数据结构。创建和销毁十分轻量,在页面的刷新过程中经常会被重建。就个人而言,可以把widget抽象的理解为一个存放配置信息的map。element树,同时持有widget和renderObject,存放上下文信息,可以说是widget和renderObject的连接件。renderObject树,负责layout和p

2020-11-09 17:22:33 3851

原创 2020-11-08

目录Flutter状态管理 一Flutter状态管理 一d

2020-11-09 14:11:24 120

原创 PMP项目管理

PMP项目管理是基于PMBOK指南,包括:五大管理过程组 十大知识领域 49个子过程管理

2020-09-27 14:07:03 676

原创 内存优化之Bitmap基础

内存硬件发展由于咱们的技术分享要结合Android和IOS两端来进行,所以本次分享大部分内容将围绕着一些硬件的发展以及关于图片内存使用来进行,其中可能会涉及到一些Android图片内存使用的东西,如果有问题大家可以随时打断我进行探讨。随着手机硬件技术的发展,内存硬件不论是在空间上还是在读写速度上都有了很大的提升,Facebook 有一个叫device-year-class的开源库,它会用年份来区分设备的性能。可以看到,2008 年的手机只有可怜的 140MB 内存,而今年的华为 Mate 40 Pro

2020-09-11 10:12:26 503

原创 高效能人士的七个习惯分享

高效能人士的七个习惯中国搜索 - 静心前言今天我来给大家分享一本书,这是一本非常经典的书,不知道大家是不是度过?叫做《高效能人士的7个习惯》(问问大家有没有读过),这本书说实话我也是最近才刚开始看,之前一直知道就是没有看过,起源还是源于樊登读书,史蒂芬柯维还有一本书叫做《第三选择》可以理解为是这本书的最高终结版,将7个习惯融会贯通之后最终留下的就是第三选择。首先跟大家要解释的一点是,分享这本书的目的不在于我的分享,目的在于希望可以抛砖引玉,让他打家也可以真正去读一读,去思考思考,不了解大家的情况,我

2020-08-26 10:22:51 1808

原创 Flutter自定义AppBar&自定义解析单标签HTML富文本

Flutter自定义AppBar&自定义解析单标签HTML富文本初学Flutter,为了完成一个带有搜索栏、TabBar以及多个图标按钮的布局可以说是绞尽脑汁。原生的AppBar虽然拥有bottom属性,常用的方法也是配合TabBar一起使用,但是并没有能修改顶部的对应的属性,只能设置一个标题栏而已。对于flexibleSpace这个属性,是指处于AppBar和bottom之间的一个和AppBar等高的控件,大概关系是这样的:而为了达到这种效果:显然是不太合适的,除非能把AppBar的tit

2020-08-18 16:32:40 1462 1

原创 国外APP交互调研

国外APP交互调研由于新项目主要面向海外用户,在部门内部的商讨下,决定对海外的app进行一次调研,调研范围主要针对用户量比较大的海外app。目录1.调研范围 2.调研结果涉及到的方面 (1).设计方面 (2).移动端技术方面 (3).服务端技术方面 1.调研范围(排名不分先后)1.Facebook (美国的一个社交网络服务平台)2.Twitter (美国社交网络及微博客服务平台)3.KakaoTalk (韩国的由中国腾讯担任第二大股东的免费聊天软件,类似于QQ微信的聊天软件)4.

2020-08-18 15:36:17 2532

PMP串讲-介绍pmbook.pdf

PMP项目管理是基于PMBOK指南,包括:五大管理过程组 十大知识领域 49个子过程管理。本ppt主要是针对项目管理PM BOOK第六版这本书的每章节内容进行概要的讲解和串联。

2020-09-27

空空如也

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

TA关注的人

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