稀有猿诉

十年磨一剑,历炼出锋芒,说话千百句,不如码二行。

不使用Jetpack Compose的10个理由

本文译自10 reasons to NOT use Jetpack Compose,原文发布于2024年9月24日。

译者按: 软件开发行业从不缺少优秀的工具,当然也没有银弹。身为开发者要学会选择合适的工具,避免出现手里拿着锤子,看什么都是钉子。那么就需要搞清楚两个事情,一个是面临的到底是什么样的问题,以及每种工具它的合适场景是什么。没有对与错,只有合适不合适。这篇文章就是帮助大家更清晰地了解到Jetpack Compose适用的场景,帮助Android开发者做出最合适的选择。

简介

Jetpack Compose 是一款出色的 UI 工具包,受到 Android 社​​区的热烈欢迎。它提供了一种为你的 Android 应用构建令人愉悦的 UI 的现代方式。

一文带你理解OkHttp中的Gzip压缩

本文译自OkHttp’s Gzip Compression,原文发布于2020年5月1日。本文假定读者对HTTP有基本的了解,以及使用过OkHttp,否则理解起来可能会一点困难。

译注: OkHttp确实会自动添加gzip并处理响应。但如果显示的给请求添加除了gzip之外的字段,如”Accept-Encoding: gzip, deflate, br”,那么就需要手动处理响应。其实一般时候我们并不需要手动设置,除非是模拟浏览器时(比如用了浏览器的UA),或者某些服务器强制deflate字段。更多的信息可以看这里

详解DiffUtils、Myers算法和 Jetpack Compose

本文译自《DiffUtils, Myers’ Algorithm and Jetpack Compose》,原文发布于2024年12月27日。

在 Android UI 开发领域,DiffUtils 是优化 RecyclerView 中列表更新的必备工具。DiffUtils 是一个实用程序类,它计算将一个列表转换为另一个列表所需的最小更改,并仅更新 UI 中已更改的部分,从而节省性能并减少不必要的重绘。这个强大的工具依赖于Myers算法,这是一种在两个序列之间找到最短编辑脚本(Shortest edit script)的有效方法。

关于Android 16你想知道的都在这里

2025年的Android新版本来的比2024年稍早了一些。今年Google非常反常地提前就发布了Android的新版本Android 16 Baklava,整体的计划比往年提前了2~3个月。另外,谷歌把Android 16的代码命名为「Baklava」,这与先前的字母表顺序的点心食物命名方式截然不同,不过「Baklava」巴克拉瓦,又称果仁蜜饼,是一种口味浓郁、甜蜜的土耳其酥皮点心。

群星闪耀的大前端开发

乔帮主发布iPhone以降,把世界推向了智能手机时代,随之而来的是移动互联网大潮,一时间移动应用开发变得炙手可热起来,渐渐的超越了传统桌面端和传统前端,成为了主流。随之而来的就是重复开发的问题,同样的业务需要在Android上面实现一次,在iOS上面实现一次,通常也需要在Mobile Web(移动端H5)实现一次,自此跨端开发成了移动互联时代一个必须要攻克的难题。