概述
场景一
有时候我们会遇到一个方法就是占满了整个屏幕,其中各种if else
判断 ,for
循环嵌套,时不时来穿插着各种a b c
参数,让人看得实在是眼花缭乱。让后面维护的人望而却步,也实在的代码块后面继续增加,增加…当我们看着这样的代码时,庆幸的事不用我来维护,坑爹的事需要自己来改,心中早已一万个草尼玛飘过了。
场景二
当一些新手刚学习接触设计模式的时候,感觉就像看到了武功秘籍。想也没想就直接网上套,各种 工厂模式,策略模式,装饰模式等等,会显得更加臃肿,类过多。本来是简单的功能,会可能就会设计过度。
我们作为刚入门的Java菜鸟该如何避免呢
偶然看到Mark Seemann
写的一篇关于The 80/24 rule的博客,有很大的启发。里面提到的80/24
规则,说的是我们写的代码块 (每行80个字符以内,不超过24行) 还有更多的细节大家可以点击链接参考参考。在这样的规则约束下,就可以轻松的去掉一些代码的坏味道。
例如:
- 重复代码
- 过长的函数方法
- 过大的类
- 过长的参数列
- 等等
用小而美的代码块
小的代码块,小方法、小功能、小程序,用小而美的代码来点缀我们的软件。
如何来实现小而美的代码块有以下几点可以关注
- 每行字符数:<80
- 方法体行数:<24
- 方法依赖(对象或方法):<7
- 代码块中循环嵌套复杂度:❤️
优雅代码示例
public ActionResult Post(ReservationDto dto)
{
var validationMsg = Validator.Validate(dto);
if (validationMsg != "")
return BadRequest(validationMsg);
var reservation = Mapper.Map(dto);
var reservations = Repository.ReadReservations(reservation.Date);
var accepted = maîtreD.CanAccept(reservations, reservation);
if (!accepted)
return StatusCode(
StatusCodes.Status500InternalServerError,
"Couldn't accept.");
var id = Repository.Create(reservation);
return Ok(id);
}
-
不要出现和业务无关的参数
-
避免使用Map,Json这些复杂对象作为参数和结果
-
有明确的输入输出和方法名
-
编写能测试的函数
文章有帮助你,请关注微信公众号:肆意游离 有更多精彩等着你
最后
以上就是可爱小笼包为你收集整理的像这样写,Java菜鸟也能写出牛逼的代码的全部内容,希望文章能够帮你解决像这样写,Java菜鸟也能写出牛逼的代码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复