自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 从原理到实战:把 Python WebSocket 讲透,一篇真正能落地的指南

这篇文章不打算只讲“WebSocket 是什么”。我更想把它讲成一件你读完就能上手写、出了问题也知道怎么排查、上线时心里有数的事。如果你正在做聊天室、实时通知、行情推送、协同编辑、在线游戏、设备状态同步,这篇文章会很适合你。

2026-03-11 16:22:59 404

原创 从入门到实战:彻底讲透 Python `threading` 的工作原理、正确用法与避坑指南

很多人第一次接触 Python 多线程,都会有一种“会用,但没真正懂”的感觉。明明开了好几个线程,程序却不一定更快;明明逻辑很简单,却偶尔出现莫名其妙的数据错误;明明线程都 start() 了,程序还是卡住不退出。这篇文章就来把 Python threading 一次讲透。不只是“怎么写”,更重要的是“为什么这样写”。

2026-03-11 15:52:04 386

原创 从请求到响应:把 Python 的 FastAPI 和 Uvicorn 讲透

这不是一篇“照着官网抄一遍 Hello World”的入门文。如果你想真正搞明白:FastAPI 到底解决了什么问题、Uvicorn 到底扮演什么角色、两者如何配合、项目上线时该怎么设计与避坑,那这篇文章就是写给你的。

2026-03-11 14:26:00 573

原创 Python tempfile 深入实战:安全、优雅地处理临时文件与临时目录

临时文件的典型使用场景非常多:* 处理上传文件后,先落盘再解析* 下载远程内容,做中间缓存* 大文件处理中,避免一次性全部驻留内存* 调用第三方命令行工具时,生成中间输入/输出文件* 测试代码时,隔离运行环境* 数据转换、压缩、解压、音视频处理时保存中间结果很多人第一次写临时文件,都是直接拼路径...

2026-03-11 13:53:34 429

原创 不止是装饰器:把 Python `functools` 真正用起来的完整指南

很多人第一次接触 functools,往往是因为 @wraps。再往后一点,学到 partial、lru_cache,就觉得这个模块差不多已经掌握了。但真正在项目里用久了你会发现:functools 其实不是一个“零散工具箱”,而是一组非常有 Python 味道的函数式编程增强能力。

2026-03-10 18:00:47 749

原创 从“会用”到“用好”:一篇彻底讲透 Python Requests 的实战指南

很多 Python 开发者第一次接触网络请求,几乎都是从 requests 开始的。它简单、直观、优雅,几行代码就能把 HTTP 请求发出去。但真正到了项目里,大家很快会发现:会发请求,和把请求写得稳定、清晰、可维护,完全是两回事。

2026-03-10 17:46:29 842

原创 Python 中的 import fastapi:不仅仅是一行导入

很多人在第一次接触 FastAPI 时,都会看到这样一行代码:```pythonfrom fastapi import FastAPI````看起来非常简单,但这行代码背后其实涉及:* Python 模块系统* Web 框架设计* ASGI 生态* 应用实例的创建方式如果只是照着教程写,很容易“会用但不理解”。这篇文章就从开发者的角度,聊聊 **`import fastapi` 到底发生了什么,以及为什么 FastAPI 要这样设计。**

2026-03-10 15:36:47 417

原创 Python 函数指南:从会用到用好

在日常 Python 开发中,**函数(Function)几乎是所有代码结构的基础**。 不管是脚本工具、Web 服务,还是数据分析代码,函数都是让代码保持清晰、可复用、易维护的关键。很多初学者会写函数,但往往**写得不够“Pythonic”**。这篇文章不讲枯燥语法,而是结合实际开发经验,聊一聊 Python 函数那些值得掌握的技巧。

2026-03-10 15:20:37 418

原创 Python 中的 `__init__.py` 到底是干什么的?从入门到工程实践

在阅读 Python 项目代码时,你一定见过很多这样的文件:`__init__.py`很多人刚接触 Python 时都会有几个疑问:- 这个文件为什么叫 `__init__`?- 为什么有的项目里有,有的项目里没有?- 里面到底应该写什么?- 不写会怎么样?

2026-03-09 17:00:00 652

原创 Python 中 `if __name__ == “__main__“` 的真正含义:从原理到最佳实践

很多 Python 初学者在阅读代码时,几乎都会看到这样一段代码:```pythonif __name__ == "__main__": main()````很多人只是知道 **“这是程序入口”**,但并不清楚背后的机制。实际上,这一行代码背后涉及 **Python 模块系统、解释器执行方式、代码复用设计** 等多个核心概念。

