Category: 编程

AI Coding Agent 正在重塑编程的门槛: 没有AI根本不会写代码了, AI让我严重降智[裂开]

AI Coding Agent 正在重塑软件开发的门槛。从 VS Code Agent、GitHub Copilot 到 Codespaces 和 GitHub Actions,开发流程正在从“手写代码”变成“提出问题、指挥 AI、审核结果”。当 12 岁的孩子也能在浏览器里用 Copilot 修改 Tetris 并触发发布时,说明编程的入口已经被大幅降低。未来真正重要的能力,不再只是会不会写代码,而是能否定义问题、拆解任务、判断 AI 方案是否靠谱,并把代码安全地放进真实系统中运行。 AI Coding Agent 正在重塑编程的门槛 写代码的门槛,正在变得像用计算器一样低 从写代码到指挥 AI:程序员的工作正在被重新定义 …

从电话亭到大语言模型: 古法编程的黄昏

电话亭里的 C++:一个旧时代的回声 当电话亭变成图书馆,当编程变成提示词 那些电话亭里的编程书,和即将远去的手写代码 从一英镑电话到 AI 编程:时代真的变了 古法编程:从 C++ 入门书说起 那天和家人散步,路过一个被改造成社区图书馆的英国电话亭,里面竟然放着 HTML 和 C++ 编程书。电话亭曾经承载着昂贵而珍贵的通信记忆,如今成了知识共享的小角落。而随着 AI 和大语言模型的发展,手写代码也许终将像电话亭和算盘一样,成为一个时代的回声。 古法编程: 村里有C++/HTML程序员 那天,我和家人一起散步,来回走了 5 公里。回村里的路上,我注意到一个废弃改造后的电话亭,里面放了很多书,其中竟然还有 HTML 和 C++ 的编程书。 这种路边的红色电话亭算是英国的一大特色,已经有二三十年的历史了。如今,随着手机、互联网和 5G 通信的发展,大部分电话亭早已停止使用。人与人之间的联系变得越来越方便,也越来越便宜。 …

竞赛选手几乎都会写的两行 C++ 代码

竞赛选手几乎都会写的两行 C++ 代码 在刷算法题、打竞赛的人里,几乎都能看到 main() 里先写这两行: int main() { ios::sync_with_stdio(false); cin.tie(nullptr); } 很多新手会觉得像“祖传模板”,但它们确实能在 IO 很重的题里显著提速。原因主要有两个:同步和自动刷新。 1) 为什么 ios::sync_with_stdio(false) 能加速? C++ 常用输入输出是 cin / cout。默认情况下,它们会和 C 的 scanf / printf …

理解C++中的std::transform_reduce及示例

理解 C++ 中的 std::transform_reduce 及示例 std::transform_reduce 是一个强大的 C++17 算法,它结合了 transform 和 reduce(或 accumulate)的功能。它允许你对元素进行转换,然后使用二元操作进行归约,从而写出简洁高效的代码。 语法 template<class InputIt1, class InputIt2, class T, class BinaryOp1, class BinaryOp2> T transform_reduce(InputIt1 first1, InputIt1 last1, …

C++中检测编译时与运行时: if consteval 与 std::is_constant_evaluated()

C++ 一直在不断增加新特性,以便程序员能够区分在编译时运行的代码和在运行时执行的代码。其中两个重要工具是函数 std::is_constant_evaluated()(C++20)和语言级别的 if consteval(C++23)。本文将解释这两者,展示实际示例,比较它们的保证和权衡,并建议在何时使用各自的方法。 这两种技术都允许你编写分支,根据当前的求值是在常量求值(编译时)上下文中还是运行时上下文中而表现不同。差异虽然细微,但非常重要:一个是返回布尔值的函数,另一个是编译器视为仅在编译时检查的特殊 if 语句,编译器会进行特殊处理。 std::is_constant_evaluated() (C++20) 这是一个在 <type_traits> 中声明的函数: #include <type_traits> constexpr bool std::is_constant_evaluated() noexcept; 当当前表达式在常量表达式(编译时)上下文中求值时,该函数返回 true,否则返回 false。 示例: #include <iostream> #include <type_traits> constexpr int …

用Python和现有CLI工具测试开发Web Sockets应用

Web Sockets简介 WebSocket 实现了客户端和服务器之间基于单个 TCP 连接的实时全双工通信。在这篇文章中,我们将向你展示如何用 Python 搭建一个简单的 WebSocket 服务器,以及如何使用 Python 客户端和流行的命令行工具,比如 websocat 和 wscat 来测试它。 用 Python 搭建 WebSocket 服务器 我们使用 websockets 库,它提供了基于 asyncio 的易用 WebSocket 服务器实现。下面是一个简单的服务器(Python 代码),监听端口 …

时隔两年, 重新教媳妇编程, 不过她好像全忘光了

我上一次教我媳妇编程,大概是两年多前了。后来因为工作太忙,再加上一些其它原因,就停下来了。其实她对编程也不是很感兴趣,反倒更喜欢用 Excel,因为她工作中经常会用到。 上周刚好有点空闲时间,我又教她写了一个反转链表的题目。这个题我前阵子刚教过我儿子,觉得既适合用来面试,也很适合用作编程启蒙。 不过整个过程下来,她一直显得很迷茫。我也不确定是不是我讲得不好。还记得以前有网友留言调侃:“课讲得很一般,不过媳妇还挺好看的。” 说到底,编程不能只停留在理论层面。如果只是单方面学习、平时又缺乏实践的话,不仅学得不深入,而且很容易就忘了。学编程最好的方法就是敲代码。 我挺喜欢“输出型”的事情,像教娃、教媳妇这种,既能复盘知识,又特别解压。之前有网友留言:“你能教媳妇编程还不被她一顿骂,已经很成功了,这可是站在作死边缘反复横跳啊。” 网友说:“难度太大了 赖总 可以换换思路 教教好玩的 比如说图形化编程 或者ai做游戏 或者ai做视频 音乐啥的 女生喜欢这些 生动形象好玩有趣的 算法感觉也只能教教喜欢动脑子和喜欢挑战的小孩子 或者要打比赛,找工作种种需求的,不然这个玩意没人想碰,太无聊了。” 网友还说:“对夫妻感情那么有信心吗?就不能教点别的吗?” 网友又说:“人家是靠颜值吃饭的,你非得逼着学编程,哈哈哈” 本文一共 534 个汉字, 你数一下对不对. 时隔两年, 重新教媳妇编程, 不过她好像全忘光了. (AMP 移动加速版本) …