自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 收藏
  • 关注

原创 zookeeper原理篇-Zookeeper的数据存储与恢复原理

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

2024-05-17 01:57:40 326

原创 tensorflow-android 官方demo源码分析

开发是面向对象。我们找工作应该更多是面向面试。哪怕进大厂真的只是去宁螺丝,但你要进去得先学会面试的时候造飞机不是么?作者13年java转Android开发,在小厂待过,也去过华为,OPPO等,去年四月份进了阿里一直到现在。等大厂待过也面试过很多人。深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含。

2024-05-17 00:17:32 399

原创 React Native入门——布局实践:开发京东客户端首页(一

我见过很多技术leader在面试的时候,遇到处于迷茫期的大龄程序员,比面试官年龄都大。这些人有一些共同特征:可能工作了7、8年,还是每天重复给业务部门写代码,工作内容的重复性比较高,没有什么技术含量的工作。问到这些人的职业规划时,他们也没有太多想法。其实30岁到40岁是一个人职业发展的黄金阶段,一定要在业务范围内的扩张,技术广度和深度提升上有自己的计划,才有助于在职业发展上有持续的发展路径,而不至于停滞不前。不断奔跑,你就知道学习的意义所在!

2024-05-16 21:16:17 323

原创 OkHttp3源码详解之 okhttp连接池复用机制(一)

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。下图是我进阶学习所积累的历年腾讯、头条、阿里、美团、字节跳动等公司2019-2021年的高频面试题,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节祝大家都能得到自己心仪工作。《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-16 18:24:29 518

原创 lambda表达式(3)-shawn

函数式接口,从字面意思上来说就是适用于函数式编程场景的接口,在 java中函数式接口就是有且仅有一个抽象方法的接口。java中函数式编程最主要体现就是lambda表达式,所以一个接口有且仅有一个抽象方法时候才能够使用lambda对该接口实现进行推导。我们现在自定义个一个函数式接口,为了该函数式接口不被破坏一般在函数式接口上加上注解。/**测试执行函数式接口*/System.out.println(“执行函数式接口方法!”);});执行函数式接口方法!,再次强调。

2024-05-16 16:42:01 350

原创 Kotlin 源码里成吨的 noinline 和 crossinline 是干嘛的?(1)

inline让变量内联用的是 const;而除了变量,Kotlin 还增加了对函数进行内联的支持。在 Kotlin 里,你给一个函数加上 inline 关键字,这个函数就会被以内联的方式进行编译。但!虽然同为内联,inline 关键字的作用和目的跟 const 是完全不同的。编译时常量为什么这么多限制?因为只有符合这些限制,编译器和 JVM 才有能力做优化,从而这种内联操作也才有意义。稍微复杂一点,就优化不动了。什么叫「稍微复杂」我不知道,但是函数内联这种操作,绝对算得上是相当复杂了,绝对优化不动的。其实真

2024-05-16 15:34:26 281

原创 IOS开发之——绘制基本形状(73)

感觉现在好多人都在说什么安卓快凉了,工作越来越难找了。又是说什么程序员中年危机啥的,为啥我这年近30的老农根本没有这种感觉,反倒觉得那些贩卖焦虑的都是瞎j8扯谈。当然,职业危机意识确实是要有的,但根本没到那种草木皆兵的地步好吗?Android凉了都是弱者的借口和说辞。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。

2024-05-16 13:56:00 417

原创 Handler 源码机制

给大家分享一份移动架构大纲,包含了移动架构师需要掌握的所有的技术体系,大家可以对比一下自己不足或者欠缺的地方有方向的去学习提升;《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!()) {//如果需要唤醒队列对消息的处理,通过nativeWake可以唤醒 nativePollOnce (这个会在queue.next()中调用,使对于消息的处理进行休眠操作)的沉睡。

2024-05-16 12:30:04 304

原创 Flutter:如何使用 CustomPaint 绘制心形

// Hearts with bordersCustomPaint(size: const Size(200, 120),painter: MyPainter(Colors.purple, Colors.black, 10),),CustomPaint(size: const Size(200, 240),painter: MyPainter(Colors.red, Colors.redAccent, 5),),CustomPaint(size: const Size(50, 100),painter: M

2024-05-16 10:44:12 350

原创 MVVM架构:LiveData + ViewModel + Repository搭配的三种解决方案

对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。整理的这些架构技术希望对Android开发的朋友们有所参考以及少走弯路,本文的重点是你有没有收获与成长,其余的都不重要,希望读者们能谨记这一点。下面是部分资料截图,诚意满满:特别适合有开发经验的Android程序员们学习。不论遇到什么困难,都不应该成为我们放弃的理由!如果你看到了这里,觉得文章写得不错就给个赞呗?《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》

2024-05-16 01:15:22 263

原创 Kotlin学习(3)可空类型和类型系统

Java中的数组的类型 T[](long[],int[]…}),而在Kotlin中,直接用Array类型表示数组,比如我们构造一个int数组,5个元素,每个元素的初始值为 i*i:val squareArray = Array(5, {i -> i * i})014916Kotlin中对Java中8个基本类型数组用了 新的 xxxArray来定义。(比如 BooleanArray、ByteArray、DoubleArray…)2. 可空类型==================================

