首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏AI技术体系搭建过程

    51万行代码裸奔之夜:ClaudeCode源码深度拆解与AI规约编程研究指南

    他管理的Java系统有这些典型问题:痛点一:代码腐烂,没人敢动老系统没有测试,文档早就过期。结果是:每次改一个需求,都像在地雷阵里走钢丝。 LSP集成 + 全局代码理解,Claude Code可以做到"先读懂整个代码库,再做改动"。这对遗留系统改造价值极大。痛点二:需求→代码的翻译损耗业务说"加个审批流",研发理解成了五种不同的东西。 这在微服务开发场景下,意味着可以同时修改多个服务的接口定义、测试代码和文档,而不是串行等待。 老李最后说的一句话值得反复想:"这份代码告诉我,未来最值钱的工程师不是写代码最快的,是能把业务规则、架构约束、安全边界,用AI能理解的语言精确定义出来的人。规约写得好,AI才能跑得准。"  51万行代码,Anthropic用一次配置失误,把下一代软件工程的底牌摊开了。看懂的人,现在就开始动。

    3.1K172编辑于 2026-04-01
  • 来自专栏陈哥聊测试

    Claude Code源代码泄露,Harness Engineering是救星吗

    前几天,ClaudeCode代码泄露这件事让大家对HarnessEngineering的谈论达到了顶峰。昨天刚好和同事聊起来这件事,这次51.2万行代码因为一个打包配置失误就全部裸奔出去。 开发人员把精力都放在怎么写好提示词、怎么让AI生成更多代码,却忽略了最基本的工程规范。再往深一层想,AI能替代工程师写代码,但它能替代软件工程的核心吗? 代码写出来只是第一步,后续还有更重要的质量保障,这些都要靠人来完成,靠人把问题堵在产品上线前。这次ClaudeCode的事就是个活生生的例子。AI再强,也补不了工程能力的短板。 一个合格的工程师是在AI帮你写完代码后,你能看懂、能判断、能优化、能守住质量和安全的底线。而一个好的团队是不管用什么工具,都能守住软件工程的底线,不让51.2万行代码因为一个配置失误就全网裸奔。 说句题外话,这次事件之后,肯定会有很多公司去抄ClaudeCode的架构、抄它的提示词逻辑。

    21810编辑于 2026-04-09
  • 用了一周 oh-my-claudecode,我对“AI写代码”的看法变了

    最近折腾了一下oh-my-claudecode这个项目,说实话,一开始我是带着一点怀疑去的。 我用下来最大的变化:以前:写代码=写函数现在:写代码=写“任务描述”比如:展开代码语言:BashAI代码解释team5:executor重构数据库层它会自动:创建团队分配任务跑流程这已经不是IDE插件的范畴了 ❗3.不可控性仍然存在尤其:并发模式自循环模式有时候你会感觉:“这代码不是我写的,我不太敢上线”八、我对它的一个判断我觉得这个项目本质上不是:“提高写代码效率”而是:重新定义开发方式传统:展开代码语言: TXTAI代码解释人→写代码→AI辅助这个项目:展开代码语言:TXTAI代码解释人→下指令→AI团队写代码差别非常大。 一句话总结:会“指挥”的人,用它会很强只会“写代码”的人,会被它搞懵十、最后一句真实评价如果让我打分:创新:9/10实用:7/10稳定:6/10但有一点很确定:这东西代表的是未来,而不是现在

    1.4K30编辑于 2026-04-07
  • AI工具链效率提升——以ClaudeCode为例,从Demo代码到工程化落地

    不是说不用写代码了,而是说——你能不能让AI写出来的代码,像你亲手写的一样规范、可维护、能在现有架构里跑通。 Demo代码谁都会写。但要写出能进生产环境的代码,得懂架构、懂约束、懂边界。 ▪ 实战案例:用ClaudeCode重构Spring Boot Service 来看个真实案例。 让它review一段代码: 请review以下代码,重点关注: 1. 代码异味:重复代码、过长方法、复杂条件、魔法数字 2. 潜在bug:空指针、资源泄露、并发问题 3. 性能问题:不必要的查询、内存浪费、算法复杂度 [代码片段] 它会给你一份详细的报告: 代码审查报告 ⚠️ 代码异味 1. ### 实战案例:ClaudeCode发现并修复性能问题 真实案例。某系统的一个接口,响应时间从100ms慢慢涨到了3s。上线后才暴露问题,用户投诉来了。

    30310编辑于 2026-04-28
  • 来自专栏Learn Claude Code

    【从零手写 ClaudeCode:learn-claude-code 项目实战笔记】(6)Context Compact (上下文压缩)

    二、解决方案三层压缩,激进程度递增:展开代码语言:TXTAI代码解释Everyturn:+------------------+|Toolcallresult|+------------------+| 展开代码语言:TXTAI代码解释defmicro_compact(messages:list)->list:#第一阶段:收集所有工具结果tool_results=[]fori,msginenumerate 展开代码语言:TXTAI代码解释defauto_compact(messages:list)->list:#SavefulltranscripttodiskTRANSCRIPT_DIR.mkdir(exist_ok 展开代码语言:TXTAI代码解释#检测是否调用了compact工具manual_compact=Falseforblockinresponse.content:ifblock.type=="tool_use :TXTAI代码解释#!

    56300编辑于 2026-03-10
  • 来自专栏Python疯子

    别再裸奔了,你的项目代码安全吗,再不加密就out了

    image 加密Python源代码的方式,是将.py文件转化为.so文件,这样加密的可靠性非常高,无法破解,也就很好地保护了源代码。 一键完成 因为我们不可能通过加密项目,然后一步步移动加密文件,然后删除,再部署项目,那样会导致整个项目代码很乱,也不方便操作 加密文件也是Python代码肯定要用code完成整个过程了, (加密 -- Docker 部署的,那么就要在部署过程中进行加密处理 那么通过Docker部署需要注意点: 1、需要安装python3-dev,gcc,Cython 2、要先安装Cython, 才能执行加密代码

    2.7K30发布于 2019-11-26
  • 来自专栏奝-大周

    代码审计day6

    命令执行和代码执行的区别 代码执行:执行的效果完全受限于语言本身 命令执行:执行的效果不受限于语言语法本身,不受命令本身限制 命令执行类型: 1.代码层过滤不严 2.系统漏洞 3.第三方组件存在代码执行漏洞

    57310发布于 2020-08-19
  • 来自专栏高渡号外

    Python代码找bug(6

    Python代码找bug(6) 上期的代码设计需求: 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高? 代码如下: ? (2)正确理解和运用缩进语法 对了,昨天我们还提到一个有趣的问题就是关于python的代码基因,似乎偏好使用list列表等序列类型数据结构的问题。 这里我们把另外一种比较传统(其他语言)爱用的解决方案的代码列出来,供大家欣赏,品味两者风格的差异,看看基因的影响力是不是很强大? ? 代码如下: ? 兄弟,明察秋毫的你,看看bug在哪呢? 找出来,发到留言里,明天对答案。 提醒:惯例所有代码都是基于Pythpn3 的哦。

    87330发布于 2020-09-22
  • 你的 C# 代码在 dnSpy 面前就是“裸奔”:深扒 .NET 逆向危机与防御实战

    动态调试:攻击者可以直接在你的代码上打断点!就像你在 Visual Studio 里调试自己的代码一样,他们可以查看变量值、内存状态,甚至修改运行时数据。 dnSpy 允许直接编辑 IL 指令甚至 C# 代码并重新编译保存。 对抗效果:Sugo Protector 会将代码中的敏感字符串进行高强度加密,并在运行时动态解密。在静态分析中,攻击者只能看到一堆乱码数据,无法通过字符串搜索定位关键代码。3. 四、 守护你的知识产权,从现在开始代码裸奔的代价是巨大的:盗版泛滥、核心算法泄露、API 接口被滥用。 Sugo 保护工具 (Sugo Protector) .NET 版支持:.NET Framework 2.0 ~ 4.8.NET Core / .NET 5/6/7/8+Windows Forms,

    73910编辑于 2026-01-12
  • 来自专栏微信公号【Java技术江湖】

    Java基础6代码块与代码加载顺序

    本文主要介绍了三种代码块的特性和使用方法。 具体代码在我的GitHub中可以找到 https://github.com/h2pl/MyTech 文章首发于我的个人博客: https://h2pl.github.io/2018/04/24/javase6 代码块:用{}包围的代码 java中的代码块按其位置划分为四种: 局部代码块 位置:局部位置(方法内部) 作用:限定变量的生命周期,尽早释放,节约内存 调用:调用其所在的方法时执行 public class } } 静态代码块 位置:类成员位置,用static修饰的代码块 作用:对类进行一些初始化 只加载一次,当new多个对象时,只有第一次会调用静态代码块,因为,静态代码块 C(); C c2 = new C(); //结果,静态代码块只会调用一次,类的所有对象共享该代码块 //一般用于类的全局信息初始化 //静态代码块调用 //代码块调用

    62400发布于 2019-04-06
  • 来自专栏王磊的博客

    6种限流实现,附代码

    合法性验证限流为最常规的业务代码,就是普通的验证码和 IP 黑名单系统,本文就不做过多的叙述了,我们重点来看下后两种限流的实现方案:容器限流和服务端限流。 我们使用单 IP 在 10ms 内发并发送了 6 个请求的执行结果如下:图片从以上结果可以看出他的执行符合我们的预期,只有 1 个执行成功了,其他的 5 个被拒绝了(第 2 个在 501ms 才会被正常执行 location / { limit_req zone=mylimit burst=4; }}burst=4 表示每个 IP 最多允许4个突发请求,如果单个 IP 在 10ms 内发送 6 请求记录 +1 return true; }}以上程序的执行结果为:正常执行请求:0正常执行请求:1正常执行请求:2正常执行请求:3正常执行请求:4正常执行请求:5正常执行请求:6正常执行请求 如果你嫌弃服务器端限流麻烦,甚至可以在不改代码的情况下直接使用容器限流(Nginx 或 Tomcat),但前提是能满足你的业务需求。

    1.2K10编辑于 2023-08-25
  • 来自专栏办公魔盒

    VB6 获取网页代码

    VB6 获取网页代码!! 使用方法:获取网页代码("www.baidu.com") ---- Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA hInet As Long) As Integer Public Const INTERNET_FLAG_NO_CACHE_WRITE = &H4000000 Public Function 获取网页代码

    2.1K30发布于 2019-07-22
  • 来自专栏python3

    #6 ipdb模块源代码解读

    因此本篇博文带着大家剖析一次源代码,剖析对象为代码调试模块:ipdb。为什么选择这个模块呢?因为下一次的博文计划写Python代码调试的啦~~Go!!! # Redistributable under the revised BSD license 5 # https://opensource.org/licenses/BSD-3-Clause 6 Redistributable under the revised BSD license 5 # https://opensource.org/licenses/BSD-3-Clause 6 ,遇到这种长的代码,第一步就是在心理上战胜自己!要想成长,就要多看这种标准代码,学习代码思想,模仿代码风格,这样一步一步脚踏实地走下去,你自己写出这样优秀的代码指日可待! __main__ import post_mortem 6 7 8 def update_stdout(): 9 # setup stdout to ensure output is

    1.1K30发布于 2020-01-17
  • 一个57MB的map文件,怎么就把Anthropic的底牌全掀了?

    大家好,我是摘星,今天我们来拆解一件荒诞到让人不敢相信的真事——Anthropic因为一个npm打包配置失误,把自家王牌产品ClaudeCode的全部源代码暴露在了全世界的眼皮底下。 一、事件还原:一个打包失误引发的全球代码裸奔先捋一下时间线。 展开代码语言:TXTAI代码解释graphTBsubgraph"ClaudeCode五层架构"E["入口层EntryPoints
    CLI/REPL/Slash命令"]O["编排层Orchestration event.input);session.addToolResult(event.id,result);yieldcreateToolSummary(event,result);}yieldevent;}//中断点6ClaudeCode的做法是渐进式的,给了用户重新建立信任的空间。46行代码,体现的是对用户体验的深度思考。

    20810编辑于 2026-04-07
  • 来自专栏desperate633

    LeetCode 6. ZigZag Conversion分析代码

    代码 public String convert(String s, int nRows) { char[] c = s.toCharArray(); int len =

    47610发布于 2018-08-22
  • 来自专栏计算机学习

    xv6(2) 启动代码部分

    启动代码部分 本文来说码,实打实地来看看计算机到底是如何启动的,先来看看 $xv6$ 启动的整体流程图,好有个大概认识: 不要被这么一大坨吓到,$xv6$ 的启动过程算简单的,在启动方面做了很多简化,应该说整个操作系统都做了简化 虽说 $xv6$ 的启动过程相对简单,但也是有些复杂的,弯弯绕绕有些多,看代码和看下面文章时可以对照着这张图,免得走掉。 此时内存布局为: $Bootblock$($MBR$ && $Bootloader$) 接下来的代码操作系统就可以来掌控了,但 $xv6$ 并没有实际构造 $MBR$ 结构,从 $Makefile$ 中可以知晓最开始那个扇区写入的是 这个 $xv6.img$ 可以看作是磁盘映像。 ,因为代码段在 GDT 中的索引设为 1,所以先构建的代码段描述符。

    73200编辑于 2023-12-05
  • 来自专栏Python七号

    6 个值得玩味的 Python 代码

    先选取了 6 个自己认为值得玩味的 python 代码,希望对正在学习 python 的你有所帮助。 1、类有两个方法,一个是 __new__,一个是 __init__,有什么区别,哪个会先执行呢?

    ' >>> pattern = re.compile(regex) >>> re.findall(pattern,text) ['中国'] >>> 这里为什么要用 compile 多写两行代码呢 4、[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6] >>> [j for i in [[1,2],[3,4],[5,6]] for j in i] [1, 2, 3, 4, 5, 6] >>> 5、一行代码将字符串 "->" 插入到 "abcdefg"中每个字符的中间 >>> "->".join("abcdef") 'a->b->c->d->e->f' >>> 6、zip 函数 zip() 函数在运算时,会以一个或多个序列(可迭代对象)做为参数,返回一个元组的列表。同时将这些序列中并排的元素配对。

    46510发布于 2020-11-25
  • 3步搞定Claude Code国内安装:2026最新保姆教程(附cc-switch配置)

    二、安装ClaudeCode(Mac&Windows)1.macOS安装有魔法的情况(最简单):打开终端,粘贴下面命令:展开代码语言:TXTAI代码解释curl-fsSLhttps://claude.ai ://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"展开代码语言:TXTAI代码解释接着装ClaudeCode:brewinstall 或CMD)运行:**powershell**irmhttps://claude.ai/install.ps1|iex展开代码语言:TXTAI代码解释wingetinstallAnthropic.ClaudeCode 解决办法:在ClaudeCode里运行`/config`打开设置,在“环境变量”里添加:{"claude_code_disable_adaptive_thinking":"1"}展开代码语言:TXTAI :TXTAI代码解释####2.配置权限刚装好时,ClaudeCode每次执行命令都要你确认,很烦。

    12.9K20编辑于 2026-04-27
  • 来自专栏林德熙的博客

    dotnet 6 使用 Obfuscar 进行代码混淆

    而且此工具也在不断持续迭代更新,完全支持 dotnet 6 版本,对 WPF 和 WinForms 等等的支持也是非常好,支持多个不同混淆方式和等级的配置,支持混淆之后生成符号文件。 -- 混淆之后的输出路径,如下面代码,设置为当前工作路径下的 Obfuscar 文件夹 --> <! -- 程序集的引用加载路径,对于 dotnet 6 应用,特别是 WPF 或 WinForms 项目,是需要特别指定引用加载路径的 --> <! 也就是开发时调试的 DLL 就是混淆过后的 使用构建过程的方式需要编辑一下 csproj 项目文件,先在项目文件使用下面代码安装 Obfuscar 库,代码如下 <ItemGroup> <PackageReference github 和 gitee 欢迎访问 可以通过如下方式获取本文的源代码,先创建一个空文件夹,接着使用命令行 cd 命令进入此空文件夹,在命令行里面输入以下代码,即可获取到本文的代码 git init

    2.9K10编辑于 2022-08-12
  • 来自专栏全栈测试开发日记

    Cypress学习笔记6——Debugging调试代码

      引言   我们写程序、写复杂的脚本时,如果遇到问题,经常需要打断点进行调式,而Cypress提供了很好的debug命令——debugger   debugger调试器   Cypress测试代码在与应用程序相同的运行循环中运行 这意味着您可以访问在页面上运行的代码,以及浏览器提供给您的内容,如document, window, and debugger。    cy.visit('https://www.baidu.com/') cy.get('#s-top-left') debugger // Doesn't work })   但是上面的代码并不会运行 hit after the cy.visit // and cy.get command have completed debugger }) })   这样就可以先运行代码 ,在 debugger 位置暂停: 上面的代码整个工作流程如下 cy.visit()访问页面,Cypress等待加载 查询该元素,如果没有立即找到它,Cypress会自动等待并重试一会儿。

    1.3K30编辑于 2023-02-02
  • 领券