Flutter 教程系列一: freezed 使用

不管在什么样的应用中,如果要处理大量的数据,不可避免的就是要定义大量的数据类用来装载和解析数据,在 Flutter 中也不例外,今天要介绍的这个 Freezed 库就是 Flutter 中用来作为数据类(data classes)代码生成的这样一款工具。 freezed 是什么 freezed 是一个 Flutter/Dart 生态系统中一个非常强大的代码生成工具,用于创建数据类,基于 Dart 的代码生成功能,通过自动生成 data classes, tagged unions, nested classes 和 clone 代码模板,大大减少了手 Read more ...

2025-03-23 flutter , dart , freezed , model , lombok

RAG 简介

什么是 RAG RAG 的全称是 Retrieval-Augmented Generation,中文通常翻译成「检索增强生成」,指的是对大语言模型输出进行优化,使其能够在生成响应之前引用训练数据来源外的权威知识库。 RAG 是一种在大语言模型诞生之后为了提升大语言模型回答精确度的架构。 Retrieve,检索,用户 Query 调用搜索引擎 API, 获取搜索结果 Augmented,增强,设置提示词,将检索结果作为上下文 Generation 生成,大模型回答问题,标注引用来源 Generation 我们首先从 Genera Read more ...

2025-03-21 rag , llm , ai , vector-database , embedding , llm

Homerow 配置 macOS 全键盘操作

今天想要和大家分享一下一款非常有趣的应用,叫做 Homerow,他之前的名字叫做 vimac,是一款可以在 macOS 上实现全键盘操作的工具。 在 Chrome 里面,我一直在使用 Vimium,这一款插件几乎是 Chrome 的必备插件,它可以让我在完全没有鼠标的情况下浏览网页。 在之前我也介绍过一款叫做 Shortcat 的 macOS 效率工具,也是使用类似的概念,可以在 macOS 上实现所有元素的浮标,然后使用键盘来控制。更甚至之前我还尝试过 yabai 和 [[shkd]] 的方案,但是这些方案都或多或少存在一些问题,要不是就是比较卡, Read more ...


Exposed 学习笔记:表定义以及模式创建

之前的文章已经带领大家学习了解了 Exposed 是什么,有什么用途,本文将重点学习 Exposed 中如何定义数据表结构,并进行数据库 Schema 的创建和迁移。 文本将重点放在继承 Table 类来定义表,定义各种类型的列,以及相关的约束 primaryKey, unique, nullable 等,如何定义复合主键。 如何使用 SchemaUtils.create 来创建表,了解 SchemaUtils.drop 方法。 在生产环境,通常和 [[Flyway]] 或 [[Liquibase]] 等数据库迁移工具结合使用。 定义表 在 E Read more ...

2025-03-19 exposed , kotlin , orm , kotlin-orm , jetbrains

自动化运维工具 Puppet 介绍

Puppet 是一个开源的强大的基础设施配置管理工具,很早之前我介绍过一款 Python 编写的开源的自动化运维工具 Ansible,后面陆陆续续还分享过如何使用 Ansible 去管理 Contab,如何使用 Roles 来结构化并管理大量的 Ansible 配置。而今天要介绍的 Puppet 是另外一款运维自动化工具,被广泛用于自动化管理多个服务器配置。 相较于基于任务的 Ansible,Puppet 使用一种声明式描述语言,可以用来构建更复杂,更庞大的基础设施。 Puppet 使用客户端/服务器架构,使用 Master 和 Agent 架 Read more ...

2025-03-15 puppet , devops , ansible , terraform , linux

Gemini 2 的原生多模态图片生成

Google 今天发布了 Gemini 2.0 Flash 的多模态图像生成功能。 功能 文本到图像 生成一张东京塔和烟花的图像 文本到图像和文本 生成一份西班牙海鲜饭的图解食谱 文本和图像到文本和图像 带有一个装修房间的图像,什么颜色的沙发适合房间,更新图片 图片编辑 编辑图片,使其看上去更像日式卡通 猫的图像,枕头的图像,在这个枕头上创建猫的十字绣 Bilibil Read more ...


Helm 使用

Helm 是 [[Kubernetes]] 的一个包管理工具,用来简化 Kubernetes 应用的部署和管理。 通过使用使用 Helm 可以管理 Kubernetes manifest files、管理 Helm 安装包 Charts、基于 Chart 的 Kubernetes 应用分发。 Helm Chart 是用来封装 Kubernetes 原生应用程序的 YAML 文件。 Installation macOS 下安装 Helm brew install helm Linux 下安装 Helm curl https://baltoc Read more ...