2024-05-15 23:43:43 827 2

原创 Kotlin Android开发·Kotlin必会的变量和函数

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。上面分享的百度、腾讯、网易、字节跳动、阿里等公司2021年的高频面试题,博主还把这些技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,上面只是以图片的形式给大家展示一部分。【Android思维脑图(技能树)】知识不体系?

2024-05-15 22:36:11 979

原创 IOS开发之——画板-照片(89)

二 功能实现#import typedef void(^HandleImageViewBlock) (UIImage *image);@interface HandleImageView : UIView@property (nonatomic,strong) UIImage *image;@property (nonatomic,copy) HandleImageViewBlock block;@end#import “HandleImageView.h”#import “U

2024-05-15 19:44:28 266

原创 Hadoop集群搭建(一)——Liunx网络、主机名配置,多台虚拟机的相互连通和远程登陆

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

2024-05-15 18:19:29 320

原创 Flutter:如何使用 CustomPaint 绘制心形

// Hearts with bordersCustomPaint(size: const Size(200, 120),painter: MyPainter(Colors.purple, Colors.black, 10),),CustomPaint(size: const Size(200, 240),painter: MyPainter(Colors.red, Colors.redAccent, 5),),CustomPaint(size: const Size(50, 100),painter: M

2024-05-15 16:49:40 402

原创 [译] MDC-104 Flutter:Material 高级组件(Flutter)

override// TODO:添加 _FrontLayer 类(104)// TODO:添加 _BackdropTitle 类(104)// TODO:添加 _BackdropState 类(104)导入包来添加@required标记。当构造函数中的属性没有默认值且不能为空的时候,用它来提醒你不能遗漏。注意,我们在构造方法后再一次声明了传入的值的确不是。

2024-05-15 15:54:04 374

原创 STM32F429系统架构

我坚信,坚持学习,每天进步一点,滴水穿石,我们离成功都很近!以下是总结出来的字节经典面试题目,包含:计算机网络,Kotlin,数据结构与算法,Framework源码,微信小程序,NDK音视频开发,计算机网络等。字节高级Android经典面试题和答案《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!)]《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-15 13:38:21 309

原创 react-native-image-picker 实现文件上传

针对于上面的问题,我总结出了互联网公司Android程序员面试涉及到的绝大部分面试题及答案,并整理做成了文档,以及系统的进阶学习视频资料。(包括Java在Android开发中应用、APP框架知识体系、高级UI、全方位性能调优,NDK开发,音视频技术,人工智能技术,跨平台技术等技术资料),希望能帮助到你面试前的复习,且找到一个好的工作,也节省大家在网上搜索资料的时间来学习。《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-15 12:02:23 375

原创 okhttp enqueue流程(1)

总之啊,家里没矿的同学们,如果你们想以后的日子过得好一些,多想想你们的业余时间怎么安排吧;技术方面的提升肯定是重中之重,但是技术外的一些“软实力”也不能完全忽视,很多时候升职确实是因为你的技术足够强,但也与你的“软实力”密切相关在这我也分享一份大佬自己收录整理的Android学习PDF+架构视频+面试文档+源码笔记,还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这些都是我闲暇还会反复翻阅并给下属员工学习的精品资料。

2024-05-15 06:58:32 556

原创 Kotlin:字符串(String)

【Android开发核心知识点笔记】【Android思维脑图(技能树)】【Android核心高级技术PDF文档,BAT大厂面试真题解析】【Android高级架构视频学习资源】《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!。其接受任意类型。plus()函数是一个运算符重载函数。在前面的章节中讲解过了。若你对KotlinKotlin——初级篇(五):操作符重载一实例讲解:【Android开发核心知识点笔记】

2024-05-15 05:16:35 1018

原创 kotlin 实战之泛型与逆变协变总结(1)

