ruby 单一责任原则违规
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 单一责任原则违规相关的知识,希望对你有一定的参考价值。
# This class violates single responsibilty principle
# since it handles 2 tasks i.e generating a report
# (generate_report) and sending a report (send_report)
class FinancialReportMailer
def initialize(transactions, account)
@transactions = transactions
@account = account
@report = ''
end
def generate_report!
@report = @transactions.map {
|t| "amount: #{t.amount} type: #{t.type} date: #{t.created_at}"
}.join("\n")
end
def send_report
Mailer.deliver(
from: 'reporter@example.com',
to: @account.email,
subject: 'your report',
body: @report
)
end
end
mailer = FinancialReportMailer.new(transactions, account)
mailer.generate_report!
mailer.send_report
以上是关于ruby 单一责任原则违规的主要内容,如果未能解决你的问题,请参考以下文章
软件设计原则---单一责任(职责)原则
单一责任原则是不是促进了逻辑分组之上的许多小类?
在这种情况下如何使用 java 尊重单一责任原则?
如何应用 SOLID 原则整理 React 代码之单一原则
如何应用 SOLID 原则整理 React 代码之单一原则
php WordPress和单一责任原则 - 来自https://carlalexander.ca/single-responsibility-principle-wordpress/