NUnit测试基础
.NET生态系统中的NUnit框架简介
单元测试的角色与哲学
在现代软件开发生命周期中, 单元测试是确保代码质量, 可维护性和可靠性的基石. 单元测试的核心理念是将软件系统分解为最小的可测试单元–通常是一个方法或一个类–并对其进行独立验证. 这种隔离测试的方法能够快速定位缺陷, 简化调试过程, 并为代码重构提供安全保障.
进入阅读→Clojure Kit框架入门介绍
Kit是Luminus的进化, 体验了以下, 做了个项目, 体验很棒, 本文是入手指南. 有兴趣的同事们可以尝试一下公司代码库中hospital这个项目, 应该都有权限.
Kit vs Luminus: 第一印象
Luminus 虽然能快速启动项目, 但初始生成的项目结构和依赖项相当庞杂. Kit 给人的初步印象是更轻量, 它提供了一个更简洁的模板, 允许开发者根据需要逐步添加功能模块.
进入阅读→代码之上: 编程的真正核心

你有没有过这样的经历: 面对技术文档或者一个的代码库, 感觉就像在迷雾中航行? 你拼命想抓住顿悟时刻, 结果却发现自己比开始时更加迷茫. 我们常常觉得, 只要代码能跑, 文档齐全, 这事儿就算成了. 但如果这种想法本身就错了呢?
我们习惯于把软件看作是代码, 界面, 文档这些 "看得见摸得着" 的东西的总和. 就像工厂生产线, 写代码, 写文档, 打包发布, 搞定. 但这种 "生产视角" 常常无法解释一些令人头疼的现实: 为什么有些 bug 如此诡异, 难以捉摸?
进入阅读→你代码肯定有问题

写代码时候, 你可能隐约有种感觉, 你的代码并不完美. 也许你压抑了这种感觉, 或者用测试, 类型系统, 代码审查之类的东西来安抚自己.
但让我们面对现实吧: 这代码肯定有问题.
进入阅读→将正在使用的 Linux 系统转换为 Docker 镜像并迁移到新系统

在某些情况下, 我们可能希望将一个正在使用的 Linux 系统转换为 Docker 镜像, 并在另一台计算机上使用该镜像运行容器. 本指南将详细介绍如何完成这一过程, 包括如何将 Linux 系统打包为 Docker 镜像, 如何导出该镜像, 以及如何在新系统上导入并运行该镜像.
步骤 1: 创建 Linux 根文件系统的 tar 备份
进入阅读→emacs上的LLM交互工具gptel介绍
GPTEL介绍和基本使用
近年来.大型语言模型(LLM)的发展日新月异.它们在文本生成,代码编写,语言翻译,问答系统等领域展现出了惊人的能力.
像OpenAI 的 ChatGPT,Google 的 Gemini,Anthropic 的 Claude.以及本地运行的Ollama,Llama.cpp 等模型.都成为了开发者和内容创作者的强大工具.
进入阅读→Clojure系列语言: Lisp在现代编程中的新发展
引言: Lisp的复兴与Clojure的影响
Lisp, 继FORTRAN之后第二古老的高级语言, 以强大的元编程能力, 简洁的语法和灵活的数据结构而著称, 历经岁月洗礼, 依然独具魅力.
上一次AI热潮退去以后, 一度被贴上"学院派"和"小众"的标签.
进入阅读→Java Robot:可以模拟系统鼠标/键盘操作的自动机器人
客户系统中, 要做一个自定义的软键盘, 涉及到如何模拟键盘事件.
调研过程中发现JDK对此支持的还不错. 能够记录用户外设/直接操作外设.
java.awt.Robot 类控制鼠标和键盘, 模拟用户输入. 做个软键盘确实不在话下了.
Emacs中的冲突合并
Emacssmerge-mode用于解决版本控制合并冲突. 一般和 Magit 组合使用.
1. 启动 smerge (打开 smerge-mode)
当在 Emacs 版本控制操作 (例如, git merge 或 git pull) 中遇到合并冲突时, Emacs 会在受影响的文件中标记冲突区域. 要启动 smerge, 打开包含冲突标记的文件.
西门子 S7-1200/1500 PLC 字符串类型详解: STRING 与 WSTRING
在西门子 S7-1200 和 S7-1500 PLC 编程中, 字符串处理是一项常见的任务. 理解 PLC 中字符串的存储方式, 编码和限制对于编写高效且可靠的程序至关重要. 本文将深入探讨 S7-1200/1500 PLC 中的两种主要字符串类型: STRING 和 WSTRING.
1. 字符串类型概述
西门子 PLC 提供了两种字符串类型:
进入阅读→