用来限定类型的上界,也就是常说的协变,我们只能把它当作 extends 后面的 E 类型来读取,且读取是安全的类型转换,但是不能写入,写入会导致编译错误,因为写入可能是不安全的类型转换。希望这份系统化的技术体系对大家有一个方向参考。//【工匠若水 加微信 yanbo373131686 联系我,关注微信公众号:码农每日一题 未经允许严禁转载 https://blog.youkuaiyun.com/yanbober】用来限定类型的下界,也就是常说的逆变,逆变是用来保证写入安全的,但是不能读取,有可能类型是不安全的转换。

2024-05-15 04:09:04 706

原创 IOS开发之——私人通讯录编辑样式(60)

本文主要介绍一下内容:导航条右侧(已有添加按钮)添加一个删除按钮点击删除按钮,删除tableview条目tableview编辑之前调用,切换tableview中编辑模式(添加、删除模式)二 效果图三 导航条右侧(已有添加按钮)添加一个删除按钮业务逻辑现获取布局中的“add”按钮通过代码新建一个“delete”按钮通过avigationItem.rightBarButtonItems将上面的两个按钮添加进来代码实现123456//获取+按钮UIBarButtonItem *add=self.navigati

2024-05-15 02:32:34 341

原创 Hadoop集群搭建(一)——Liunx网络、主机名配置,多台虚拟机的相互连通和远程登陆

其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。

2024-05-15 01:06:32 342

原创 Flutter:如何使用 CustomPaint 绘制心形

// Hearts with bordersCustomPaint(size: const Size(200, 120),painter: MyPainter(Colors.purple, Colors.black, 10),),CustomPaint(size: const Size(200, 240),painter: MyPainter(Colors.red, Colors.redAccent, 5),),CustomPaint(size: const Size(50, 100),painter: M

2024-05-14 23:36:38 780

原创 [译] 管中窥豹:RxJava 与 Kotlin 协程的对比

这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。

2024-05-14 22:56:58 1054

原创 ViewPager(二):与Fragment的结合

