software camp——编程规范:方法

software camp——编程规范:命名 原则:团队为包、类、方法、变量取一个好名字,使代码易于理解好的命名有如下特征:a.能清晰的表达意图b.避免造成误导c.避免不必要的编解码 比如在Java中不建议采用匈牙利命名法d.能区分出意思建议不要在变量/类名后加data,info,object等一般意义的词e.不用或少用缩写小于15个字母的一般不用缩写,超过15个字母的可采用去掉元音的方法或者行业内约定俗成的缩写,且缩写保持驼峰格式。规则1:... 阅读详情

原则1:方法设计的第一原则是要短小

原则2:方法设计应遵循单一职责原则(SRP),一个方法仅完成一个功能

原则3:方法设计应遵循单一抽象层次原则(SLAP)

SLAP原则,是指让一个方法中所有的操作处于相同的抽象层。否则跳跃的代码的抽象层次破坏了代码的流畅性。

原则4:方法设计应遵循命令与查询职责分离原则(CQRS)

规则1:不要把方法的入参当做工作变量/临时变量,除非特别需要

规则2:使用类名调用静态方法,而不要使用实例或表达式来调用

建议1:应明确规定对接口方法参数的合法性检查由调用者负责还是由接口方法本身负责

接口(public)方法调用时,应对参数做合法性检查。

应避免出现调用者和方法本身都检查的情况,造成过度防御,降低程序性能。

建议2:对接方法的参数个数不宜过多

建议3:谨慎使用可变数量参数的方法

应该在确实需要操作可变长度的值的序列时使用


老款MacBook Air升级NVMe硬盘与UEFI安装Win7实战指南 NVMe(非易失性内存高速)协议作为现代固态硬盘的主流标准,通过PCIe总线直接与CPU通信,相比传统SATA协议,能大幅降低延迟并提升数据传输效率。其技术价值在于为存储设备带来了革命性的性能突破,尤其适用于需要高速数据读写的场景。在老旧硬件改造领域,通过刷写修改版固件为设备注入NVMe驱动支持,结合UEFI(统一可扩展固件接口)引导模式,能够突破厂商限制,实现新硬件与旧系统的兼容。本文聚焦于**2014款MacBook Air**的**硬件改造**,详细阐述了如何通过固件魔改与驱动整合,成功安装并引导Wi 阅读详情

相关推荐

Mac制作Win10启动盘:跨平台工具与操作指南

启动盘制作是系统部署与维护中的基础技术,其核心原理是将包含引导信息的磁盘映像(如ISO文件)完整写入存储设备。在跨平台场景下,尤其需要处理文件系统兼容性和引导记录差异等技术挑战。通过balenaEtcher等工具,开发者可以高效实现不同操作系统间的启动盘制作,其验证机制能确保数据完整性,大幅降低制作失败风险。这类技术不仅适用于个人用户重装系统,更是IT支持人员部署工作环境和开发者测试跨平台兼容性的实用方案。在实际操作中,需特别注意U盘格式选择(如MS-DOS(FAT))和引导模式适配(UEFI/BIOS),

weixin_30691871的博客 376

Java编程规范

《Java编程规范学习笔记》 命名: 为包、类、方法、变量取一个好名字,使代码易于理解 禁止使用魔鬼数字 常量命名,由全大写单词组成,单词间用下划线分隔,且使用 static final修饰 变量、属性命名,使用名词,并采用首字母小写的驼峰命名法 方法的命名,用动词和动宾结构,并采用首字母小写的驼峰命名法 类和接口的命名,采用首字母大写的驼峰命名法 包的命名,由一个或若干个单词组成,所有的字母均为小写 数组声明的时候使用 int[] index,而不要使用 int index

weixin_43774759的博客 3458

PC端绿色工具集合:无需安装的Windows效率基线

绿色软件是指不依赖系统安装、不修改注册表、单文件即用的便携式程序,其核心原理是绕过Windows传统安装机制,以确定性运行和零残留特性保障兼容性与安全性。这类工具构成轻量级、可审计、离线可用的数字工作台基础,在远程办公、多设备协同、IT支持及系统洁癖等场景中展现出不可替代的技术价值。尤其在DLL依赖缺失、企业组策略限制、老旧硬件适配等典型Windows痛点下,绿色工具集合成为保障基础生产力的关键基础设施。本文聚焦PC端绿色工具集合的设计逻辑、选型标准与工程化部署实践。