2026-03-09 16:44:29 382 3

原创 Python Socket 编程实战:从零实现 Server 与 Client 通信

在现代网络编程中,**Socket(套接字)** 是最基础、最重要的通信机制之一。无论是构建聊天应用、远程控制工具,还是理解 HTTP 协议底层原理,掌握 Socket 编程都是必备技能。本文将带你用 Python 从零开始编写一个简单的 TCP Server 和 Client,并深入讲解关键细节,助你真正理解“连接”背后的逻辑。

2026-03-06 17:59:15 463

原创 把 Python 的类写“顺手”:从定义到最佳实践的一次梳理

在 Python 里写类,说难不难,说简单也不简单。很多人一开始能写出 `class A:`,但过一阵子就会遇到各种“写起来别扭”的点:构造函数放什么、属性怎么设计、`__repr__` 要不要写、什么时候该用 `@property`,以及最常见的——到底什么时候该写类?

2026-03-06 16:58:34 421

原创 Python Optional 详解:告别 `None` 的隐式陷阱

Optional等价于。一个被标注为的变量,其值既可以是类型T,也可以是None。# 以下两种写法完全等价from typing import Optional # 以下两种写法完全等价 def greet(name : Optional [ str ]) - > str : if name is None : return "Hello, Guest!name }!name }!!

2026-03-06 16:33:02 445

原创 什么是内网穿透?一文带你搞懂原理 + ngrok 实战教程

内网穿透就是让外网可以访问位于内网中的服务。你的电脑在公司局域网本地运行了一个接口服务外网用户无法直接访问公网地址 → 自动映射 → 你的本地服务瞬间就能被全球访问。可以绑定自己的域名。内网穿透就是通过建立一条反向隧道,让外网能够访问内网服务。打破 NAT 限制实现远程访问极大提升开发效率对于开发者来说:内网穿透几乎是必备技能。本地调试移动开发webhook 对接AI 服务调试场景中使用频率极高。如果你刚入门,强烈建议先从 ngrok 开始体验。

2026-02-27 10:21:53 1011

原创 后端 Verticle 架构实战:用 NeonBeeDeployable 推送一条通知

Verticle架构正成为高并发、事件驱动场景下的高效解决方案。文章通过推送通知业务案例,对比了Verticle与传统Spring Boot微服务的差异:Verticle采用EventBus实现JVM内异步通信,省去了HTTP调用和序列化开销,具有启动快、资源占用低的优势。

2026-02-06 11:12:13 435

原创 Jetpack Compose 动画:AnimatedVisibility 指南

Jetpack Compose动画指南:AnimatedVisibility详解 摘要:AnimatedVisibility是Jetpack Compose中最常用的动画API,专门管理Composable组件的显示/隐藏动画。本文详细介绍了其核心功能和使用方法:1) 基础用法提供默认淡入淡出动画;2) 支持透明度(fadeIn/Out)、尺寸变化(expandIn/shrinkOut)和位移动画(slideIn/Out)等常用效果;3) 动画可叠加组合使用;4) 通过tween调整时间和缓动曲线;5) 使

2026-02-06 10:41:37 769

原创 Android Kotlin ObjectAnimator 和 ValueAnimator 全面解析

本文全面解析 Android 中的 ObjectAnimator 和 ValueAnimator 动画实现。内容涵盖:1) 动画基础概念(补间动画、帧动画、属性动画);2) ValueAnimator 工作原理和应用场景(数字动画、颜色渐变);3) ObjectAnimator 与 ValueAnimator 的区别与使用技巧;4) 组合动画、插值器、Keyframe 等进阶用法;5) 最佳实践与性能优化建议。

2025-09-09 10:19:51 879

原创 Android Kotlin 算法详解:链表相关

