Chejdj Blog

Anthropic 倡导的 AI 工程化五层演进

随着大语言模型(LLM)从最初的“对话助手”演变为如今能够自主编写代码、执行复杂逻辑的 AI Agent(智能体),开发者与 AI 交互的模式正在发生一场深刻的范式转移。 在这一进程中,Anthropic 团队(特别是 Claude Code 团队负责人 Boris Cherny 及其行业探索者)总结并推广了 AI 工程化的几个核心阶段。而在业界实践中,AI 工程化逐步收敛为五个层层递进的...

AI 时代的团队协同:深入探索 CrewAI 框架与多智能体实战

随着大语言模型(LLM)从单体交互走向多智能体协同(Multi-Agent Collaboration),如何让多个 AI 各司其职、高效协作,成为了大模型应用落地(LLM-Ops)的核心课题。 CrewAI 作为一个专注于角色扮演(Role-playing)与敏捷编排的智能体框架,在开源社区引起了广泛关注。本文将带您深入 CrewAI 的底层设计原理,并通过升级版的软件开发团队(产品、研...

为什么说 SDD 是倒退,而 Harness 才是 AI 编程的终极范式?

📌 引言:我们是不是把 AI 编程玩走偏了? 最近,“软件开发范式转型”成了技术圈最热的话题。很多研发团队开始大张旗鼓地推行所谓的 SDD(Specification-Driven Development,规范/文档驱动开发)。它的核心逻辑听上去很美:产品经理或架构师把需求写成极致详细的结构化文档(PRD/Spec),直接喂给 AI,AI 自动化产出全套业务代码。 但实际落地后,一线的骨...

Java SPI原理介绍

一.背景 最近的一个季度我们想要把我们项目中某个业务功能能够以最小的适配成本迁移到另一个项目当中去用,减少类似功能的重复开发。想要实现不同项目的都能低成本接入,就需要我们把该模块独立出来。但是该模块随着不断的需求迭代开发,在代码层级上不仅仅和项目其他业务代码存在耦合,而且也和很多58底层库存在代码耦合。如何解耦,让该业务更加干净成为一个核心问题,而我们这里使用的核心技术就是Java SPI。...

Gson序列化Kotlin数据类型默认值失效

背景 最近开发的时候遇到一个问题,服务端返回的Json中如果没有某个字段的时候,我需要设置一个默认的值,但是给这个数据类设置默认值1的时候,Json解析之后还是返回了0。 但是项目里面其他数据类设置默认值是有效的。 样例 1 2 3 data class A(val author:String = "", val age:Int=1) data class B(val author:Str...

GoolgePlay模块分发方案调研

Play Feature Delivery 概览 上架到Google Play的aab包,存在150M大小的限制,当超过的时候,Google Play不能上传提审,必须借助Play Feature Delivery功能实现用户按需下载。 功能:能够自定义如何以及何时将应用的不同功能下载到搭载Android 5.0或更高版本的设备上 分发选项 行为...

移动端CI/CD实现方案

一. 现有的工作流程 参考业界比较成熟的移动CI/CD 流程 MCI:移动持续集成在大众点评的实践 有赞零售移动CI/CD实践_移动_原野_InfoQ精选文章 结合我们自身开发流程初步设计CI/CD流程 二. 现有的移动端CI/CD框架 存在以下几个缺点: 上架应用商店耗时严重,家长端/学生端,4个包,包含本地打包,上传应用商店,编辑文案等,按照过去耗时平...

客户端日志组件实现

来到新的公司,正好接到一个需求,需要调研实现一套客户端日志的实现方案 客户端日志组件实现分享PPT

初识Flutter

 来到一个新公司,业务使用是Flutter进行开发,之前说实话我对Flutter是比较悲观的,感觉对于跨平台的技术,我个人认为发展到后期导致无人维护的状态而烂尾。花费了一周的时间,把《Flutter实战》敲了一边之后,纠正了以前的观点(公众号害人不浅),站在开发角度我认为具有一下几个有点: Flutter只是一种跨端的UI实现方案,过于夸大了Flutter的作用,跨平台只是跨的UI平台...

Binder中mmap原理介绍

最近组内开展学习分享的活动,我这边研究了一下binder mmap的原理。 Binder中mmap原理介绍PDF