weixin_34218890的博客 258

《java与模式》笔记(二) 开闭原则

ξ 4.1 什么是开闭原则☆ 开闭原则指的是一个软件实体应对对扩展开发,对修改关闭(Software entities should be open for extension, but closed for modification)。这个原则是说在设计一个模块的时候,应对使这个模块可以在不被修改的前提下被扩展,换言之,应对可以不必修改源代码的情况下改变这个模块的行为。☆ 满足开闭原则的

jplatform 2627

UCINET 6.2安装全攻略:从解压到NetDraw联动及常见坑

社会网络分析是研究组织沟通、论文合作、舆情传播等关系的核心方法,而UCINET作为该领域的经典工具,凭借其稳定的矩阵运算和权威的中心性指标计算,长期被学术界和工程实践广泛采用。理解社会网络分析的基本原理——将节点与关系抽象为矩阵——是使用UCINET的前提,而这一工具的技术价值在于能快速完成点度中心度、中间中心度等关键指标测算,帮助研究者识别网络中的关键角色与信息通道。在实际应用中,从数据整理到可视化呈现,UCINET常与NetDraw联动,形成从矩阵导入到关系图绘制的完整流程。然而,许多用户在安装阶段便遇

weixin_33924770的博客 525

Win10离线部署.NET Framework 4.8实战包解析

.NET Framework 是 Windows 平台关键运行时环境,其离线部署涉及系统兼容性、权限控制与组件依赖等底层机制。理解 .NET Framework 4.8 的静默安装原理、DISM 启用 NetFx3 的绕过策略,以及注册表与文件系统双重验证逻辑,是保障工业级 WinForms/WPF 应用在无网络、受限策略环境中稳定启动的技术基础。该方案聚焦于企业现场常见的‘裸机+断网+无管理员权限’硬约束场景,通过预置 CAB 源、封装批处理控制流、统一日志审计等工程化设计,实现从环境检测、运行时注入到沙

weixin_30899023的博客 8

临时变量、引用参数和const

如果实参与引用参数不匹配,C++将生成临时变量。当前,仅当参数为const引用时,C++才允许这么做,但以前不是这样。下面来看看何种情况下,C++将生成临时变量,以及为何对const引用的限制是合理的。首先,什么时候将创建临时变量呢?如果引用参数是const,则编译器将在下面两种情况下生成临时变量:1、实参的类型正确,但不是左值;2、实参的类型不正确,但可以转换为正确的类型左值是什么呢?左值参数是...

We_are_family678的博客 526

标准工时精益化管理:理论、方法与技巧

ECRS工时分析软件是一款综合性软件,包含了IE软件、IE改善软件、工业工程软件、作业改善/业务改善软件、动作分析软件、作业分析软件、ECRS分析法、ECRS改善手法、时间测量软件、工时测量软件、标准工时计算软件等功能。理论上,标准工时是指在标准的工作环境下,完成一道加工工序所需要花费的人工时间。不同企业、不同工序需要的辅助作业时间和损耗时间各不相同,因此企业需要灵活运用标准工时公式进行计算。总之,标准工时的制定需要综合考虑多种因素,企业可以灵活运用本文介绍的方法和技巧来优化制定流程。

VIOOVI_ECRS的博客 848

变量、方法、参数

但在 Java 中,虽然传递的是引用的值(对象的地址),但仍然是按值传递。实际上,传递的是引用的副本,因此 在函数内对引用的修改会影响到原始的引用,但⽆法修改引用指向的对象。方法的声明加上了static关键字,静态方法是属于类的而不是属于类创建的对象或实例的,故在调用时无需通过对象实例。在类中声明,无需static、abstract等关键字修饰,创建类对象,通过对象的引用所调用的方法。引用传递:方法接收的直接是实参所引用的对象在堆中的地址,值传递:在值传递中,传递给函数的是实际参数的值的。

supercool7的博客 648

yolov5深度剖析+源码debug级讲解系列(一) yolov5的架构和源码debug准备

前言 前段时间分析了yolov3的源码,这次想带着小伙伴一起把yolov5完全掌握。博主还是保持着一贯的风格,依旧采用debug级别的源码剖析。目的就是让大家可以通过一个系列的文章就把yolov5的架构、设计理念和每一行源码都弄懂。只要小伙伴可以花时间把这个系列读完,就会对yolov5的理解有所提升。 去年参加了kaggle的小麦检测比赛,yolov5在比赛的中段开始呈现霸榜趋势,超越了efficientdet。虽然最后yolov5因为权限等某些问题被kaggle官方禁用了,但是仍然体现出了其强大的能力。值

