6 张磊BARON

尚未进行身份认证

我要认证

微信公众号:BaronTalk

等级
TA的排名 6w+

安居客 Android App 走向平台化

安居客 Android App 距离上次的模块化/组件化重构已经两年多了,重构之后很好的支撑了两年多以来的业务发展。但这个世界总是在向前走的,没有任何一种架构能够一劳永逸的解决所有问题,外部环境的不断变化相应的也要求项目架构做出改变,以此来应对环境变化所带来的挑战。本文分享的就是我们安居客 App 团队这次向平台化转型的背景、转型过程中所面临的问题、挑战、我们的解决方案以及我个人在这个过程中的...

2019-10-22 13:03:21

为什么我不建议你在当前购买 5G 手机

首发于公众号:BaronTalk,欢迎关注每年的八九月份都是各大厂商发布年自己旗舰机的时候,最近 vivo、oppo、小米、华为、苹果接连发布了自己的年度旗舰,这当中除了苹果,其它厂商均发布了 5G 版本手机。恰逢国庆,势必会迎来一波换机潮,而各大厂商发布的 5G 手机很可能会成为很多同学的首选,今天我要来给准备购买 5G 手机的同学泼泼冷水。先抛出观点:**对于普通消费者,当前不适合购...

2019-09-30 21:15:42

邮件这样写,PK 掉 99% 的同事

首发于微信公众号:BaronTalk,欢迎关注!工作中总免不了需要正式的邮件来沟通协调工作,有跨大团队沟通的,也有向老板汇报工作情况的。每每此时,总是小心谨慎,邮件发出后又常洋洋自得,总觉得自己的邮件条理清晰、结构合理、内容详实,横竖都算得上是专业度颇高的邮件了。可事后回头来看,又觉之前的邮件颇有些青涩稚嫩,不恰当处比比皆是。细细推敲下来,我们在日常职场中的邮件写作还是有些讲究的。因此今天...

2019-08-16 13:03:46

系列 | 深入理解Java虚拟机六(高效并发)

首发于微信公众号:BaronTalk,欢迎关注!高效并发是 JVM 系列的最后一篇,本篇主要介绍虚拟机如何实现多线程、多线程间如何共享和竞争数据以及共享和竞争数据带来的问题及解决方案。一、Java 内存模型与线程让计算机同时执行多个任务,不只是因为处理器的性能更加强大了,更重要是因为计算机的运算速度和它的存储以及通信子系统速度差距太大,大量的时间都花费在磁盘 I/O 、网络通信和数据库访...

2019-08-16 12:36:46

系列 | 深入理解Java虚拟机五(程序编译与代码优化)

首发于微信公众号:BaronTalk,欢迎关注!对于性能和效率的追求一直是程序开发中永恒不变的宗旨,除了我们自己在编码过程中要充分考虑代码的性能和效率,虚拟机在编译阶段也会对代码进行优化。本文就从虚拟机层面来看看虚拟机对我们所编写的代码采用了哪些优化手段。一. 早期优化(编译期优化)Java 语言的「编译期」其实是一段「不确定」的操作过程。因为它可能是一个前端编译器(如 Javac)把 ...

2019-08-16 12:32:50

系列 | 深入理解Java虚拟机四(字节码执行引擎)

首发于微信公众号:BaronTalk,欢迎关注!执行引擎是 Java 虚拟机最核心的组成部分之一。「虚拟机」是相对于「物理机」的概念,这两种机器都有代码执行的能力,区别是物理机的执行引擎是直接建立在处理器、硬件、指令集和操作系统层面上的,而虚拟机执行引擎是由自己实现的,因此可以自行制定指令集与执行引擎的结构体系,并且能够执行那些不被硬件直接支持的指令集格式。在 Java 虚拟机规范中制定了...

2019-08-16 12:28:05

系列 | 深入理解Java虚拟机三(类加载机制)

首发于微信公众号:BaronTalk,欢迎关注!上一篇文章我们介绍了「类文件结构」,这一篇我们来看看虚拟机是如何加载类的。我们的源代码经过编译器编译成字节码之后,最终都需要加载到虚拟机之后才能运行。虚拟机把描述类的数据从 Class 文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的 Java 类型,这就是虚拟机的类加载机制。与编译时需要进行连接工作的语言...

2019-08-16 12:24:13

系列 | 深入理解Java虚拟机二(类文件结构)

首发于微信公众号:BaronTalk,欢迎关注!之前在阅读 ASM 文档时,对于已编译类的结构、方法描述符、访问标志、ACC_PUBLIC、ACC_PRIVATE、各种字节码指令等等许多概念听起来都是云山雾罩、一知半解,原因就在于对类文件结构和类加载机制不够了解。直到后来细读了《深入理解 Java 虚拟机》中虚拟机执行子系统的相关内容,才建立了清晰的认知。如果你也和我一样,不了解类结构和类加...