在 Android 开发中,算法与数据结构是基本功之一,而链表(Linked List)作为常见的数据结构,经常出现在各类面试题与实际业务场景中。本文将以 **Android Kotlin** 为语言,结合 LeetCode 上的经典链表题目,详细讲解链表的基本概念、常见操作以及经常考到的算法题目(如:反转链表、合并有序链表、判断链表是否有环等),并提供 **Kotlin** 实现代码、时间复杂度与空间复杂度分析,最后附带最佳实践建议与面试拓展。

2025-06-03 16:48:20 1327

原创 Android锁

在 Android 应用的开发过程中,随着业务需求的复杂度不断提升,多线程并发场景层出不穷。为了保证数据一致性与线程安全,锁(Lock)成为了不可或缺的工具。本篇博客将深入剖析 Android 中常用的锁机制、使用场景与最佳实践,并配以精炼的示例代码与示意图,帮助你快速掌握锁的精髓。

2025-05-14 15:54:33 1444

原创 Java 核心基石:深入理解 `java.lang.Object` 类在 Android 开发中的作用与实践

在 Java 中,`java.lang.Object` 类被称为所有类的根类,也就是“万物之祖”。无论是在日常开发还是在 Android 框架的设计中,这个类都扮演着极其关键的角色。本文将从多个角度全面剖析 Object 类的设计原理、核心方法及其在实际项目中的运用,希望能为广大开发者提供有价值的参考。

2025-04-16 10:45:59 1304

原创 Koin 依赖注入在 Android 项目中的应用实践与最佳实践

在 Android 应用开发中,随着项目规模的不断扩大、业务逻辑的逐步复杂,如何管理组件之间的依赖关系成为极为关键的问题。依赖注入(Dependency Injection,DI)作为一种软件设计模式,通过将依赖关系交给框架去管理,能够极大降低代码之间的耦合度,提高代码的测试性和可维护性。如今在 Android 平台上,众多 DI 框架涌现,其中 Koin 以其轻量、简单、无注解的特点受到越来越多开发者的青睐。本文将详细讲解如何在 Android 项目中运用 Koin,从基础理论到实际案例,从最佳实践到调试

2025-04-10 17:58:09 1250

原创 使用 Ktor 构建现代 Android 应用的后端服务

在移动互联网时代,Android 应用对后端服务的实时性与性能要求越来越高,而传统的后端框架在一些场景中存在复杂度高、扩展性不足等问题。Ktor 作为 JetBrains 推出的异步 Web 框架,充分利用 Kotlin 协程的优势,能够高效构建轻量、易扩展、易维护的服务端应用。本文将通过丰富的实践案例、代码示例和最佳实践,帮助你深入了解 Ktor 的核心特性与应用场景,并指导你如何将它与现代 Android 开发完美结合。

2025-04-10 17:46:22 2543

原创 Kotlin 中 集合 Collection 的扩展方法完全指南

在 Android 开发中,集合(Collection)的操作无处不在。无论是处理网络请求返回的数据、解析 JSON 结构,还是进行数据统计与分析,Kotlin 的丰富 API 都使得我们的代码更简洁明了。而扩展函数正是 Kotlin 的一大亮点,让我们可以在不修改原有类定义的前提下,方便地扩展功能。 本文将详细讲解 Kotlin 集合扩展函数的原理、常用方法、最佳实践、性能优化,以及项目实战案例,希望能为开发者在日常工作中提供切实的帮助。

2025-04-09 16:58:42 1172

原创 如何高效提升英语综合能力:从框架构建到实战技巧全指南

如何高效提升英语综合能力:从框架构建到实战技巧全指南

2025-04-08 11:13:04 3843

原创 Android Photo Picker 深入解析与实战指南

随着 Android 生态系统的不断演进,用户对隐私保护和无障碍使用体验的要求越来越高。为了解决传统图片选择器在权限、隐私以及兼容性上的种种问题,Google 推出了全新的 **Android Photo Picker** API。本篇博客将详细解读 Photo Picker 的各个方面,包括它的背景、工作原理、集成方法、实战代码、最佳实践、常见问题及未来趋势,帮助大家在项目中高效、安全地使用这一新技术。

2025-04-01 14:59:50 2269

原创 深入解析Ktlint —— 打造优雅统一的Kotlin代码风格