if (mCurTransaction == null) {mCurTransaction = mFragmentManager.beginTransaction();}if (DEBUG) Log.v(TAG, “Removing item #” + position + “: f=” + objectwhile (mSavedState.size()

2024-05-14 21:23:25 841

原创 RxJava-2-0还没熟悉,RxJava-3-0说来就来了!(基础篇)

如果你觉得文章写得不错就给个赞呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。,第一时间获取最新知识点Android架构师之路很漫长,一起共勉吧!

2024-05-14 19:40:36 796

原创 phonegap跳转Activity android插件调用原生(1)

在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。

2024-05-14 18:17:32 621

原创 Monoio:基于 io-uring 的高性能 Rust Runtime

过去,高性能网络中间件或服务器往往使用 C/C++ 编写,比如我们常见的 Envoy 和 Nginx。它们往往以非常直接的方式和操作系统交互,并且得益于没有垃圾收集机制,相比有 GC 的语言(如 Golang 和 Java),额外开销十分低,延迟稳定。但是开发这类组件对开发者的专业水平有较高的要求,编程范式上对开发者心智负担巨大,稍有不慎就会造成非预期的后果。举例来说,在 C++ 中要完成一次异步的网络请求,需要将整个流程按照异步点拆分成独立的纯同步函数,并以 callback 的形式将其串联——这一来大大

2024-05-14 16:45:46 1043

原创 Kotlin学习三:高阶函数

这里我希望可以帮助到大家提升进阶。Android学习PDF+架构视频+面试文档+源码笔记高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料这几块的内容。非常适合近期有面试和想在技术道路上继续精进的朋友。喜欢本文的话,不妨给我点个小赞、评论区留言或者转发支持一下呗~《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》点击传送门,即可获取!

2024-05-14 15:19:37 939

原创 Js正则表达式(1)

匹配html标签的正则表达式:(.*)|匹配首尾空格的正则表达式:(^\s*)|(\s*)应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下:String.prototype.trim = function(){return this.replace(/(^\s*)|(\s* )应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下:String.proto

2024-05-14 14:09:43 746

原创 Handler中Looper死循环为什么不会导致应用卡死?

为什么没有导致应用卡死?因为应用卡死压根与这个Looper没有关系,应用在没有消息需要处理的时候,它是在睡眠,释放线程;卡死是ANR,而Looper是睡眠。卡死是在主线程中执行一个耗时的操作,loop()会一直在处理一个消息,而for循环中有很多消息需要被处理,而这一个消息就要处理很久,这一个消息的处理时间,会转变成其他的点击事件没有响应。因为主线程在接受到其他消息的时候没有时间去响应,它的时间都在处理那一个耗时的操作,造成点击事件没有办法响应,点击事件没有办法响应就容易出现ANR。

2024-05-14 02:49:08 915

原创 FlyTour 新闻客户端是 Android MVP+Dagger2+Retrofit+RxJava+组件化项目框架

支持 loading 加载数据支持透明 loading 的加载数据支持显示无数据支持网络网络错误显示支持 Fragment 的懒加载支持最基本的下拉刷新、上拉加载更多支持自定义 HeadView 和 FootView支持自动刷新支持启用、禁用下拉刷新支持启用、进攻上拉加载更多通用小菊花样式 DaisyRefreshLayout通用小箭头样式 ArrowRefreshLayoutFlyTour 1.1.0 2019-03-34增加了功能组件日期选择器 lib_time_pickerMVP 功能的一些优化Fly

2024-05-14 01:15:37 422

原创 zookeeper使用篇-Zookeeper Api实践(1)

zookeeper中对节点的操作全部提供了同步和异步两种操作方式,并且有多种不同情况下的方法重载1.原生Api的创建节点,必须按照层级创建,因此建议创建之前我们也要检查该节点是否存在2.Zookeeper中节点的删除操作也必须按照层级进行删除,即当前节点下存在子节点,必须优先删除子节点,再去删除当前节点,建议删除之前优先检查一下是否存在子节点除此之外,如果我们对某个节点进行监听,如果细心的话也会发现,原生的Api实现中,监听触发一次以后就不会再触发了。

2024-05-13 20:24:39 567

原创 String、StringBuffer、StringBuilder三者的联系

现在随着短视频,抖音,快手的流行NDK模块开发也显得越发重要,需要这块人才的企业也越来越多,随之学习这块的人也变多了,音视频的开发,往往是比较难的,而这个比较难的技术就是NDK里面的技术。音视频/高清大图片/人工智能/直播/抖音等等这年与用户最紧密,与我们生活最相关的技术一直都在寻找最终的技术落地平台,以前是windows系统,而现在则是移动系统了,移动系统中又是以Android占比绝大部分为前提,所以AndroidNDK技术已经是我们必备技能了。

2024-05-13 18:38:28 739

原创 react-redux使用

使用前得需要安装获取用户列表的相关操作.123456789101112123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525312312345678910111213141516171819123456789101112这里创建了相关的reducers.12对于很多初中级Android工程师而言,想要提升技能,往往是自己摸索成长,不成体系的学习效果低效漫长且无助。 整理的

2024-05-13 17:04:24 120

原创 Memcached集群的使用

*其实上面说了这么多,钱是永远赚不完的,在这个知识付费的时代,知识技能提升才是是根本!我作为一名8年的高级工程师,知识技能已经学习的差不多。**在看这篇文章的可能有刚刚入门,刚刚开始工作,或者大佬级人物。像刚刚开始学Android开发小白想要快速提升自己,最快捷的方式,就是有人可以带着你一起分析,这样学习起来最为高效,所以这里分享一套高手学习的源码和框架视频等精品Android架构师教程,保证你学了以后保证薪资上升一个台阶。这么重要的事情说三遍啦!

2024-05-13 14:25:07 612

原创 Kotlin学习tips

15.映射对象到变量中映射对象的每一个属性到一个变量中,这个过程就是我们知道的多声明。这就是为什么会有 componentX 函数被自动创建。val f1 = Forecast(Date(), 27.5f, “Shiny day”)val (date, temperature, details) = f116.伴随对象可以拿来声明一些公用的方法,或者属性(需要用的时候才被初始化),和Java的静态方法有点儿像,只是有点像.17.with函数18.while条件中不允许包含赋值语句,例如java中这么写的in

2024-05-13 13:05:09 973

原创 JSON数据格式必知

题外话,我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在IT学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多程序员朋友无法获得正确的资料得到学习提升,故此将并将重要的Android进阶资料包括自定义view、性能优化、MVC与MVP与MVVM三大框架的区别、NDK技术、阿里面试题精编汇总、常见源码分析等学习资料。【Android思维脑图(技能树)】

2024-05-13 11:54:42 637

原创 IOS开发之——绘制基本形状(73)

感觉现在好多人都在说什么安卓快凉了,工作越来越难找了。又是说什么程序员中年危机啥的,为啥我这年近30的老农根本没有这种感觉,反倒觉得那些贩卖焦虑的都是瞎j8扯谈。当然,职业危机意识确实是要有的,但根本没到那种草木皆兵的地步好吗?Android凉了都是弱者的借口和说辞。虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。

2024-05-13 10:37:06 421

空空如也

空空如也

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

TA关注的人

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