人唯优的博客 4万+

gerrit 配置 ----Gitweb集成

此外,为了让用户能够查看任何关于 gitweb 的信息 项目中,用户必须能够阅读所有引用(包括 refs/meta/config,refs/meta/dashboards/*等)。或者,如果Gerrit通过反向代理送达,它可以 为gitweb的链接生成不同的URL(需要的) 在网页服务器上重写为)。Gerrit 代码审查可以管理和生成指向 gitweb 的超链接, 允许用户从Gerrit内容跳转到相同信息, 但由 gitweb 显示。默认为,这是 Linux 发行版上“gitweb”包的常见安装路径。

QuanQuanYuanXin的博客 1406

java语言编程规范理解

二、代码风格 格式 一个源文件按顺序包含版权、package、import、顶层类,且用空行 分隔 一个源文件中应按顺序包含以下信息: 许可证或版权信息; package语句,且语句内不换行; import语句,且语句内不换行,不能用通配符*; 顶级类(只有一个),所在.java源文件与它同名。 ...

未来与一生 3373

在Ubuntu 20.04上,用EtherCAT Igh 1.6.2驱动高创BD3E伺服电机(附完整C代码)

本文详细介绍了在Ubuntu 20.04实时内核环境下,使用EtherCAT Igh 1.6.2主站驱动高创BD3E伺服电机的完整实现方案。从实时系统配置、伺服电机PDO映射到精确控制线程设计,提供了完整的C代码样例和实际项目中的调试技巧,帮助开发者实现工业自动化中的高精度运动控制。

weixin_30772105的博客 111

software camp——编程规范:排版

原则:团队应遵守一致的排版风格规则1:在不同的概念之间,增加空行 比如方法与方法、类名与import、import与包名之间、相对独立的程序块之间、变量说明后需增加空行,来提升可读性。规则2:将逻辑紧密相关的代码放在一起 将相关的代码放在一起,阅读代码时能一眼获取相关信息,避免概念的频繁切换。其他还比如:将常量的定义放在一起,将有调用关系的代码尽量放在一起。规则3:控制一行的宽度,不要超过120个...

folute_的博客 725

【时时三省】tessy 集成测试:小白入门指导手册

有图有文字详细介绍 tessy 集成测试 操作方法。

时时三省的博客 2517

Ardupilot无人船(车)mavros自主控制

rover 4.4。

超维空间科技的博客 3230

software camp——编程规范:注释

原则:尽量用代码来解释自己我们必须认识到,写注释从某种意义上来说是一种“失败”,是我们无法用代码来解释意图而必须借助于注释。因此在写注释前要慎重思考,看能否通过改善代码可读性来避免写注释。规则1:注释应解释代码的意图,而不是描述代码怎么做的规则2:保证注释与代码一致,避免产生误导注释造成误导,危害性很大,还不如不写。很多误导的产生,并不是有意为之,而是在代码修改的同时没有修改对应的注释造成的。因此...

folute_的博客 413

Hermes Agent 桌面版安装部署完全指南:一步步安装自进化Agent智能体

是由开发的开源自主 AI 智能体(MIT 协议)。它不是绑定在集成编辑器上的编码助手,也不是围绕单一 API 的聊天机器人封装——它是一个越用越强大的自主智能体,拥有独一无二的闭环学习系统特性说明自主技能创建在复杂任务后自动生成可复用的 Skills(技能)技能自我改进使用过程中持续优化已有技能持久化记忆跨会话记住你的项目、偏好和解决方案用户画像建模通过 Honcho 方言式推理,逐步构建对你的深度理解20+ 平台接入。

大模型与Agent智能体 7771

software camp——编程规范:变量和类型

原则:谨慎使用静态成员变量静态成员变量是属于类级别的变量,而不是属于某个对象实例。推荐在以下场景中,合理使用静态变量:1.类的所有实例必须共享同一个变量时,比如,为实现某个任务,该类的所有实例共用的变量,如计数器等。2.工具类提供的常量,如配置文件中的参数“映射”到类的变量时,基本上第一次赋值后,数据不再被修改。3.单例模式中应用。规则1:避免随意进行类型强制转换,应改善设计,或在改善前用inst...

folute_的博客 498

深度学习在传感器数据分析中的创新应用

传感器是物理世界与数字世界的“接口”,其生成的高维、时序、多源数据蕴含着设备状态、环境变化、用户行为等关键信息。传统传感器数据分析依赖手工特征工程与简单机器学习模型,难以应对复杂场景下的非线性、长程依赖与实时性需求。深度学习通过自动特征提取非线性建模与端到端学习,成为传感器数据处理的革命性工具。本文从概念基础理论框架架构设计实现机制到实际应用,系统拆解深度学习与传感器数据的融合逻辑,结合工业预测维护医疗健康监测智能交通等场景,揭示其技术边界与未来演化方向。

大数据洞察的博客 568

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

software camp——编程规范:包、类和接口

原则1:类和接口的设计应遵循面向对象SOLID设计原则1、单一职责原则2、开放封闭原则开放封闭原则指的是,新增功能时可以不修改原有的代码。也就是对扩展开放,对修改封闭。3、里氏替换原则里氏替换原则是指,子类的实例应该能够替换任何其超类的实例。4、接口分离原则5、依赖倒置原则原则2:类的设计应遵循迪米特法则迪米特法则又叫最少知识原则,初衷在于降低类之间的耦合。原则3:类的设计应遵循“Tell,Don...

folute_的博客 344

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

mac-precision-touchpad 完整指南:在 Windows 上让苹果触控板支持三指手势与缩放

mac-precision-touchpad 是面向苹果 MacBook 与 Magic Trackpad 2 的 Windows 精准触控板驱动。装上它之后,Windows 10 及以上系统里可以用三指拖拽、四指切换桌面、双指缩放,覆盖 USB、SPI、蓝牙三种连接方式。 ## 先看适不适合你:机型与系统要求 系统要求是 Windows 10 及以上。机型方面,驱动按连接方式分为 SPI(老

gitblog_00895的博客 165

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

F´ 核心构件详解:端口(Port)、组件(Component)与拓扑(Topology)

端口(Port)、组件(Component)与拓扑(Topology)是 F´ 飞行软件与嵌入式系统框架中构成系统的三大核心构件:组件封装系统逻辑,端口定义组件之间的类型化通信接口,拓扑则把运行时的组件实例通过端口连接成完整的系统图。本文以 [docs/UsersGuide/user/port-comp-top.md](https://link.gitcode.com/i/3480ccd37d33

gitblog_01145的博客 84

Video-subtitle-extractor 安装指南:硬字幕 3 分钟转 SRT

Video-subtitle-extractor(VSE)是一款视频字幕提取工具,基于 PaddleOCR 在本地完成识别,把烧录在画面里的硬字幕转成 SRT 外挂字幕,无需申请任何第三方 API。支持 87 种语言,可启用 GPU 加速。 ## 📦 功能概览 - **多语言识别**:内置 87 种语言模型,覆盖中英双语、日语、韩语、阿拉伯语等 - **本地隐私保护**:OCR 全程在本地运

gitblog_00292的博客 326

Hy3 生产部署避坑指南:vLLM 与 SGLang 配置方案深度对比

**Hy3** 是腾讯混元团队开源的 295B 总参数(激活 21B)混合专家(MoE)推理与智能体模型,官方推荐通过 **vLLM** 或 **SGLang** 两个推理框架进行生产部署。本文带你快速搞定 Hy3 大模型部署:硬件怎么选、MTP 投机解码如何开启、工具调用解析器怎么配,并总结部署过程中最容易踩的坑,帮你一次配通。 ## 一、为什么 Hy3 值得投入资源部署 在讲配置之前,先看

gitblog_00436的博客 498

多GPU并行推理策略:PegaInfer张量并行与专家并行配置指南

**PegaInfer** 是一个纯 Rust + CUDA 编写的 LLM 推理引擎,不依赖 PyTorch,提供 OpenAI 兼容 API,支持 Qwen3 到 Kimi-K2 等多款模型。面对"单卡放不下"或"MoE 模型解码慢"两大难题,PegaInfer 用张量并行(TP)、专家并行(EP)和数据并行(DP)三种策略帮你把大模型跑起来——本文带你从零理解这些并行策略,并给出一份可直接上

gitblog_00926的博客 594
上一篇: software camp——编程规范:变量和类型
下一篇: software camp——编程规范:包、类和接口
folute_
博客等级 码龄11年 3粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值