本文将全面解析Ktlint的基本原理、安装配置、核心功能、如何编写自定义规则,以及在实际项目中如何应对常见问题。我们还将与其他代码检查工具如Detekt和Android Lint进行对比,并分享一些实用的最佳实践。希望这篇博客能够帮助你全面了解并正确使用Ktlint,进而提升项目的代码质量和团队协作效率。

2025-04-01 14:03:41 1013

原创 深入解析KSP(Kotlin Symbol Processing):现代Android开发的新利器

随着Kotlin在Android开发中的普及,开发者对于编译速度、内存消耗以及代码生成的效率要求越来越高。在这种背景下,Google推出了KSP(Kotlin Symbol Processing),旨在提供比传统的Kapt更快、更轻量级的编译体验。本文将全面解析KSP的工作原理、配置集成、使用案例以及最佳实践,帮助你在实际项目中充分发挥KSP的优势。

2025-04-01 10:59:51 3282 1

原创 深入解析Kapt —— Kotlin Annotation Processing Tool 技术博客

在Android开发的世界中,随着应用架构和模块化设计的不断演进,各种依赖注入、数据绑定、数据库访问等技术成为必不可少的组成部分。Kapt(Kotlin Annotation Processing Tool)正是在这种背景下诞生的,它为Kotlin语言提供了强大的注解处理能力,帮助开发者在编译期间自动生成大量样板代码,从而简化开发流程,提高开发效率。本文将深入探讨Kapt的作用、原理、配置、常见问题及解决方案、性能优化、最佳实践以及与KSP的对比,帮助大家更好地理解和使用这一工具。

2025-04-01 10:28:40 2163

原创 Android性能优化及调试技巧全攻略

这里奉上关于Android性能优化一篇详细的技术博客,全文约1万字,涵盖了Android应用性能的重要性、常见性能瓶颈、主流性能分析工具、常见优化策略及调试技巧等内容,附有实战案例、示例代码以及对比图示(图示均为占位示例),希望对各位开发者有所帮助!🚀

2025-03-28 11:13:00 1818

原创 Kotlin协程在Android项目中的深度应用与实践指南

在移动开发领域,异步操作的处理始终是核心挑战。传统的回调机制(Callback)导致代码嵌套层级过深,形成"回调地狱";RxJava等响应式框架虽然提供了链式调用,但学习曲线陡峭且资源消耗较大。Kotlin协程通过**挂起函数**和**结构化并发**机制,实现了以同步方式编写异步代码的突破,使代码可读性提升300%以上(JetBrains官方数据)。

2025-03-28 10:35:22 870

原创 Android Architecture Components 深入解析

在 Android 开发早期,应用状态管理和数据持久化一直是开发者面临的挑战。随着应用复杂度的增加,开发者通常会遇到以下问题:- Activity 和 Fragment 频繁重建导致数据丢失。- 代码耦合度高,难以维护和测试。- 数据同步和生命周期管理困难。为了提升开发效率和代码质量,Google 在 2017 年推出了 **Android Architecture Components (AAC)**,帮助开发者更高效地构建高质量应用。

2025-03-28 10:31:02 1157

原创 Android adb 的功能和用法

Android Debug Bridge(简称 adb)是 Android 开发者必备的调试工具。它允许我们在开发设备(比如电脑)和 Android 设备(真机或模拟器)之间建立通信,并通过命令行执行各种操作,如安装应用、日志查看、调试应用、文件传输等。

2025-03-28 10:19:15 1597

原创 Android Compose 中的 Surface 和 Card:这对兄弟到底有啥不一样?

作为安卓开发者,咱们在写 UI 的时候总遇到这两个长得挺像的组件——Surface 和 Card。今天我就用做菜打比方,带你们扒开它们的底裤看看有啥本质区别(代码示例都现炒现卖,记得自己替换包名)。

2025-03-11 17:37:50 1377

原创 Android Compose Surface 完全指南:从入门到花式操作

今天咱们来聊聊 Compose 世界里那个既基础又强大的组件——**Surface**。这个看似简单的矩形区域,实际藏着不少宝藏玩法,准备好你的 IDE,咱们发车!

2025-03-11 17:27:23 1406

原创 Android Compose MutableInteractionSource介绍

