我有一个包含 x 个字符串的系统。这些字符串基于某些逻辑显示在 UI 中。例如,字符串数字 1 仅应显示当前时间已超过中午,字符串 3 仅显示随机生成的 0-1 之间的数字小于 0.5。
对此进行建模的最佳方法是什么?
逻辑是否应该只在代码中并通过某种类型或 ID 链接到字符串?
逻辑是否应该与字符串一起存储?
注意以上是人们开始质疑我的逻辑之前的理论示例。
我有一个包含 x 个字符串的系统。这些字符串基于某些逻辑显示在 UI 中。例如,字符串数字 1 仅应显示当前时间已超过中午,字符串 3 仅显示随机生成的 0-1 之间的数字小于 0.5。
对此进行建模的最佳方法是什么?
逻辑是否应该只在代码中并通过某种类型或 ID 链接到字符串?
逻辑是否应该与字符串一起存储?
注意以上是人们开始质疑我的逻辑之前的理论示例。
通常最好将资源(例如字符串)与逻辑分开。因此,通过 ID 引用字符串是个好主意。
似乎您有一堆规则必须链接到字符串的显示。我会将这三个作为独立的实体:规则、字符串以及它们之间的链接。
Python中的插图,必须简化:
STRINGS = {
'morning': 'Good morning',
'afternoon': 'Good afternoon',
'luck': 'you must be lucky today',
}
# predicates
import datetime, random
def showMorning():
return datetime.datetime.now().hour < 12
def showAfternoon():
return datetime.datetime.now().hour >= 12
def showLuck():
return random.random() > 0.5
# interconnection
RULES = {
'morning': showMorning,
'afternoon': showAfternoon,
'luck': showLuck,
}
# usage
for string_id, predicate in RULES.items():
if predicate():
print STRINGS[string_id]