0

我有一个包含 x 个字符串的系统。这些字符串基于某些逻辑显示在 UI 中。例如,字符串数字 1 仅应显示当前时间已超过中午,字符串 3 仅显示随机生成的 0-1 之间的数字小于 0.5。

对此进行建模的最佳方法是什么?

逻辑是否应该只在代码中并通过某种类型或 ID 链接到字符串?

逻辑是否应该与字符串一起存储?

注意以上是人们开始质疑我的逻辑之前的理论示例。

4

1 回答 1

1

通常最好将资源(例如字符串)与逻辑分开。因此,通过 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]
于 2013-06-19T10:22:50.180 回答