在 Android 开发中,Compose 是 Google 推出的现代化 UI 工具包,它让开发者能够更简洁高效地构建应用界面。而 `MutableInteractionSource` 是 Compose 中一个重要的组件,它可以帮助你处理用户与界面交互时的状态变化,尤其在处理交互反馈(比如点击、按下、聚焦等)时非常有用。接下来,我们将详细解析 `MutableInteractionSource` 的作用及如何在实际开发中使用它。

2025-03-11 17:09:08 1013

原创 Android Compose: `remember` 与 `ViewModel` 保存数据的优缺点对比

在开发 Android 应用时,管理 UI 状态是一个不可避免的话题。Jetpack Compose 提供了两种常见的方式来保存和管理数据:`remember` 和 `ViewModel`。它们各有优缺点,适用于不同的场景。 本文将详细对比这两者在保存数据时的优缺点,帮助你在实际开发中做出更合适的选择。

2025-03-11 16:54:41 1472

原创 Android Compose remember 详解

在 Android Jetpack Compose 中,`remember` 是一个非常重要的概念。它帮助我们优化 UI 组件的重组(Recomposition)性能。简单来说,`remember` 可以缓存某些数据或对象,避免每次重组时重新计算或创建这些对象,从而提高性能并减少不必要的计算。

2025-03-11 16:51:20 1817

原创 Android `%d` 与 `1$%d` 格式化的区别

在 Android 开发中,我们经常需要对字符串进行格式化处理,比如动态填充数字、日期、字符等。 其中,`%d` 和 `1$%d` 都是格式化占位符,但它们在使用上有一些不同。 本文将详细解析这两者的区别,并结合 Kotlin 代码示例帮助你理解。

2025-03-11 15:02:54 817

原创 Android Flow 示例

在Android开发的世界里,处理异步数据流一直是一个挑战。随着Kotlin的流行,Flow作为Kotlin协程库的一部分,为开发者提供了一种全新的方式来处理这些问题。今天,我将深入探讨Flow的设计理念,并通过具体的例子展示如何在实际项目中应用它。

2025-03-03 15:22:34 733

原创 Switch开关的防抖监听器

作为一个在安卓坑里摸爬滚打多年的老码农,肯定都遇到过这种场景:用户疯狂点击Switch开关,结果触发一堆重复回调。这种防抖需求就跟吃饭喝水一样常见。传统实现要么用Handler.postDelayed,要么用RxJava的throttle,但今天这个Kotlin扩展函数写法,直接把逼格拉满!

2025-03-03 15:17:25 905

Python 小技巧.md

Python 小技巧集锦是一个旨在帮助 Python 开发者提高编程效率和代码质量的资源。该资源汇总了一系列简洁、实用的 Python 编程技巧和技巧,涵盖了各种常见场景下的用例和解决方案。通过这些技巧,开发者可以更加高效地编写 Python 代码,减少冗余和重复工作,提高代码的可读性和可维护性。

2024-02-06

汇编语言程序设计大作业-走迷宫.md

这篇文章描述了在汇编语言程序设计大作业中解决走迷宫问题的经历和思考。文章首先介绍了迷宫问题的背景和挑战,以及采用的深度优先搜索算法的设计思路。然后详细解释了程序的实现过程,包括代码结构、初始化设置、搜索函数、检查移动函数和输出路径函数。最后,作者总结了本次大作业的收获与挑战,并展望了未来的学习方向。整篇文章结构清晰,内容丰富,对于想要学习汇编语言和算法设计的读者具有很高的参考价值。

2024-02-06

一个使用HTML5 Canvas和JavaScript创建的春节烟花特效动画

这是一个使用HTML5 Canvas和JavaScript创建的春节烟花特效动画。该动画会在页面加载时自动触发烟花效果,并且还可以通过点击画布来手动触发更多的烟花。烟花的颜色、速度和大小都是随机生成的,使得每次烟花的效果都会有所不同。烟花会在画布中迅速绽放,然后逐渐消失,营造出绚丽的烟花效果。整个动画效果会持续循环播放,直到页面被关闭。这段代码使用了HTML5 Canvas的绘图功能和JavaScript的动画循环,通过粒子系统模拟了烟花的绽放效果。

2024-02-06

gradle-8.2-bin.zip 下载资源

gradle-8.2-bin.zip 下载资源

2023-12-06

空空如也

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

TA关注的人

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