摘要: 一、什么是目标? 目标是团队或项目希望实现的最终结果,它应具备以下特点: 清晰性:目标应明确、具体,能够被所有参与者理解。 价值导向:目标应为用户或客户提供明确的价值。 可衡量性:目标应有明确的验收条件,能够衡量是否达成。 二、如何定义目标? 方法1:电梯三分钟演讲法 提炼核心价值:通过三分钟演讲, 阅读全文
posted @ 2025-01-17 19:41 荣-- 阅读(52) 评论(0) 推荐(0) 编辑
摘要: 一、编码前的重构思考 在编码前,通过以下步骤审视接口和设计,确保代码的可维护性和可测试性: 站在单元测试的角度审视接口: 思考是否需要将所有public和protected函数都暴露出来。 考虑是否违反正交性原则,避免函数过于复杂或依赖过多。 避免将不同场景的代码混在一起,确保代码的可测试性。 放置 阅读全文
posted @ 2025-01-17 19:34 荣-- 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 我的重构经历:编写代码生成器 概述 背景 多年前,我开发了一个基于C#的Windows程序——代码生成器,并在此后十多年间持续优化。该程序能够根据数据库表结构生成代码,并将结果显示在文本框中。最初是从同事那里接手的一个简单项目,经过不断扩展和重构,最终实现了通过数据库自动生成具备完整增删改查功能的网 阅读全文
posted @ 2025-01-17 19:11 荣-- 阅读(158) 评论(1) 推荐(0) 编辑
摘要: 当开发人员接到新任务后 1. 向上追溯(纵向拉齐) 1.1 首先提出的问题 这个任务针对的需求点是什么? 用户/客户是谁?他们有什么特点? 该需求为用户/客户提供了什么价值? 这个需求的满意条件是什么? 1.2 其次想到的是 这个需求属于哪个发布版本? 为什么这个版本需要开发这个需求? 这个版本的满 阅读全文
posted @ 2025-01-17 19:08 荣-- 阅读(442) 评论(6) 推荐(4) 编辑
摘要: 在软件开发过程中,单元测试代码不仅是测试工具,更是开发的重要辅助手段,如同IDE一样,帮助我们更高效地开发。本文将探讨单元测试的重要性、最佳实践以及常见误区。 1. 单元测试的最佳时机 单元测试的最佳编写时机是在第一个接口函数完成后立即开始。如果等到代码量庞大后再着手,往往会因为工作量过大而失去动力 阅读全文
posted @ 2017-08-24 12:43 荣-- 阅读(444) 评论(0) 推荐(1) 编辑
摘要: 概述 ZLMediaKit挺大的,支持的协议比较多,但很多可能并不是自己需要的,就需要剪裁,这样可以减少编译出文件的大小,加快编译速度。 我打算先只支持rtsp和H264/H265/AAC/G711。 配置 CMake 编译选项 mkdir build cd build cmake .. \ -DE 阅读全文
posted @ 2025-03-04 21:30 荣-- 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 概述 在开源项目本地化开发中,拉取分支进行定制化修改面临一个核心挑战:如何高效同步上游更新。 当开源项目升级时,本地分支与远程主干的代码会产生冲突,导致合并过程复杂化。本文以 Cobalt 项目为例,阐述如何通过架构设计与工程实践解决这一难题。 Cobalt 的架构实践 项目定位 Cobalt 是由 阅读全文
posted @ 2025-03-04 21:28 荣-- 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 目录ZLMediaKit是什么编译安装依赖库构建项目问题处理问题1: srtp 未找到, WebRTC 相关功能打开失败问题2:依赖库问题安装配置和运行问题处理问题1: 无权限监听554端口问题2: 80端口已经被使用推流测试RTSP推流准备准备视频文件安装VLC推流拉流验证问题:拉流失败ZLMed 阅读全文
posted @ 2025-03-03 22:16 荣-- 阅读(163) 评论(2) 推荐(0) 编辑
摘要: 《重构工程实践:从代码优化到接口设计》系统性解析软件演进中的持续重构方法论。文章通过微信小程序开发中的两大核心场景: 路由模块重构:通过方法抽象与架构升级,消除6处代码重复,实现33%代码精简与66%复杂度下降,构建可视化路由控制体系 请求接口工程化:设计具备拦截器机制的网络请求工厂,标准化加载/错误处理流程,实施测试金字塔策略(单元测试70%+) 提出四阶架构演进模型与量化质量评估体系: 技术债务率、代码重复率等6大核心指标 甘特图驱动的迭代计划与团队协作看板 揭示重构带来的工程价值: ▶️ 维护成本降低60% ▶️ 功能扩展效率提升80% ▶️ 构建可验证的质量防线 附完整代码演进对比、5类Mermaid架构图示及可复用的测试用例模板,为技术团队提供从代码优化到架构治理的完整解决方案。 阅读全文
posted @ 2025-02-28 22:18 荣-- 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 重构的艺术:在代码演进中寻找优雅》 本文深入探讨软件开发中的持续重构实践,揭示重构并非特殊任务而是日常开发的自然组成。通过微信小程序开发中的真实案例: 1️⃣ 路由模块重构:消除6处重复导航逻辑,抽象出可复用的路由服务层 2️⃣ 请求接口设计:封装通用网络请求工厂,实现加载/错误处理/测试的标准化 3️⃣ 架构演进路径:从方法级优化到全局服务设计,展示重构的层次化实践 揭示重构带来的多维收益: ✔️ 降低60%代码维护成本 ✔️ 提升80%功能扩展效率 ✔️ 构建可测试的工程化体系 文章附完整代码对比、架构演进图示及质量评估指标,为开发者提供可落地的重构方法论。 阅读全文
posted @ 2025-02-28 22:05 荣-- 阅读(143) 评论(0) 推荐(2) 编辑
摘要: 在 UI(用户界面)设计和前端开发领域,flex 通常指的是 Flexbox(弹性盒子布局模型),它是一种用于为盒状模型提供最大灵活性的布局模式。以下为你详细介绍: 基本概念 Flexbox 旨在提供一种更高效的方式来布局、对齐和分配容器内项目之间的空间,即使它们的大小是未知的或动态的。使用 Fle 阅读全文
posted @ 2025-02-27 08:45 荣-- 阅读(14) 评论(0) 推荐(0) 编辑
摘要: 概述 本文整理自BiliBli的《孔工码字》, 这是一个很好的视频号。讲的非常好,整理在这里,自己学习 他的Gitee地址:https://gitee.com/kongfanhe 从机器翻译到自动客服,从文生视频到AI小说,语言模型已经无所不在。 但计算机是如何理解语言的, 毕竟,计算机擅长的是数学 阅读全文
posted @ 2025-02-24 18:16 荣-- 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 1. 软件设计中的坏味道(对应原书第7章) 核心理解: 抽象不足:业务代码中掺杂过多细节,导致代码僵化、脆弱、难以理解和维护。 业务逻辑应调用功能,而非实现功能:业务逻辑应通过调用功能接口来完成,而不是直接实现功能细节。 功能抽象为接口,业务逻辑组合接口:功能应抽象为接口,业务逻辑通过组合和调度这些 阅读全文
posted @ 2025-02-20 06:46 荣-- 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 目录概述PyTorch框架MNIST数据集讨论:什么是神经网络,它是怎样识别图片的训练过程分层输出层softmax归一化:让输出层的每个节点取值0~1之间,总和为1训练:缩小差值回顾:batch激活函数:非线性转换代码安装依赖库代码执行结果扩展: 在28*28的画布上手写数字进行识别:三轮训练的预测 阅读全文
posted @ 2025-02-18 22:57 荣-- 阅读(17) 评论(0) 推荐(0) 编辑
摘要: 目录概述OpenCV安装openvc素材案例1:图片的维度与通道代码补充案例2:图像的彩色通道概述代码执行结果案例3:图像的裁剪代码执行结果案例4:使用OpenCV的绘制功能代码执行结果案例5:均值滤波概述代码执行结果案例6:图像特征的提取代码执行结果案例7:模板匹配概述代码执行结果补充案例8:图像 阅读全文
posted @ 2025-02-17 23:53 荣-- 阅读(12) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示