2025-03-11 helm , kuberntes , k8s , rancher , k3s , cluster

K8s 部署 TiDB

TiDB 是由 PingCAP 开发的一款开源分布式 SQL 数据库,支持事务处理和实时分析。它与 Kubernetes 的结合使得数据库能够实现云原生化,具备弹性扩展、自动故障转移等特性。 TiDB 是一个分布式数据库系统,具有以下特点: HTAP 支持:同时支持事务处理(OLTP)和分析处理(OLAP)。 高可用性:通过 Raft 协议实现数据强一致性和容错。 云原生架构:适配 Kubernetes,支持自动化管理和弹性扩展。 MySQL 兼容:支持 MySQL 协议,易于迁移现有应用。 TiDB 的核心组件包括: Read more ...

2025-03-10 tidb , mysql , k8s , kubernetes

开源跨平台终端 XPipe

XPipe 是一款开源的跨平台终端应用,支持 SSH,Docker,还支持 Kubernetes 等多种环境。 功能 支持 SSH 连接,配置文件 Docker,Podman,LXD,incus 容器 Proxmox VE Hyper-V, KVM, VMware Player/Workstation/Fusion 虚拟机 Kubernetes 集群,pods,容器 Tailscale 和 Teleport 连接 Windows Subsystem for Linux,Cygwin,和 MSYS2 Powersh Read more ...

2025-03-06 xpipe , terminal , docker , ssh , proxmox , proxmox-ve , fusion

开源 Kotlin ORM 框架 Exposed 使用说明

Exposed 是 [[JetBrains]] 在数年前推出的轻量级 [[ORM]] 框架,Kotlin 编写,已经在 JetBrains 内部多个关键产品使用。 Exposed 是基于 JDBC 实现,屏蔽了底层建立数据库连接,编写 SQL,操作数据,关闭数据库连接的操作,只需要关心数据操作。 Exposed 提供了两种形式 API,面向 DSL 的 API 和面向对象的 API。如果想要使用轻量级的 ORM 可以使用 DAO 模式,如果想要使用类型安全的 SQL,推荐使用 DSL。1 特点 纯 Kotlin 实现,轻量级,模块化 类 Read more ...

2025-03-04 open-source , kotlin , java , orm , spring , spring-boot

最近文章

  • Claude Code /goal:让 AI 自主持续工作直到达成目标的新命令 用 [[Claude Code]] 写代码时,一直有一个令人微妙不适的摩擦:每当 Claude 完成一轮工作,控制权就回到了我这里,我需要再次发出指令,告诉它”继续”“再检查一遍”“还有这个文件没改”。对于那种需要跑很多轮才能完成的任务——比如把一个模块从旧 API 迁移到新 API 直到所有测试通过,或者逐文件重构某个目录直到符合统一规范——这个”人类中继”的环节就显得相当机械,本质上我只是在不停地按确认键。
  • 本地快速切换 Claude Code 和 Codex CLI 账号的几种方案 同时维护个人项目和工作项目的时候,最让我头疼的不是代码本身,而是工具的账号管理。[[Claude Code]] 和 [[Codex]] 这类 AI 编程工具,我在公司有一套账号,个人订阅又是另一套。每次在项目之间切换,都要 claude auth logout 再 claude auth login,不仅耗时,还经常忘了当前用的是哪个账号,写了半天才发现额度消耗到错误的账号上去了。
  • socat:比 netcat 更强大的网络瑞士军刀
  • codex-lb:用负载均衡的思路管理多个 ChatGPT 账号 用 [[Codex]] CLI 做开发的人大概都遇到过这个场景:手头有几个 ChatGPT 账号,分散在不同的订阅计划里,但工具只认一个账号,额度用完了只能手动切换,每次还要重新登录。更头疼的是,当多人共享一个环境,或者想用同一套配置同时跑 Codex CLI 和 OpenCode 时,账号管理很快就变成了一团乱麻。
  • cc-switch:在多个 AI 编码工具之间优雅切换 最近这一年,AI 编码工具的竞争进入了白热化阶段。[[Claude Code]]、[[Gemini CLI]]、[[OpenAI Codex]],每家都在拼命迭代,功能差距越来越小,价格战也越打越猛。于是我开始同时订阅好几个服务,针对不同的任务选用不同的工具——写复杂逻辑用 Claude,快速查文档用 Gemini,处理 Python 脚本用 Codex。