### 阿里云Java规范知识点解析 #### 一、编程规约 ##### (一) 命名风格 1. **强制规定**:在Java代码中,所有的命名(包括类名、方法名、变量名等)都不能以下划线`_`或美元符号`$`开始或结束。这种命名习惯可能会导致一些不必要的问题,如与其他编程约定冲突或导致代码可读性降低。 - **反例**:`_name`、`__name`、`$name`、`name_`、`name$`、`name__` - **解析**:此类命名方式不仅不符合Java的命名习惯,而且可能导致编译器解析错误或混淆。 2. **强制规定**:代码中的命名禁止使用拼音与英文混合的方式,更不能直接使用中文的方式。正确的英文拼写和语法能够帮助阅读者更好地理解代码意图,减少误解的可能性。 - **正例**:`alibaba`、`taobao`、`youku`、`hangzhou`等国际通用的名称,被视为英文。 - **反例**:`DaZhePromotion`(打折)、`getPingfenByName()`(评分)、`int 某变量 = 3;` 3. **强制规定**:类名应当遵循`UpperCamelCase`风格,即每个单词首字母大写。不过有特殊情况,例如:`DO`(Data Object)、`BO`(Business Object)、`DTO`(Data Transfer Object)、`VO`(View Object)、`AO`(Application Object)、`PO`(Persistence Object)、`UID`(User Identification)等命名规则有所不同。 - **正例**:`MarcoPolo`、`UserDO`、`XmlService`、`TcpUdpDeal`、`TaPromotion` - **反例**:`macroPolo`、`UserDo`、`XMLService`、`TCPUDPDeal`、`TAPromotion` 4. **强制规定**:方法名、参数名、成员变量、局部变量都应统一使用`lowerCamelCase`风格,即首字母小写,其余单词首字母大写。 - **正例**:`localValue`、`getHttpMessage()`、`inputUserId` - **解析**:这种方式使得方法名更加清晰且易于区分,同时保持了一致性。 5. **强制规定**:所有常量命名应全部使用大写字母,单词之间用下划线`_`分隔,确保语义表达完整清晰,不要担心名字过长。 - **正例**:`MAX_STOCK_COUNT` - **反例**:`MAX_COUNT` - **解析**:明确的命名有助于提高代码的可读性和可维护性。 6. **强制规定**:抽象类命名需使用`Abstract`或`Base`作为前缀;异常类命名应以`Exception`结尾;测试类命名应以其要测试的类的名称开头。 - **解析**:这样的命名方式便于区分不同类型的类,并有助于快速识别其作用。 #### 二、异常日志 ##### (一) 异常处理 1. **解析**:异常处理部分主要介绍了在Java程序中如何正确处理异常,包括但不限于异常的抛出、捕获和处理机制。这部分内容对于提高程序的健壮性和稳定性至关重要。 ##### (二) 日志规约 1. **解析**:日志记录是程序开发中不可或缺的一部分,用于跟踪程序运行状态、调试错误以及性能监控等。这部分内容着重于如何规范化地记录日志,包括日志级别、格式等方面的规定,以提高日志的可读性和实用性。 #### 三、单元测试 1. **解析**:单元测试部分主要介绍如何编写高质量的单元测试用例,以确保各个模块的功能正确性。这部分内容强调了单元测试的重要性,并提供了一些最佳实践建议,如覆盖率要求、测试用例的设计原则等。 #### 四、安全规约 1. **解析**:安全规约部分重点介绍了在开发过程中如何保证应用程序的安全性,涵盖了数据加密、认证授权、输入验证等多个方面。这部分内容对于防止安全漏洞至关重要。 #### 五、MySQL数据库 ##### (一) 建表规约 1. **解析**:这部分内容主要针对数据库设计提供了指导,包括表结构的设计原则、字段类型的选择等,旨在提高数据库性能并减少潜在的问题。 ##### (二) 索引规约 1. **解析**:索引的设计对于提高数据库查询性能具有重要意义。这部分内容详细介绍了如何合理设计索引,以优化查询速度和减少磁盘I/O操作。 ##### (三) SQL语句 1. **解析**:这部分内容主要介绍如何编写高效、安全的SQL查询语句,包括避免SQL注入、优化查询逻辑等方面。 ##### (四) ORM映射 1. **解析**:对象关系映射(ORM)是一种将对象模型与数据库模型相互转换的技术。这部分内容提供了关于如何正确使用ORM框架的指导,以提高开发效率和代码质量。 #### 六、工程结构 1. **解析**:工程结构部分主要介绍了项目组织结构的设计原则,包括应用分层、第三方库管理等方面。良好的项目结构有助于提高开发效率和代码可维护性。 #### 七、设计规约 1. **解析**:设计规约部分涉及软件设计的基本原则和技术细节,包括但不限于设计模式的应用、架构设计等方面。这部分内容对于构建可扩展、可维护的系统至关重要。 通过以上分析可以看出,《阿里巴巴Java开发手册》是一份全面而细致的Java开发指南,不仅覆盖了基本的编程规范,还包括了软件设计、数据库管理、安全防护等多个方面。这对于提高开发人员的专业技能、规范代码风格以及确保项目的成功都有着不可忽视的作用。
2025-07-01 23:42:07 1.21MB java
1
sonar阿里p3c规则包,19年中制作的,只有48条规则,现在官方已经集成54条了,可以参考我的博客https://blog.csdn.net/LANNY8588/article/details/106716946
2025-04-18 12:44:02 7.24MB sonar 阿里java规范 sonar扫描规范
1
建议1 异常捕获尽量不要直接 catch (Exception ex),应该把异常细分处理。(1.42+) 说明:可以设计更合理异常处理分支 建议2 如果多段代码重复做同一件事情,那么在方法的划分上可能存在问题。(1.42+) 说明:若此段代码各语句之间有实质性关联并且是完成同一件功能的,那么可考虑把此段代码构造成一个新的方法。 建议3 集合中的数据如果不使用了应该及时释放,尤其是可重复使用的集合。(1.42+) 说明:由于集合保存了对象的引用,虚拟机的垃圾收集器就不会回收。 建议4 源程序中关系较为紧密的代码应尽可能相邻。(1.42+) 说明:便于程序阅读和查找。 示例:矩形的长与宽关系较密切,放在一起。 rect.length = 10; rect.width = 5;
2023-04-09 12:35:24 219KB 华为Java规范
1
相比C++代码规范业界已经达成共识,Java代码规范业界比较混乱,我们期待这次发布的Java代码规范能够给业界带来一个标准,促使整体行业代码规范水平得到提高,最终能够帮助企业和开发者提升代码质量和降低代码故障率。 此次公开的Java开发手册正是出自这样的团队,近万名阿里Java技术精英的经验总结,并经历了多次大规模一线实战检验及完善,铸就了这本高含金量的阿里Java开发手册。该手册以Java开发者为中心视角,划分为编程规约、异常日志规约、MYSQL规约、工程规约、安全规约五大块,再根据内容特征,细分成若干二级子目录。根据约束力强弱和故障敏感性,规约依次分为强制、推荐、参考三大类。此套规范不仅能让代码一目了然, 更有助于加强团队分工与合作、真正提升效率。
2022-03-24 10:37:04 1.27MB Java 规范 阿里巴巴 开发手册
1
《Java开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断完善,公开到业界后,众多社区开发者踊跃参与,共同打磨完善,系统化地整理成册,当前的版本是泰山版。本手册以Java开发者为中心视角,划分为编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约七个维度,再根据内容特征,细分成若干二级子目录。另外,依据约束力强弱及故障敏感性,规约依次分为强制、推荐、参考三大类。在延伸信息中,“说明”对规约做了适当扩展和解释;“正例”提倡什么样的编码和实现方式;“反例”说明需要提防的雷区,以及真实的错误案例。
2022-02-25 14:06:48 1.29MB Java开发手册 JAVA java规范
Alibaba Cloud Toolkit(后文简称 Cloud Toolkit)可以帮助开发者更高效地部署、测试、开发和诊断应用。Cloud Toolkit与主流IDE及阿里云其他产品无缝集成,帮助您大大简化应用部署到服务器,尤其是阿里云服务器中的操作。您还可以通过其内嵌的Arthas程序诊断、Terminal Shell终端和MySQL执行器等工具,简化应用开发、测试和诊断的过程。 产品功能 部署应用 部署应用到ECS:完成编码后,利用Cloud Toolkit快速将应用部署至ECS指定目录。 部署应用到EDAS:将本地代码和云端应用进行关联后,可以实现自动化的部署。 部署应用到Kubernetes:将本地代码和云端容器进行关联后,可以实现自动化的镜像上传和部署。 部署应用到远程服务器:支持SSH标准协议,可以将应用部署到任意机器。 内置终端Terminal:在本地IDE内,开发者可以直接通过内置的终端Terminal,快速登录所有支持标准SSH协议的机器。 文件上传:在本地IDE内,开发者可以一键将本地文件或者远程URL上传到服务器指定目录。 内置数据库SQL Console:在本地IDE内,开发者可以浏览阿里云的RDS资源。若已配置用户名和密码,可通过内置的SQL Console连接上RDS实例,并快速执行SQL语句。 Arthas诊断:在本地IDE中即可使用Arthas来实现远程诊断。 创建Dubbo应用:在本地IDE中快速创建Dubbo应用。 SSH代理功能:可使用Cloud Toolkit支持SSH代理的功能,通过添加代理机、添加部署机器和设置代理等操作,快速打通网络环境。
2021-12-05 21:35:32 78.95MB Java ECS EDAS Java规范
1
在大型互联网应用中,随着用户数的增加,为了提高应用的性能,我们经常需要对数据库进行分库分表操作。在单表时代,我们可以完全依赖于数据库的自增ID来唯一标识一个用户或数据对象
2021-10-14 23:39:24 64KB java 规范
1
包含idea和eclipse的两种插件及阿里巴巴java开发规范文档,本人亲测开源使用,内附详细安装说明,测试环境为: jdk7, eclipse Mars.2 Release (4.5.2) IntelliJ idea 2017.1.2
1
内容包含: Java编码规范宣贯.pptx
阿里巴巴java规范合集-18-19-泰山.zip
2021-04-20 09:01:53 3.51MB 阿里巴巴
1