s******n 发帖数: 189 | 1 我是zhaoce的粉丝。大侠在http://www.mitbbs.com/article/JobHunting/32571817_0.html 一文中强调
“ood多做点项目吧
尤其还在学校的话
有不少课作业就是分组做项目
多选这种课
然后语言的话坚决用java
因为java是不得不oop
其它语言都有很多其它的paradigm
有时候图简单图轻松就会用其它的p
而且其它的p对于这种小游戏
它实现起来也不是那么困难,有些还更简单”
ood的d代表design, oop的p代表programming. 那么ood和oop在概念上有什么区别?
所谓OO题是不是关于ood或者oop的?
谢谢! |
|
a**********0 发帖数: 84 | 2 算法 coding的话,可以看leetcode,我面试的时候被问到OOD(设计个游戏啊什么之类
的)都傻眼了,觉得应该恶补下OOD,请问OOD有什么好的参考资料么?就是有实际例子
然后具体分析的那种 |
|
C*Y 发帖数: 736 | 3 Strong OOD skill ...
怎么才算strong?OOD这个东西能复习吗?有经典书籍吗? |
|
p****m 发帖数: 59 | 4 一直看到版上大家碰到OOD的问题
请问有没有什么rules of thumb
还有什么OOD的书籍比较推荐 多谢 |
|
f**********t 发帖数: 1001 | 5 感觉OOD好难。我目前的方法是看那些career cup上card, jigsaw的例子,以及看书
里面的factory, singleton。感觉career cup上那些例子没怎么用到factory等模
式啊。
面试回答时要不要讲了自己的方法之后提出这是factory,或这是singleton?还是
factory这些只是参考,面试时不一定非要用这么难?
快被OOD搞死了…………
多谢大家@@@ |
|
c******t 发帖数: 391 | 6 帮顶,我也答不好OOD,是不是自己简单画一个UML会帮助理解一点?
记得看到一篇文章里面写的OOD四大原则就是找出entity, 分析每个entity对应method
, 设计子类继承,以及如果collaboration。
请指正:) |
|
s*****n 发帖数: 5488 | 7 面试官:现在,你要做一个app,读入一个文件名,该文件可以是xml、excel表格、
blah blah(他一共举了四种不同的文件名),然后把它显示在一个窗口里。画出你需
要的模块来。
我:好的,我需要一个parse文件的模块,一个显示文件的模块……
面试官:假设这些你都已经有了。你有了四个API,可以分别读入并且parse我说的这四
种文件,你也有了一个API可以用来显示被parse好的文件。
看一个很适合电面的OOD例子。很小很具体。
如果你知道用polymorphism. good enough.
如果你知道在加上一个simple factory来最小化client side changes. almost
correct.
面管想扩展的话,还可以很多分支可以问。
而题目SVN这个问题,居然有人考虑到数据库这种实现层面的问题了。估计100个人有
100个回答方法。你说到底面试这人是知道还是不知道OOD呢?
A家就爱问这种傻比问题感觉还很好。类似的例子还有那个正则表达式查电话的问题。
人家不是不会,而是误解了你要问的问题。 |
|
d****r 发帖数: 80 | 8 OOD有什么好的总结贴吗?最近版上很少有讨论OOD的。前几天发帖问过,没人回。 |
|
f*********m 发帖数: 726 | 9 看到版上讨论过不少OOD方面的资料,比如design pattern等,不过感觉是不是和实际
面试相差比较远?而且真正把书上的理论和面试题目结合还是需要不少实际经验的。往
往面试需要比较灵活地应用这些pattern,非一日之功啊。
所以想请问各位,有没有对于面试针对性比较强的OOD资料。个人感觉150上的比较实用
,但是没有多少总结。
请各位指点,谢谢。祝大家早日拿到理想offer。 |
|
j**********3 发帖数: 3211 | 10 OOD最近都考了什么题?我咋最近没被问过ood? |
|
h********w 发帖数: 128 | 11 如题,我是国内已经工作了几年的码农,最近在美国找工作,遇到OOD设计型的题目屡
屡受挫.
真心求教大家,有没有什么好的OOD刷题专用文档或者资源? |
|
a******g 发帖数: 13519 | 12 你的家庭作业?手机上草草看了一遍。既然考OOD,没看到一个接口,差评!不说DI,
IOC这些烂大街的玩意了,你至少得来个工厂模式吧。我感觉Timer跟OOD实在关系不大
,就是一个流程控制的问题。
:差不多就这些,但你要实现相应的timer功能
: |
|
b***y 发帖数: 2799 | 13 面试中让用OOD方法设计一个系统,比如说电梯。是不是应该请把系统需求说清楚,比
如说电梯响应请求的策略,是先来先服务,还是就近服务。我觉得用户应该提供策略,
programmer根据用户的要求设计软件系统。
而面试的时候,interviewer往往说的很笼统,就说让你设计一个电梯系统,而设计一
个实际系统是要考虑很多问题,不仅仅是软件设计的问题,interviewer是不是应该提
供准确的需求呢。
另一个例子,设计一个PARKING LOT。我们平常的PARKINGLOT都是自己进去停车,然后
出门时候付钱,比较简单,我一开始按这个思路设计,但跟interviewer说的时候,他
问我怎么分配parking spaces,他认为系统应该自动分配,而不是司机自己进去找。这
样我就要从新设计,耽误了时间,打乱了思路。是不是应该一开始就和INTERVIEWER敲
定系统是怎么工作的,然后在OOD设计。
大家都是怎么做的? |
|
C*Y 发帖数: 736 | 14 OOD 不一定需要能套进某种design pattern吧?careercup的书上有少量题目,但没有
系统的指导 |
|
s********l 发帖数: 998 | 15 我土问一下 pre-compile是怎么个test?
我没google到~
我知道c++里面friend是一个class可以随便用另外一个class里的内容,包括private
那OOD里面 什么时候用friend比较好呢? |
|
|
s********y 发帖数: 161 | 17 推荐 Design Patterns: Elements of Reusable Object-Oriented Software
OOD题都比较开放,很多时候用不上patterns。做好需求分析,make sense就好。面试
官主要看你的思考沟通过程。
可以练习如下topics。网上搜搜也能找到一些solutions。
Poker
Chess
Restaurant reservation
Hotel reservation
Car rental
Air traffic control
Elevator and control
Traffic lights
Coffee machine
Parking lots |
|
f*******4 发帖数: 1401 | 18 OOD说容易容易 可以随便吹 但是实际工程上是很难的一件事情 |
|
r******n 发帖数: 170 | 19 今天又被一道这种题目弄郁闷了,那人叫我OOD设计一个version control system,比如
就是SVN,怎么design? 我大致说job是个class, file是个class,然后不同的文件格式
可以subclass file, job里面可以包含check-in, check-out等methods;file里面
property有content,version#,有个compare method等。然后,他问如何实现svn
status功能,我就说可以把两个file vector中的file进行比较,返回有修改的file
list。似乎还问了如何实现branch功能,总之最后似乎电面的人十分不满意我的答案,
直接说“that's not what I expect to hear. wish you good luck in job hunting,
blablabla” ......
的确不太会答这类题。因为这类题目太含糊,店面时,基本都是说完题目,我基本也得
马上回答。所以我一般都是挑出几个最明显的component,说这几个东西要成为class,
大致说下可以... 阅读全帖 |
|
s*****n 发帖数: 5488 | 20 傻逼公司出的傻逼题目。没有OOA这么大的系统怎么做OOD? 而且电门里面怎么好交流?
hunting, |
|
m*********2 发帖数: 701 | 21 “估计100个人有
100个回答方法。你说到底面试这人是知道还是不知道OOD呢”
他只是想知道你的想法
there is no right or wrong answer.
I hope all interview questions are like this. |
|
t******e 发帖数: 98 | 22 这个总结很好,要赞!设计类的面试问题对于有工作经验的申请者非常重要,很多时候
是区分
senior/junior level的分水岭。我也来分享一下最近碰到的A公司设计面试题。题目就
是设计类
似于ebay的bid功能。我感觉在解答这类问题之前一定要和面试官好好沟通,摸清楚对
方想要考察的
是哪个层面,最好按照top down design 的思路,首先保证大的方向是对方想要的。比
如这个问
题我一上来就按照OOD的思路列出backend部分需要的模块,以及各个object之间的
interaction,有了对象操作的定义如何设计文件存储结构等等。但是讲了一半发现面
试官想要的
其实是整体architecture的设计,类似于multiple tier system design,而不是只见树
木不
见森林的ADT描述。面试的时候碰到这类设计问题一定要问清楚specification和use
cases,否
则答非所问会给对方留下很不好的印象。但是话说回来,这类问题就像是高考中的作文
主观性太强,
一方面面试者需要有很好的积累,另一方面面试官也应该有很好的修养,懂得如何分别
对待面试者... 阅读全帖 |
|
f****4 发帖数: 1359 | 23 Agile处理需求变更,快速原型法都是非常强大——只要是客户,都会喜欢的
关于OOA和OOD还有一点,可能大家都没注意到的是:这问题问的人是一个什么角色
如果那个人是搞系统架构的,你要回答的几乎就是high level design的东西,具体实
现环节,可以大胆假设已经有相关模块了。需要注意的是,这个时候系统功能会显的更
重要。这里不但是现有功能还要对可预测的新政功能留下支持的余地。
如果那人是个project leader,他会更关心detail design的东西。也就是说,上面那
些你假设已经有的东西,这里可能会对某一些要求你进行设计。
如果那人是个Sr Engineer,他会更关心implementation design,包括函数接口,变量
,数据库实现,并发等等
给个极端的例子,我给一个mananger问到“如何才能把你thesis做的东西,转换成产品
,并且卖给客户”。我的回答是从技术上说的。人家最后只说了一句话“我会告诉他,
我这产品能帮你省钱/赚钱” |
|
c*********t 发帖数: 2921 | 24 记得大概一两个月前,有位好心人在这里帖了他总结的所有常见的design问题或者是
OOD的问题,大概有几十个问题,可是那个帖子我现在搜索不到了。如果你存了,请在
帖出来。或者是你有这样的list,请共享。我有包子送。如果你有原帖,我也会给原帖
的作者发个包子。
谢谢! |
|
f**********t 发帖数: 1001 | 25 关于Amazon的OOD。需要画UML图么?设计需要详细到啥程度?(是否需要写出类及其函
数的代码?)设计完后是否需要考测试的case?
非常感谢^^ |
|
g*********e 发帖数: 14401 | 26 经过几个面试,发现这个是在是自己的弱项,不是cs科班出身,经验确实也不足。
我看了careercup书上的题目,发现还是挺有点东西在里面的,但Java我不大懂,很多
都略过去了。
问版上各位有什么好办法,能够短期内训练自己OOD的能力吗? |
|
y*******g 发帖数: 6599 | 27 careecup 150的design题目
head first design pattern 这个用java
其实学习java本身也是学习ood,算是learn from good design了 |
|
|
n*******w 发帖数: 687 | 29 一般interviewer会使用一些user cases来判断ood设计是不是work。
sewind这个就好很多。不是加代码的问题。
把position信息放到board里边,board是个二维数组。
每个格子可以放棋子。这样跟下棋直接对应起来了。
棋子弄个abstract类也行吧。
再跑一下那几个user cases就很容易通过了。 |
|
b**c 发帖数: 36 | 30 面对许多关于OOD的问题发现自己十分不COMFORTABLE, 例如如何设计RESTURANT ONLINE
RESERVATION系统,或PARKING LOT系统,等等.
有什么样的建议来提高这方面的能力吗?多谢了! |
|
d****o 发帖数: 1055 | 31 多谢,如果不用smart pointer呢?我觉得OOD问题不用那么深入吧。
我觉得用对象不太好,因为当你添加一个file进这个vector的时候,是创造了那个file
的副本。这样系统开销比较大。而且改变file的时候也不是改变原有的file,是改变了
副本。 |
|
D****3 发帖数: 611 | 32 再过36小时面试。所以别让我看什么head first design pattern什么的了.
大哥大姐 有没有迅速提升具体design案例处理的材料呢? 主要就是电梯问题,餐馆问
题,停车场问题,纸牌问题,订餐系统,飞机场。这些问题的几个有参考答案,剩下的
我就找不到了。大家有没有这些常见OOD问题的参考“答案”呢?
多谢大神们了!!! |
|
|
i******t 发帖数: 22541 | 34 flood fill为什么用DFS 而不是BFS? 求解 谢谢 |
|
l********5 发帖数: 230 | 35 我也想知道,,,每次面试面到ood总是答的一塌糊涂。。 |
|
n****r 发帖数: 471 | 36 平时写code都是用在research里面的,很简单,所以也就从来没考虑过OOD。
最近在集中突击,但是感觉还是很难。
想上来问下大家, 面试要是遇到了,要回答到什么程度。
比如说是给出主要的class, 给出api?
还是还要继续细说下class 之前是怎么 interact的?
还是要给出design pattern,比如最简单的系统类用singleton实现?
或者是要答道CC150 第八章课后题的水平?
关键是平时从来没写过实例, 光这么说感觉很心虚啊,怎么办? |
|
|
|
h*****u 发帖数: 669 | 39 在板上search过new grad的面经,貌似还没有人提到被问了ood |
|
j**********3 发帖数: 3211 | 40 感觉最近面经都是system design阿。。。很少看到ood的,难道过时了? |
|
P**********r 发帖数: 755 | 41 我new grad,狗家面过ood。其他也没面过system design。全是算法题 |
|
f*******y 发帖数: 267 | 42 怎么个准备法?
之前OOD的设计题几乎都悲剧了。
有什么书或者整理的面经最好了,谢谢! |
|
g****v 发帖数: 971 | 43 有没有OOD的summary帖?没有的话,就这个帖总结怎么样,大家群策群力啊!
比如design parking lot
比如design vending machine
Poker game.
还有别的么? |
|
|
c*******7 发帖数: 438 | 45 现在一般是个System Design就得往scale上扯,无非是先让你扯一下算法,估算一下流
量,然后开始扯架构
OOD就是单机的,容易多了 |
|
|
s******d 发帖数: 9806 | 47 这个是运气问题。碰上了就碰上了。我的建议是时间有限的情况下OOD和design
pattern都不用看。multithread看最基本的reader-writer和producer-consumer就可以
了。
design |
|
y*****e 发帖数: 712 | 48 我没写concurrency, multithreading这样的字眼耶。。。但写了OOD。。哎最烦各种各
样的design elevator这种题,还不如写code来的痛快 |
|
j********l 发帖数: 325 | 49 编程题到处都可以看到解答,但ood题除了自己临场发挥,准备的太少了。
大家准备些经典题,搞些经典模板试试 |
|
S*******C 发帖数: 822 | 50 还有一个OOD Design的题目,时长 20分钟 说是公司有好多conference room, 每个
room 有自己的capacity,available technologies, 让你设计一个reservation 系统.
这道题怎么做? |
|