2019-08-16 12:17:12

系列 | 深入理解Java虚拟机一(自动内存管理机制)

欢迎关注微信公众号:BaronTalk,获取更多精彩好文!书籍真的是常读常新,古人说「书读百遍其义自见」还是蛮有道理的。周志明老师的这本《深入理解 Java 虚拟机》我细读了不下三遍,每一次阅读都有新的收获,每一次阅读对 Java 虚拟机的理解就更进一步。因而萌生了将读书笔记整理成文的想法,一是想检验下自己的学习成果,对学习内容进行一次系统性的复盘;二是给还没接触过这部好作品的同学推荐下,...

2019-06-12 15:27:18

深入理解Java虚拟机(自动内存管理机制)

书籍真的是常读常新,古人说「书读百遍其义自见」还是很有道理的。周志明老师的这本《深入理解 Java 虚拟机》我细读了不下三遍,每一次阅读都有新的收获,每一次阅读对 Jav...

2019-06-10 08:30:00

58无埋点数据采集技术在Android端实践

本文转载自公众号 58架构师,已经作者授权!作为国内最大分类信息生活服务平台,58集团旗下各个产品都会投入大量人力进行用户行为的分析,来提升运营效率。但是各个产品对用户行...

2018-06-15 20:30:00

Android 性能监控系列一(原理篇)

一. 前言性能问题是导致 App 用户流失的罪魁祸首之一,如果用户在使用我们 App 的时候遇到诸如页面卡顿、响应速度慢、发热严重、流量电量消耗大等问题的时候,很可能就会卸载掉我们的 App。而往往获取用户的成本是高昂的,因此因为性能问题导致用户流失的情况是我们要极力避免的,做不好这一点是我们开发人员的失职。去年我们团队完成了整个项目架构方面的重构(有兴趣的同学可以参考我之前的文章安居...

2018-06-05 15:26:28

Android APM 系列一(原理篇)

图片来自 https://unsplash.com一. 前言性能问题是导致 App 用户流失的罪魁祸首之一,如果用户在使用我们 App 的时候遇到诸如页面卡顿、响应速度慢...

2018-06-05 09:00:00

我们和优秀工程师的差距在哪儿

关注微信公众号:BaronTalk,获取更多精彩好文。我相信每个工程师都曾怀揣一个成为技术大牛的梦想,可是真正走向技术大牛这条路的少之又少。工作中我们常常会发现,有些同学工作没几年但成长迅速;很快就能走向团队核心岗位,成为一名优秀的工程师;而有些同学工作几年后却在公司里默默无闻,能力和职位上都没有太大提升,得过且过最终沦为一名普普通通的码农。所以我常常会有感慨,太多人(包括我自己)...

2018-04-25 15:29:49

写给 Android 应用工程师的 Binder 原理剖析

刚刚开通了微信公众号:BaronTalk,之前专栏上的文章也陆续完成了搬迁。后续会持续保质保量的输出,关注一下吧!!! :-)一. 前言这篇文章我酝酿了很久,参考了很多资料,读了很多源码,却依旧不敢下笔。生怕自己理解上还有偏差,对大家造成误解,贻笑大方。又怕自己理解不够透彻,无法用清晰直白的文字准确的表达出 Binder 的设计精髓。直到今天提笔写作时还依旧战战兢兢。Bin...

2018-04-10 23:03:21

RxJava系列六(从微观角度解读RxJava源码)

前言通过前面五个篇幅的介绍,相信大家对RxJava的基本使用以及操作符应该有了一定的认识。但是知其然还要知其所以然;所以从这一章开始我们聊聊源码,分析RxJava的实现原...

2017-12-31 19:19:10

RxJava系列三(转换操作符)

前面两篇文章中我们介绍了RxJava的一些基本概念和RxJava最简单的用法。从这一章开始,我们开始聊聊RxJava中的操作符Operators,后面我将用三章的篇幅来分...

2017-12-31 19:19:10

RxJava系列四(过滤操作符)

前面一篇文章中我们介绍了转换类操作符,那么这一章我们就来介绍下过滤类的操作符。顾名思义,这类operators主要用于对事件数据的筛选过滤,只返回满足我们条件的数据。过滤...

2017-12-31 19:19:10

RxJava系列七(最佳实践)

前言有点标题党了,其实谈不上什么最佳实践。前段时间公司实行996,所以也没什么时间和精力来更新博客(好吧~我承认是我懒~)。因此这篇文章只是简单的通过两个例子介绍了RxJ...

2017-12-31 19:19:10

RxJava系列二(基本概念及使用介绍)

前言上一篇的示例代码中大家一定发现了Observable这个类。从纯Java的观点看,Observable类源自于经典的观察者模式。RxJava的异步实现正是基于观察者模...

2017-12-31 19:19:10

查看更多

勋章 我的勋章
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。