18. 代码重构实践

file

代码重构的两个技巧

可能看到这里的时候,你已经发现了一些问题,比如我们的接口 getWeather ,它一个接口干了两件事情:

  • 获取实时天气;
  • 获取天气预报。

虽然这么设计没啥问题,但是我们还是希望我们的作品更加优雅,就 $type 参数而言,base 代表实时,all 代表预报本来就不是特别合理的设计,但是接口如此我们也只能妥协,我们有两个方法来改善这个问题:

重新设计参数

我们不直接对用户暴露接口参数,重新设计合理方便阅读的参数对外使用,将设计的参数与接口参数作对应,比如,我们可以改成下面这样子:

src/Weather.php

    .
    .
    .
    public function getWeather($city, $type = 'live', $format = 'json')
    {
        $url = 'https://restapi.amap.com/v3/weather/weatherInfo';

        $types = [
            'live' => 'base',...

本文章首发在 LearnKu.com 网站上。

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:3
讨论数量: 1

幽弥狂
关于修改 live 和 forecast 的问题?
0 个点赞 | 2 个回复 | 问答