这是小弟在博客园的第一篇作品,不足之处,请批评。

今天在园子里面发现一篇文章超精简C#程序代码,看了之后很是震撼,花了好长时间基本看明白了。随后又有了一些新的想法。

最近一直在思考扩展方法的应用,与这篇文章中的想法一接合,可将代码进一步精简,并可增强可读性。先看代码(仅用了三个分号):

}

首先,看看这个扩展方法:

1    }

这个方法先让t做一件事action,然后返回自身,通过这个扩展可以把很多代码串起来,如:

        }

以上代码中,通过Do扩展将对form操作的多条语句串成一句。作为示例只串了5条,再串上更多也没问题。这样代码写起来精练清晰。

Do也可以夹杂上其它代码,但这样会影响代码清晰,如下:

        }

虽然也能执行,但看起来就累了。


明白了Do扩展 ,再来看看前面的代码,先去除一部分,看看整体结构:

    }

再来看看 Button 部分

            )

再就是生成并显示,是一个循环

1超精简C#程序代码改进-利用扩展方法简化代码增强可读性        while (f.Controls[1].Text == "stop" &&
2超精简C#程序代码改进-利用扩展方法简化代码增强可读性              (f.Controls[0as Label).Do(生成并显示).Do(l => Application.DoEvents()) != null //条件二
3超精简C#程序代码改进-利用扩展方法简化代码增强可读性              )
4{}

条件二永远为真 ,加在这里为了节省分号。条件二Do里面的 生成并显示如下:

)

这里用string.Join代替Aggregate, 显得清晰了一些。

使用Select((i,j)=>...)代替原文中Tag作为变量,也大大简化清晰了代码。

其它不多说了。


这篇文章主要目的是介绍扩展方法的一个应用:简化,清晰代码!


最后,谢谢Ivony...对我的启发很大。


本人系列文章《

相关文章:

  • 2021-10-13
  • 2022-01-05
  • 2021-06-10
  • 2021-07-29
  • 2022-02-23
  • 2022-02-07
  • 2021-06-21
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-10
  • 2022-12-23
  • 2022-12-23
  • 2021-10-01
相关资源
相似解决方案