分类

Code

通用编程语言与工程实践:Java 进阶(Optional、CompletableFuture、Guava、Joda-Time)、C# 深入(事件机制、dynamic、LINQ、WCF、JSON 序列化)、Python 爬虫(Scrapy)、新世代工具链(Bun)与 Linux 常用命令。跨语言的语法特性、标准库与三方库横向对照。

共 67 篇文章

httpx 详解:现代 Python HTTP 客户端
Code

httpx 详解:现代 Python HTTP 客户端

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

22
uv 详解:极速 Python 包管理器
Code

uv 详解:极速 Python 包管理器

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

31
​Scrapy 详解:Python 爬虫框架的常青树
Code

​Scrapy 详解:Python 爬虫框架的常青树

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

147
Bun 是什么:JavaScript 的全能工具链
Code

Bun 是什么:JavaScript 的全能工具链

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

282
Gradle入门:安装​
Code

Gradle入门:安装​

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

281
Code

C# 事件详解

C# 事件详解1、事件的基本概念事件(Event)是 C# 中用于实现发布-订阅模式的重要机制,它允许对象在状态改变时通知其他对象。事件基于委托(Delegate)实现,提供了类型安全的回调机制。核心概念: - 发布者(Publisher):定义并触发事件的对象 - 订阅者(Subscriber):订阅并处理事件的对象 - 委托(Delegate):事件的类型定义,规定了事件处理方法的签名 - 事

350
Java中的Optional:优雅处理空值的利器
Code

Java中的Optional:优雅处理空值的利器

Java中的Optional:优雅处理空值的利器在 Java 8 之前,处理 null 值是一个常见的问题,容易导致 NullPointerException。Java 8 引入了 Optional 类,为我们提供了一种更加优雅、安全的方式来处理可能为 null 的值。本文将详细介绍 Optional 的使用方法、最佳实践以及常见误区。1、Optional 的基本概念1.1、什么是 Optiona

358
Code

C#中的dynamic动态类型​

C#中的dynamic动态类型在 C# 中,dynamic是一种特殊的类型,用于在编译时延迟类型检查,直到运行时才进行。可以在代码中编写更灵活的动态类型操作,而无需在编译时明确指定类型。dynamic类型在 C# 4.0 中引入,主要目的是支持动态语言互操作和简化某些复杂的反射操作。1、基本用法1.1、声明dynamic类型可以像声明其他类型一样声明dynamic类型的变量:1.2、动态类型操作由

374
​Java Joda-Time 库详解
Code

​Java Joda-Time 库详解

Java Joda-Time 库详解1、Joda-Time 概述Joda-Time 是 Java 中处理日期和时间的优秀库,它提供了比标准 Java Date/Time API 更强大、更灵活的功能。Joda-Time 由 Stephen Colebourne 创建,旨在解决 Java 标准日期时间 API 的不足,是 Java 8 之前处理日期时间的首选库。核心特点: - 提供丰富的日期时间操作

497
Code

​Java File 类核心用法详解

Java File 类核心用法详解1、File 类概述File 类是 Java 中用于处理文件和目录路径名的核心类,位于 java.io 包中。它以抽象的方式代表文件名和目录路径名,主要用于文件和目录的创建、查找、删除等操作。核心概念: - File 对象代表磁盘中实际存在的文件和目录 - File 类不能访问文件内容本身,需要使用输入/输出流 - File 类提供了跨平台的文件操作方法构造方法:

469
Linux 解/压缩命令详解
Code

Linux 解/压缩命令详解

Linux 解/压缩命令详解1、tar 命令1.1、基本概念tar 命令是 Linux 中最常用的归档工具,用于创建和提取归档文件。它本身只是一个归档工具,不进行压缩,但可以与其他压缩工具结合使用。1.2、常用命令1.3、与压缩工具结合1.4、高级选项2、gzip 和 gunzip 命令2.1、基本概念gzip(GNU zip)是一种流行的压缩工具,使用 DEFLATE 算法压缩文件。gunzip

492
Code

Java 三方库 Guava 详解

Java 三方库 Guava 详解1、Guava 概述Guava 是 Google 开发的 Java 核心库,提供了大量实用的工具类和扩展,旨在提高 Java 开发效率和代码质量。Guava 包含了集合、缓存、并发、字符串处理、函数式编程等多个模块,是 Java 开发者必备的工具库之一。核心模块: - com.google.common.collect:集合工具类 - com.google.com

467
Code

Java CompletableFuture:异步编程的利器

Java CompletableFuture:异步编程的利器1、CompletableFuture 概述CompletableFuture 是 Java 8 引入的一个强大的异步编程工具,位于 java.util.concurrent 包中。它实现了 Future 接口,并提供了丰富的异步操作方法,使得异步编程变得更加简单和优雅。核心特性: - 异步执行任务,不阻塞主线程 - 支持链式调用,代码更

527
SecureRandom 与 Random 的区别与用法详解
Code

SecureRandom 与 Random 的区别与用法详解

SecureRandom 与 Random 的区别与用法详解在 Java 开发中,我们经常需要生成随机数,而 Random 和 SecureRandom 是两个常用的随机数生成类。虽然它们都能生成随机数,但在安全性、性能和使用场景上存在显著差异。本文将详细解析两者的区别与用法,帮助你在实际开发中做出正确的选择。1、基本概念与核心区别1.1、Random 类java.util.Random 是 Ja

600
Code

资源传递性:android.nonTransitiveRClass

资源传递性:android.nonTransitiveRClassandroid.nonTransitiveRClass 是 Android Gradle 插件中的一个属性,用于控制 R 类的生成和使用。 注意:android.nonTransitiveRClass 只适用于 Android Gradle 插件 3.5.0 及以上版本。当 android.nonTransitiveRClass 设

1.7k