一些代码写法推荐
等号加空格#
$a=1; // 新手用
$a = 1; // 1年+工作经验都会变成这样
挺有趣的事实,通过看 我以前代码
& 同事以前代码
& 一些新手的代码
,
都会慢慢过渡加 空格
的。
变量重复#
一眼可以看出,code
变量出现两次。
let code = this.getCodeByArea(value);
if( isArea)
code = this.getAreaCode(value,check,type)
这样重写变量不香吗?
调用两次 this.getAreaCode
速度会慢些,
我只能说:慢个 0.1ms
重要吗?
(当然最优的是:是处理下参数 最后再调用函数)
不用 else#
写代码,我个人不用 else
的。
还有些人类迷惑行为
:
if( $res == "hello")
return true;
else
return false;
请问 else
有啥用
见过挺多这种 迷惑行为
。
拒绝使用数字做状态#
// 即使数据库有注释 但是看也麻烦 (我想只有新手才会用数字)
$order->status = 3;
// 好处: 1. ide可以点击跳转过去 2. 一眼看懂
$order->status = Order::STATUS_SUCCESS;
使用本地作用域代替 Where#
这和 [拒绝使用数字做状态]
有类似,都是为了更直观理解代码。
Where:
Address::Where('user_id',Auth::id())->get()
使用作用域:
模型添加
public function scopeCurrUser($query)
{
return $query->where('user_id', Auth::id());
}
调用:
Address::CurrUser()->get()
本地作用域优势:
- 复用 (建议创建个
模型基类
) - 直观
(作用域见: 局部作用)
模型可以考虑使用 query ()#
直接用#
query()#
区别#
query()
有ide
提示。query()
更快,因为他不会经过这两个魔术方法。(这点速度可以忽略 就一点点)
用异常替代错误的返回#
return#
异常#
异常优势#
在 子方法
或者说 在 任何方法
, 都可以 中止
后面的代码,然后运行异常的处理。
这是 return
无法做到的。
推荐#
可以看下这个: 重构 改善既有代码的设计 — 笔记
(虽然我没怎么仔细看过)
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: