《Java工程师必读手册》——Java极客主义系列——Java函数优雅之道(1)

简介: 《Java工程师必读手册》——Java极客主义系列——Java函数优雅之道(1)

导语

 

随着软件项目代码的日积月累,系统维护成本变得越来越高,是所有软件团队面临的共同问题。持续地优化代码,提高代码的质量,是提升系统生命力的有效手段之一。软件系统思维有句话Less codingmore thinking(少编码、多思考),也有这么一句俚语Think morecode less(思考越多,编码越少)。所以,我们在编码中多思考多总结,努力提升自己的编码水平,才能编写出更优雅、更高质、更高效的代码。

 

本文总结了一套与Java函数相关的编码规则,旨在给广大Java程序员一些编码建议,有助于大家编写出更优雅、更高质、更高效的代码。这套编码规则,通过在高德采集部门的实践,已经取得了不错的成效。


一、 使用通用工具函数

 

案例1字符串比较

 

现象描述

 

不完善的写法

 

image.png

 

更完善的写法

 

image.png

 

建议方案

 

image.png

 

 

 

 

案例2判断列表为空

 

现象描述

 

image.png

 

建议方案

 

image.png

 

主要收益

 

函数式编程,业务代码减少,逻辑一目了然;

通用工具函数,逻辑考虑周全,出问题概率低。

 

二、 拆分超大函数

 

当一个函数超过80行后,就属于超大函数,需要进行拆分。

 

案例1每一个代码块都可以封装为一个函数

 

每一个代码块必然有一个注释,用于解释这个代码块的功能。如果代码块前方有一行注释,就是在提醒你——可以将这段代码替换成一个函数,而且可以在注释的基础上给这个函数命名。如果函数有一个描述恰当的名字,就不需要去看内部代码究竟是如何实现的。

 

现象描述

 

image.png

 

建议方案

 

image.png

 

案例2每一个循环体都可以封装为一个函数

 

现象描述

 

image.png 

 

 

 

建议方案

 

image.png

 

案例3每一个条件体都可以封装为一个函数

 

现象描述

 

image.png

 

 

建议方案

 

image.png

 

主要收益

 

函数越短小精悍,功能就越单一,往往生命周期较长;

一个函数越长,就越不容易理解和维护,维护人员不敢轻易修改;

在过长函数中,往往含有难以发现的重复代码。

 

接下篇:https://developer.aliyun.com/article/1226840?groupCode=java

相关文章
|
18天前
|
Java 索引
String字符串常用函数以及示例 JAVA基础
String字符串常用函数以及示例 JAVA基础
|
19天前
|
分布式计算 DataWorks Java
DataWorks操作报错合集之在使用MaxCompute的Java SDK创建函数时,出现找不到文件资源的情况,是BUG吗
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
31 0
|
19天前
|
JavaScript 前端开发 Java
Java Script中的函数原型是什么
Java Script中的函数原型是什么
12 0
|
19天前
|
算法 Java
「译文」Java 垃圾收集参考手册(四):Serial GC
「译文」Java 垃圾收集参考手册(四):Serial GC
|
18天前
|
NoSQL Dubbo Java
StringBoot编程式事务与声明式事务java工程师面试突击第一季
StringBoot编程式事务与声明式事务java工程师面试突击第一季
|
18天前
|
Java Kotlin
关于Java:public函数公开其public / * package * /’参数类型
关于Java:public函数公开其public / * package * /’参数类型
17 3
|
19天前
|
人工智能 Kubernetes Java
Java开发工程师如何紧跟技术前沿对于保持专业竞争力、提升工作效率以及适应行业发展?
【4月更文挑战第4天】Java开发工程师如何紧跟技术前沿对于保持专业竞争力、提升工作效率以及适应行业发展?
29 4
|
19天前
|
Java 数据库连接 API
Java 学习路线:基础知识、数据类型、条件语句、函数、循环、异常处理、数据结构、面向对象编程、包、文件和 API
Java 是一种广泛使用的、面向对象的编程语言,始于1995年,以其跨平台性、安全性和可靠性著称,应用于从移动设备到数据中心的各种场景。基础概念包括变量(如局部、实例和静态变量)、数据类型(原始和非原始)、条件语句(if、else、switch等)、函数、循环、异常处理、数据结构(如数组、链表)和面向对象编程(类、接口、继承等)。深入学习还包括包、内存管理、集合框架、序列化、网络套接字、泛型、流、JVM、垃圾回收和线程。构建工具如Gradle、Maven和Ant简化了开发流程,Web框架如Spring和Spring Boot支持Web应用开发。ORM工具如JPA、Hibernate处理对象与数
101 3
|
19天前
|
消息中间件 Dubbo Java
互联网 Java 工程师1000道面试题(485页)
互联网 Java 工程师1000道面试题(485页)
31 0
|
19天前
|
人工智能 监控 Java
招个Java工程师,却发现了一个宝藏平台
招个Java工程师,却发现了一个宝藏平台
30 0
招个Java工程师,却发现了一个宝藏平台