
httpx 详解:现代 Python HTTP 客户端
写 Python 的 HTTP 调用时,requests 几乎是肌肉记忆,但它的同步模型与缺失的 HTTP/2 支持在异步时代越来越显得吃力。httpx 自称"新一代 Python HTTP 客户端"(A nextgen…
分类
通用编程语言与工程实践:Java 进阶(Optional、CompletableFuture、Guava、Joda-Time)、C# 深入(事件机制、dynamic、LINQ、WCF、JSON 序列化)、Python 爬虫(Scrapy)、新世代工具链(Bun)与 Linux 常用命令。跨语言的语法特性、标准库与三方库横向对照。
共 67 篇文章

写 Python 的 HTTP 调用时,requests 几乎是肌肉记忆,但它的同步模型与缺失的 HTTP/2 支持在异步时代越来越显得吃力。httpx 自称"新一代 Python HTTP 客户端"(A nextgen…

如果你还在忍受 pip install 漫长的依赖解析,或者被 poetry、pyenv、virtualenv、pipx 一堆工具的排列组合折磨,那应该认真看看 uvhttps://github.com/astralsh…

Scrapy 详解:Python 爬虫框架的常青树从网页里抽取结构化数据,是数据采集的刚需。自己用 requests 手写,很快就会撞上并发调度、重试、去重、限速、清洗落库一连串工程问题。scrapy/scrapy(Scrapy)把这些全部打包成框架:Spider 类专注解析逻辑,引擎、调度器、下载器在底层并发运转,管线负责清洗与存储。约 64.3k Star、BSD 协议、Zyte 商业支持,P

Bun 是什么:JavaScript 的全能工具链如果你做 JavaScript / TypeScript 开发,一定遇到过这些折磨:装依赖太慢(npm install 动辄几分钟)、跑脚本要分多种工具(node 跑 JS、ts-node 跑 TS、jest 跑测试、webpack/vite 打包)、配置文件一堆(package.json / tsconfig / jest.config / .b

Gradle入门:安装Android应用项目使用Gradle构建,Gradle也是安卓开发者需要掌握的一项技能。1、GradleGradle是基于Apache Ant和Apache Maven概念的开源自动化构建工具,支持多语言环境。1.1、Gradle介绍Gradle集Ant、Maven二者之大成,相比Ant的不规范,Maven的配置复杂以及生命周期限制严重,Gradle既规范也更灵活。可以使用

Java中的Optional:优雅处理空值的利器在 Java 8 之前,处理 null 值是一个常见的问题,容易导致 NullPointerException。Java 8 引入了 Optional 类,为我们提供了一种更加优雅、安全的方式来处理可能为 null 的值。本文将详细介绍 Optional 的使用方法、最佳实践以及常见误区。1、Optional 的基本概念1.1、什么是 Optiona
C#中的dynamic动态类型在 C# 中,dynamic是一种特殊的类型,用于在编译时延迟类型检查,直到运行时才进行。可以在代码中编写更灵活的动态类型操作,而无需在编译时明确指定类型。dynamic类型在 C# 4.0 中引入,主要目的是支持动态语言互操作和简化某些复杂的反射操作。1、基本用法1.1、声明dynamic类型可以像声明其他类型一样声明dynamic类型的变量:1.2、动态类型操作由

Java Joda-Time 库详解1、Joda-Time 概述Joda-Time 是 Java 中处理日期和时间的优秀库,它提供了比标准 Java Date/Time API 更强大、更灵活的功能。Joda-Time 由 Stephen Colebourne 创建,旨在解决 Java 标准日期时间 API 的不足,是 Java 8 之前处理日期时间的首选库。核心特点: - 提供丰富的日期时间操作
Java File 类核心用法详解1、File 类概述File 类是 Java 中用于处理文件和目录路径名的核心类,位于 java.io 包中。它以抽象的方式代表文件名和目录路径名,主要用于文件和目录的创建、查找、删除等操作。核心概念: - File 对象代表磁盘中实际存在的文件和目录 - File 类不能访问文件内容本身,需要使用输入/输出流 - File 类提供了跨平台的文件操作方法构造方法:

Linux 解/压缩命令详解1、tar 命令1.1、基本概念tar 命令是 Linux 中最常用的归档工具,用于创建和提取归档文件。它本身只是一个归档工具,不进行压缩,但可以与其他压缩工具结合使用。1.2、常用命令1.3、与压缩工具结合1.4、高级选项2、gzip 和 gunzip 命令2.1、基本概念gzip(GNU zip)是一种流行的压缩工具,使用 DEFLATE 算法压缩文件。gunzip
Java 三方库 Guava 详解1、Guava 概述Guava 是 Google 开发的 Java 核心库,提供了大量实用的工具类和扩展,旨在提高 Java 开发效率和代码质量。Guava 包含了集合、缓存、并发、字符串处理、函数式编程等多个模块,是 Java 开发者必备的工具库之一。核心模块: - com.google.common.collect:集合工具类 - com.google.com
Java CompletableFuture:异步编程的利器1、CompletableFuture 概述CompletableFuture 是 Java 8 引入的一个强大的异步编程工具,位于 java.util.concurrent 包中。它实现了 Future 接口,并提供了丰富的异步操作方法,使得异步编程变得更加简单和优雅。核心特性: - 异步执行任务,不阻塞主线程 - 支持链式调用,代码更

SecureRandom 与 Random 的区别与用法详解在 Java 开发中,我们经常需要生成随机数,而 Random 和 SecureRandom 是两个常用的随机数生成类。虽然它们都能生成随机数,但在安全性、性能和使用场景上存在显著差异。本文将详细解析两者的区别与用法,帮助你在实际开发中做出正确的选择。1、基本概念与核心区别1.1、Random 类java.util.Random 是 Ja
资源传递性:android.nonTransitiveRClassandroid.nonTransitiveRClass 是 Android Gradle 插件中的一个属性,用于控制 R 类的生成和使用。 注意:android.nonTransitiveRClass 只适用于 Android Gradle 插件 3.5.0 及以上版本。当 android.nonTransitiveRClass 设