gpt4 book ai didi

ruby-on-rails - 如何克服 Rails 中明显的 REST 与 DRY 困境?

转载 作者:搜寻专家 更新时间:2023-10-30 23:23:46 25 4
gpt4 key购买 nike

我正在开发的一个 Rails 应用程序包含二次方程式的示例。显然,这些都是一个共同的结构:ax^2 + bx + c = 0。

我不想存储其中的每一个示例。我宁愿从模板生成它们。存储此结构的数百个可能版本似乎非常浪费且不干燥。

另一方面,如果我生成它们,我将无法像它们只是多个数据库对象那样可靠地再次访问它们。

我确信一定有办法克服这个问题,但我仍在学习 Rails,显然我没有掌握这里的某些东西。谢谢。

最佳答案

答案是“视情况而定”。如果你只打算做二次方程的例子,那么你可以只存储 a、b 和 c。如果您认为您要计算其他类型的方程式,请存储整个方程式。

真正不应该考虑的是,从浪费磁盘空间的意义上说,存储完整方程是一种“浪费”。除非您要存储数百万个这样的东西,否则不要担心。磁盘很便宜。

其他观点是 YAGNI(Ya Ain't Gonna Need It),它会说根据您现在的情况编写代码,二次方程,不要担心泛化它。如果需要,您可以稍后重构代码和数据。

另一种看待它的方式是 KISS(保持简单,愚蠢)。最简单的事情可能是只存储完整的方程式。这使得检索方程式成为一个简单的数据库提取,不需要代码来生成方程式。

就个人而言,假设您没有做大量此类事情,在这种情况下我更喜欢 KISS。我不相信该系统只会用于二次方程。你可以做的是让系统处理任何方程,但让输入形式采用 a、b 和 c,并将其转换为二次方程。如果您以后需要其他方程类型,更改输入逻辑比更改数据结构简单得多。

关于ruby-on-rails - 如何克服 Rails 中明显的 REST 与 DRY 困境?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2563624/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com