今天带大家简单、快速了解 OOD 面试。
OOD 与 System Design 的区别
很多同学分不清OOD和系统设计之间的区别。在这里先用一张图表简单阐明二者在面试中的区别。
OOD 面试 | System Design | |
面试者 |
应届毕业生,SDE I - | 有经验的mainstream者,SDE I + |
出题目的 | OOD常被当做考察面试者综合素质的标准 |
需要处理大量数据,提供 service 的部门 |
常见公司 | Amazon, Bloomberg, etc | Facebook, Google |
关键字 | Viability | Scalability |
例题 | Design Elevator System | Design Twitter |
OOD 面试有哪些类型题?
管理类面向对象设计
OOD for Management System
预定类面向对象设计
OOD for Reservation System
实物类面向对象设计
OOD for Real Life Object
游戏棋牌类面向对象设计
OOD for Games
OOD 面试题的解题套路有哪些?
S.O.L.I.D 准则是由 Robert C. Martin 提出的。应用到 OOD 面试题的解题中,可以有效帮助我们设计出一个高可行性的系统,并且是饿得整个系统更加容易维护和扩展(easy to maintain and extend)。
想要了解更多关于 S.O.L.I.D 准则及其实战应用,可以找到 Martin 的相关阐述,也可以参加《OOD面向对象专题班》免费试听课。
S - Single-responsiblity principle 单一责任原则
O - Open-closed principle 开发封闭原则
L - Liskov substitution principle 里氏替换原则
I - Interface segregation principle 接口分离原则
D - Dependency Inversion Principle 依赖反转原则
OOD 面试推荐阅读材料
下面给大家推荐一些经典的、高质量的OOD面试准备素材:
如果想要简单了解OOD,推荐《写给大家看的面向对象的编程书》
如果想要深入学习UML,推荐《UML的设计模式应用》
如果想要深入了解面向设计以及 design pattern,推荐《Head First Object-oriented Analysis and Design》和《Head First Design Pattern》两本书
如果想要练习OOD面试例题,推荐《Cracking the Code Interview》中的 OOD 专门章节
小白不知从哪里入手?
OOD 面试最大的难点在于,所有的面试题都没有标准答案。因此,小白们往往在准备的时候,多走弯路,浪费了很多宝贵的面试备战时间。
九章算法《OOD面向对象专题班》,由经验丰富的面试官梳理所有OOD面试题目,进行归类汇总,同时提供解题套路。
免费试听内容:
1. 什么是面向对象设计(OOD, Object Oriented Design)
2. OOD 面试中常见面试题总结、分类
3. 设计模式讲解 Design Pattern
4. 高频OOD面试题讲解 - Elevator Design
本周末免费试听时间:
美西时间6月09日周六 10:00-12:00 a.m
美东时间6月09日周六 13:00-15:00
北京时间6月10日周日 01:00-03:00 a.m
长按二维码,报名免费试听
回复“简历”,查看简历撰写指南,获取“简历模板”
回复“冷冻期”,查看北美各大IT企业冷冻期信息和注意事项
回复“Career”, 查看Caireer Fair 攻略 check list
回复“薪资”,查看北美各大IT企业New Grades Engineer 薪资水平;
回复“项目”,查看7-14天可以搞定的小项目推荐
回复“评分”,查看系统设计评分指南
回复“behavior”,查看behavior interview指南
回复“晋升”,查看Engineer晋升机制
九章算法 | 帮助更多中国人找到好工作
《面向对象设计专题班》
美西 6月9日 周六 10:00-12:00 a.m
北京 6月10日 周日 01:00-03:00 a.m
《硅谷求职算法集训营》
美西 6月11日 周一 07:00-09:00 p.m
北京 6月12日 周二 10:00-12:00 a.m
正在报名中!
报名登陆官网 www.jiuzhang.com