用过Java Springboot的应该都熟悉链式编程风格,这种写法方便代码阅读的同时,也让代码逻辑清晰,代码简洁。
在Delphi7及以前的版本里,我们很难实现这样的写法。例如拼接字符串,我们可能会这样写
var a: string;
a := 'begin';
a := a + '123';
a := a + 'end';
从Delphi 的XE版本开始后,提供了一个新特性Helper类,利用Helper类我们可以对特定的record或class做扩展。像上边的拼接字符,我们可以为string类型提供一个Helper类,用于简洁的实现字符串拼接,如下:
type
TStringAddHelper = record helper for string
public
function beginStr: string;
function endStr: string;
function addStr(str: string): string;
end;
function TStringAddHelper.addStr(str: string): string;
begin
result := self + str;
end;
function TStringAddHelper.beginStr: string;
begin
result := 'begin';
end;
function TStringAddHelper.endStr: string;
begin
result := 'end';
end;
然后我们再改造上边的拼接代码段,如下:
var a: string;
begin
a := a.beginStr
.addStr('123')
.addstr(a.endStr);
end;
这种写法是不是优雅简洁很多?
文章介绍了如何在Delphi中利用Helper类模拟JavaSpringboot的链式编程风格,通过示例展示了如何为字符串类型创建Helper类以简化字符串拼接,使得代码更加优雅和简洁。
240

被折叠的 条评论
为什么被折叠?



