W**********2 发帖数: 30 | 1 刚从脸家onsite回来, coding题全是leetcode 原题,刷好就行, 问了一道System
design 是 design facebook page manager app, 要求是可以在这个APP 上publish
和 取消 posts, 也要现实每个post有多少人看过。 没有太多App 开发经验 懵了。
求版上的大侠给指点指点。 多谢! | j**********3 发帖数: 3211 | | p**r 发帖数: 5853 | 3 我的设计,欢迎各路菜鸟膜拜,大神拍砖!打不还手,骂不还口。
model
Class Post
{
string postKey;
datetime postTime;
string postTitle;
...
metadata postMetadata;
Person person;
int currentStatus;//draft,live,offline...
}
Class Person
{
string personKey;
string FirstName;
string Lastname;
...
Metadata medatada
List post
}
Class Relationship_Post_Person
{
Person person;
Post post;
Operator operator;
datetime optime;
}
Class Operator
{
int opkey;
string opname;//view,publish,delete,hide,like,dislike....
}
controller
比如post就是add,默认状态draft
任何action,比如publish时候加log到relationship,并且改post当前状态
ui就不扯了,随便整,
注意点:
#1 所有request/response都用restful web service,无限scale
#2 model方面,如果是脸家的app,cache是必须的
relationship+post很多高频i/o可以用cache减轻负担
比如post view直接posted/count,key-value处理
#3 表现层,可以再拉多一些view-model出来,看面官脸色行事。
【在 W**********2 的大作中提到】 : 刚从脸家onsite回来, coding题全是leetcode 原题,刷好就行, 问了一道System : design 是 design facebook page manager app, 要求是可以在这个APP 上publish : 和 取消 posts, 也要现实每个post有多少人看过。 没有太多App 开发经验 懵了。 : 求版上的大侠给指点指点。 多谢!
| W**********2 发帖数: 30 | 4 大神别走, 我要抱你大腿啊
【在 p**r 的大作中提到】 : 我的设计,欢迎各路菜鸟膜拜,大神拍砖!打不还手,骂不还口。 : model : Class Post : { : string postKey; : datetime postTime; : string postTitle; : ... : metadata postMetadata; : Person person;
| j**********3 发帖数: 3211 | 5 你描述的详细点行吗?
【在 W**********2 的大作中提到】 : 大神别走, 我要抱你大腿啊
|
|