问题标签 [helpermethods]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2569 浏览

java - 为什么我需要一个辅助方法来递归搜索二叉搜索树?

下面是实现二叉搜索树的代码:

为什么我需要递归辅助方法?为什么不能只使用“this.root”来执行正在发生的递归过程?此外,如果搞砸正在调用此方法的对象的根属性是一个问题,那么辅助方法如何防止这种情况发生?它是否只是创建了一个与 this.root 属性分开的指针,因此不会弄乱正在调用该方法的对象的根属性?

抱歉,如果这个问题看起来不直接,但如果有人能告诉我幕后究竟发生了什么,我将不胜感激。

0 投票
2 回答
63 浏览

oop - 接口隔离原理及方便/辅助方法

接口隔离原则如何应用于便利/辅助方法?例如:

我想创建一个代表业务合作伙伴的界面。我需要的最低限度是一个 setter 和一个 getter 方法,它们可以设置或获取整个合作伙伴列表:

我还想要一个 contains() 方法来告诉我某个人是否包含在合作伙伴列表中。我认为这是一个帮助或便利方法,因为它所做的一切都是调用 getPartners() 然后检查给定的人是否在该列表中。

我对接口隔离原则的理解是我应该将我的 contains() 方法分离到一个单独的接口中,因为有人可能想要实现我的 Partners 接口而不为这个不必要的辅助方法提供实现。在我的示例中,这没什么大不了的,但是辅助方法的列表会很快变长(addPartner、addPartnerByID、addPartnerByUserid 等),所以这是一个实际问题。

我担心的是,我发现很难为一个接口选择一个名称来保存我的 contains() 方法,这听起来并不麻烦,而且我认为任何时候你在命名某些东西时遇到这么多麻烦,这是一个危险信号你的设计有问题。拥有一个名为 PartnersSupportingSetInclusionChecks 的接口似乎并不合适,拥有一个仅名为 PartnerHelperMethods 的接口似乎也不好。

如何将接口隔离原则应用于此类方法?

0 投票
2 回答
53 浏览

ruby-on-rails-4 - 检索多态、has_one 和范围关联的方法

嗨,这有点微不足道,但我一生都无法弄清楚在哪里进行调整。我有一个 LoanApplication 模型和一个像这样的传输模型:

怎么LoanApplication.first.loan给我以下错误信息

所有见解都受到赞赏。谢谢

0 投票
5 回答
133 浏览

ruby-on-rails - Helper Method detect post - comment from user

I'm trying to create a helper method that will display {user.name} has no submitted posts." on the profile show view of user if they haven't yet submitted any posts and display the number posts they have . currently on my show view i have <%= render @user.posts %> which displays nothing when there are 0 posts submitted.

the partial for post is :

ive tried :

on my user show view :

which im more than sure is wrong but i have no idea how to implement this method .

0 投票
2 回答
893 浏览

ruby-on-rails - 使用 link_to 选项作为可选项的 Rails 辅助方法

我正在尝试创建一个辅助方法,它可以为 link_to 方法提供可选参数。我的目的是为不同的情况创建一个辅助方法:

遵循代码:

这不好。link_to 方法无法识别 extra_settings 并引发错误。

有任何想法吗?谢谢!

0 投票
1 回答
1850 浏览

ruby-on-rails - 用 distance_of_time_in_words 显示剩余时间

所以我希望项目Items在 7 天后显示剩余,该项目将被删除。我试过了

但我得到的只是所有项目的“7 天”。任何人都可以简单地了解这个辅助方法是如何工作的吗?

0 投票
2 回答
228 浏览

java - Java中的对象正在打印出垃圾

我的程序是一个涉及对象使用的简单程序。没有错误,唯一的问题是我的程序打印出垃圾。在它询问用户姓名、年龄和性别之后。

下面是两组程序。第一个是人的物体或骨架。第二个是询问用户名年龄性别并打印出来的打印。

2)

我们正在学习基本对象,例如我们只学习了私有变量、构造函数、访问器、修改器和辅助方法。

0 投票
2 回答
1737 浏览

java - 递归方法查找字符串中大写字母的出现次数 - 使用辅助方法

我正在尝试创建一种递归方法来查找字符串中大写字母的出现次数。我的代码如下:

我得到错误:

0 投票
3 回答
408 浏览

c# - c#方法没有按预期工作通讯簿项目

我是 C# 新手,正在开发我的第一个项目 - 一个控制台应用程序。当地址簿中的条目已经存在时,我无法理解为什么我的代码不会返回 false。以下方法都是 AddressBook 类 CheckEntry()、AddEntry()、RemoveEntry() 的一部分。

好的,所以布尔方法 CheckEntry() 被另外两个方法使用 - AddEntry() 和 RemoveEntry() - 两者都希望在执行各自的职责之前验证用户条目是否存在。在 AddEntry() 中,它应该在添加另一个联系人之前查看联系人是否已经存在,如果存在则不应创建联系人(但它正在添加重复项)。RemoveEntry() 应该检查它是否存在并使用 CheckEntry() 中存储变量的更新值来删除当前联系人(但什么也不做)。我知道我可能要么遗漏了一些简单的东西,要么对整个过程进行了思考。我的假设是 checkEntry() 无法正常工作,因为与之相关的两个函数都存在故障。有人有想法么??让我知道是否需要进一步解释。

注意:我知道使用列表会更有效/更容易使用。我的目标是使用数组进行学习。从学习 Javascript 切换到 C# 有点挑战,我想确保在学习下一件事之前我正在学习每一件事。

这是我所有的代码。每个班级用“//--------”分隔,提前感谢您的帮助。

这是我想出的-经过测试的更改

现在我不能添加重复的名字,我可以删除条目。

0 投票
2 回答
215 浏览

ruby-on-rails - 创建仅用于一次用途的辅助方法是否有好处?

我注意到在 Rails 教程中,作者有时会制作只使用一次的辅助方法。这让我觉得很荒谬,但在学习 ActionCable 时,我注意到 DHH 在 2 年前对 ActionCable 的介绍中做了同样的事情。所以也许有一点我错过了。只是为了说明,这里是来自 DHH 的代码。

现在我只需编写类似这样的 perform 方法,并跳过辅助方法:

第一个结构比我的有什么好处吗?我只看到一个毫无意义的抽象。