技术文章

了解最新技术文章

当前位置:首页>技术文章>技术文章
全部 146 常见问题 7 技术文章 139

think cell博客:当订单很重要时

时间:2023-11-24   访问量:1040  标签: think cell,think-cell,标签,文本

上次,我谈到了单次调用函数的内联。事实上,在某些情况下,即使对于多次调用的函数,将函数内联到更大的函数中也是有益的。

假设您正在处理 think cell 图表上的更改。如果用户更改了颜色,您需要应用该颜色,并且可能必须反转文本以使其在可能更改的背景上保持清晰:

ApplyColor();InvertText();

如果用户更改了数据,您还需要将标签放置到新位置。文本的反转取决于其背景,而背景又取决于文本的位置。因此PlaceLabels必须遵循InvertText

ApplyDataChange();PlaceLabels();InvertText();

实际上,此类操作的顺序可能要长得多。它们的顺序经过精心设计,以便尊重所有依赖关系。在某些情况下,您可以跳过其中一些,但顺序应始终保持不变。

如果我们将操作拆分为单独的函数,则必须注意所有调用站点都遵守此顺序。它违反了DRY(Don’t Repeat Yourself)原则,我们必须在程序中的许多地方确保这个顺序。

解决方案是将所有操作按正确的顺序放入单个函数中,并传递一个或多个参数来控制实际运行的子集。如果操作不需要参数,则参数可以只是位掩码。如果这样做,则每个操作都可以由可选参数包控制,如果是null,则意味着跳过该操作。

当然,在 think cell,我们经历了几次以错误顺序调用函数的痛苦之后才学会了这种方法……


上一篇:think cell博客:始终内联单调用函数

下一篇:如何开发财务规划和分析仪表板

发表评论:

评论记录:

未查询到任何数据!

免费通话

24小时免费咨询

请输入您的联系电话,座机请加区号

免费通话

微信扫一扫

微信联系
返回顶部