面向对象写一个用户类,实现用户注册登录登出。有一种特殊用户是管理员,除了正常的用户功能外,还可以让某个用户登出也就是踢出,手写代码试试?主要考察类操作,题目还是比较基础的。
|
1
<script src="https://gist.github.com/jamcplusplus/746c2e28855f1b0e6b0dfefdda1d5f77.js"></script>
我是萌新,求指导) |
|
2
这种纯业务的东西和 python 面向对象基础有什么关系?
|
|
3
出这种题的面试官大概脑子有问题。
|
|
4
看到 2 楼 3 楼我就放心了。大部分人脑子还是正常的。。
|
|
shuizhengqiApr 12, 2018
6
知道你是遇到难题了,好了下一位
|
|
wizardforcelApr 12, 2018 via Android
9
@pmispig 当然有关系,管理员在业务系统里面是个字段,任何用继承来实现的人都是生搬硬套,得扣分。
|
|
binuxApr 12, 2018 via Android
10
@wizardforcel 权限系统是怎么设计的还两说呢,你怎么就知道管理员就是个字段了?
|
|
dychenyiApr 12, 2018
11
从设计模式上来看,绝对需要继承,再来个超级管理员怎么办? 你还是字段?
这题也就考了个继承,设计几个 group 类,guest-普通用户-管理员-超管 就行了 |
|
bookding0Apr 12, 2018
12
> 除了正常的用户功能外
看到这句我仿佛看见了之前某个产品经理的需求文档…… |
|
nullccApr 12, 2018
13
真要搞这种功能请写在 service 层
|
|
yuhr123Apr 12, 2018
14
让我们新手进来学习,分享的内容呢?
|
|
estApr 12, 2018
15
class User: def login(self):pass; def logout(self): pass
class Admin(User): def logout_other(self): pass 就这两行? |
|
laqowApr 12, 2018 via Android
16
新手感觉只是实现的话感觉不同用户之间只是权限差异,全部从 user 生成对象,参数就是权限就可以了,用继承增加复杂性也难扩展新权限。服务用户端分离的话没必要把用户信息一直存在内存里,接口搞太多更没意义了。
|
|
lihongjie0209Apr 12, 2018
17
|
|
dddd1919Apr 12, 2018
18
新手来骗代码完成工作,鉴定完毕
|
|
cxyfreedomApr 12, 2018 via iPhone
19
真要区分权限,正常业务不都是数据库字段层面考虑的吗 [说错轻喷。考继承的话,不如用 Foo Bar 之类的代替考考吧。
|
|
crb912Apr 12, 2018 via Android
20
用户类,初始化两个属性 ,
1.is_admin 是管理员,取 Ture,否则 false, 2.is_active,表明状态,登陆,即修改它为 True,登出改为 false 其它的,设置成方法。 说话,这种没脑子的题,有啥可学的? |
|
lihongjie0209Apr 12, 2018
21
@crb912 #20 增加一个超级管理角色怎么办
|
|
prolicApr 12, 2018 via Android
22
不知道你们是怎么实现的,反正我是给踢出接口加个鉴权,查下用户类型,不对就返回 error,用不到 oop 这么高级的东西
|
|
crb912Apr 12, 2018 via Android
23
@lihongjie0209 你让我想起了 Django 后端,超级管理员,管理员,用户,去年做过比这个还复杂的权限的项目。 如果只是这个题,把属性从 bool 值改成 int 算了,1,表示超管,2 是普通管理员,3 是用户。设置好权限,允许 1 分配 2 和 3,2 可以分配 3,3 什么也做不了,只能自己登入登出
|
|
LokiSharpApr 12, 2018
24
既然都说面向对象了,这题考的是继承啊,创建一个 User 类,实现 User 基本操作 然后 Admin User 类继承 User 类,另外实现 Admin 操作
|
|
northislandApr 13, 2018
25
我来组成题目
|
|
HopetreeApr 13, 2018
26
Django 的事情为什么要我自己写
|
|
HowToMakeLoveApr 13, 2018
27
建议参考一个 PHP 的 YII2 框架里的 UserIdentxxx 类
|