iOS 用户角色最佳实践
iOS User Roles Best Practices
我正在构建一个应用程序,在该应用程序中,某些用户将比其他用户拥有更多的功能访问权限。这个概念是一些用户是 parents 而其他用户是 children,并且 parents 能够添加杂务,例如,而 children 则不能。我想知道实施此类设置的最佳做法是什么,包括:
1。 parents 和 children 我应该有单独的故事板和 VC 吗? parents 的某些页面以及其他屏幕上基本上应该存在一些按钮和功能。
2。执行此操作的最佳方法是在用户 class 中具有角色属性吗?
3。一般来说,对于在用户(比如一个家庭)之间共享信息的应用程序,最佳设计实践是什么?
如果有人碰巧有任何 Swift 此类示例代码,那么看看会很有帮助,因为我刚开始使用 iOS .
提前致谢。
一般来说,
1) 否。如果两个页面之间的视觉差异很小,您应该 hide/change 用户不应该看到的元素。如果用户需要特殊视图,只需在故事板中创建该视图并仅在适当时显示它。
2) 要执行上述操作,您可以在指示用户 "type" 的用户实体上有一个 属性,或者您可以有多个基于角色和 [=23] 的用户对象=] UI 个基于实体类型的元素。
3) 这是一个非常宽泛的问题,实际上取决于您应用的大小和复杂程度。
这一切都很笼统。有许多因素可以决定执行此操作的最佳方式,包括:从何处导入或创建用户、数据的敏感性、不同类型用户的数量或 'permission sets'.
tl;博士
我对同样问题的解决方案:
- 用户角色枚举
- 用户角色 属性 用户 class
- 当前用户单例
示例代码
enum UserRole {
case Admin
case FremiumUser
case PayingUser
}
struct User {
var name = "J. Doe"
var roles = [UserRole]()
}
class CurrentUser {
// Singleton pattern
static let sharedUser = CurrentUser()
private init() {}
var user = User()
}
讨论
我正在构建一个应用程序来分享您的挑战。 受装饰器模式的启发 and/or 面向协议的编程,我目前的想法是拥有一个用户角色枚举,由我的用户 class 上的 属性 持有,可通过全局单例 CurrentUser 对象访问。每个屏幕(视图控制器、视图等)都可以检查当前用户的角色,并做出适当的反应。
想法?
我正在构建一个应用程序,在该应用程序中,某些用户将比其他用户拥有更多的功能访问权限。这个概念是一些用户是 parents 而其他用户是 children,并且 parents 能够添加杂务,例如,而 children 则不能。我想知道实施此类设置的最佳做法是什么,包括:
1。 parents 和 children 我应该有单独的故事板和 VC 吗? parents 的某些页面以及其他屏幕上基本上应该存在一些按钮和功能。
2。执行此操作的最佳方法是在用户 class 中具有角色属性吗?
3。一般来说,对于在用户(比如一个家庭)之间共享信息的应用程序,最佳设计实践是什么?
如果有人碰巧有任何 Swift 此类示例代码,那么看看会很有帮助,因为我刚开始使用 iOS .
提前致谢。
一般来说,
1) 否。如果两个页面之间的视觉差异很小,您应该 hide/change 用户不应该看到的元素。如果用户需要特殊视图,只需在故事板中创建该视图并仅在适当时显示它。
2) 要执行上述操作,您可以在指示用户 "type" 的用户实体上有一个 属性,或者您可以有多个基于角色和 [=23] 的用户对象=] UI 个基于实体类型的元素。
3) 这是一个非常宽泛的问题,实际上取决于您应用的大小和复杂程度。
这一切都很笼统。有许多因素可以决定执行此操作的最佳方式,包括:从何处导入或创建用户、数据的敏感性、不同类型用户的数量或 'permission sets'.
tl;博士
我对同样问题的解决方案:
- 用户角色枚举
- 用户角色 属性 用户 class
- 当前用户单例
示例代码
enum UserRole {
case Admin
case FremiumUser
case PayingUser
}
struct User {
var name = "J. Doe"
var roles = [UserRole]()
}
class CurrentUser {
// Singleton pattern
static let sharedUser = CurrentUser()
private init() {}
var user = User()
}
讨论
我正在构建一个应用程序来分享您的挑战。 受装饰器模式的启发 and/or 面向协议的编程,我目前的想法是拥有一个用户角色枚举,由我的用户 class 上的 属性 持有,可通过全局单例 CurrentUser 对象访问。每个屏幕(视图控制器、视图等)都可以检查当前用户的角色,并做出适当的反应。
想法?