免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 7966 | 回复: 10
打印 上一主题 下一主题

关于软件设计思想 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-11-30 11:04 |只看该作者 |倒序浏览
最近去一些公司面试有感,经常被问到一些软件设计方面的问题
比如MS会问:假如让你设计IE,notepad你会怎么设计?
再比如某银行会问:银行系统大致是个什么样的?

关于各种软件的设计思想,估计总结起来也无外乎若干种常用的方式和技术(当然各有各的扩展).
希望大家可以畅所欲言,说说自己的设计经验,互相拓展在软件开发和设计上的思路.
无论是高质量的GUI程序,还是高性能网络服务器,抑或是分布式系统,都可以讨论一下.

论坛徽章:
0
2 [报告]
发表于 2007-11-30 17:46 |只看该作者

好问题!!

这个俺可回答不了!

听听大牛的回答!!!!楼下

论坛徽章:
0
3 [报告]
发表于 2007-11-30 19:55 |只看该作者
这些问题很唐突也。。设计取决于需求。。要是面试碰到了,如果之前没做过类似的,还真不好回答,只能瞎忽悠。

论坛徽章:
0
4 [报告]
发表于 2007-11-30 20:05 |只看该作者
过些日子也想去找工作了,LZ有什么经验可以分享一下么

论坛徽章:
0
5 [报告]
发表于 2007-11-30 22:50 |只看该作者
原帖由 baohuaihuai 于 2007-11-30 11:04 发表
最近去一些公司面试有感,经常被问到一些软件设计方面的问题
比如MS会问:假如让你设计IE,notepad你会怎么设计?
再比如某银行会问:银行系统大致是个什么样的?

关于各种软件的设计思想,估计总结起来也无外乎若 ...


这类问题一般都是大单位才会问的, 他们不假设你会在一个位置上做一辈子, 所以想看看你的潜力. 和智力题作用类似. 只是更结合软件开发的系统分析和设计罢了.
问起来也都是选择大家都经常遇到的系统, 也就是说, 若你平时留意的话, 对这些系统的需求, 功能都是有一些了解的.
回答起来, 无外乎几个方面:
    1. 开发过程, 如, waterfall, agile, RUP 等等, 用你熟悉的和认为好的.
    2. 需求: 大概的需求, 你要说清楚, 主要是核心的部分, features 或 variant 也该提一点
    3. Architecture: 如 分层, interpreter, filter, VM 等等 和几种的结合
   4. 若当时能想到, 就说一些关键的算法和数据结构, 不过这类问题他们似乎不太看重这部分回答
   5. 测试, 怎样测试, 在 architecture 部分就要适当考虑测试.
回答时, 最好选自己熟悉的, 因为他们会根据你的回答, 追问一些细节的问题, 以便弄清楚你是否是有基础还是刚读了新闻所以知道那几个词.

面试是为了区分应试者是 "狼" 还是  "羊", 所以不一定完全是知识或学术上正确的. 所以若想要这份工作, 就要尽力回答好, 而且一般都是没有标准答案的

论坛徽章:
0
6 [报告]
发表于 2007-11-30 22:54 |只看该作者
我觉得像怎么能发财一样。。。大家都想知道,可惜发财的人总是少数

论坛徽章:
0
7 [报告]
发表于 2007-12-01 01:24 |只看该作者
我感觉这类问题主要还是看看你到底设计过软件没有,设计过的到底是能套上的,没设计过的就该露馅了

论坛徽章:
0
8 [报告]
发表于 2007-12-01 08:02 |只看该作者
没有最好的设计,只有最合适的设计。
这种漫无边际的问题,要漫无边际的答,重点就是把问题推给提问的人。
差不多就是反问提问的人:我设计软件是按照实际需求来的,实际需求是怎么样的?

1,假如让你设计IE,notepad你会怎么设计?
我会想像一下我会怎么用。还会调查将来用的人怎么用。
设计就按照这些来。

2,再比如某银行会问:银行系统大致是个什么样的?
我没有做过银行业务,但是我面对过不少其他业务,总要面对新的业务。
我的经验是,详细调查需求,设计按照需求来。
我不喜欢大致这个词,不确切。凡事以实际调查为准。

论坛徽章:
0
9 [报告]
发表于 2007-12-01 15:56 |只看该作者
这个问题起点很高,大部分人回答不了!
。。。。。,难为那些面试的了。反正遇到这种公司,谦虚点好,不乱吹!

论坛徽章:
0
10 [报告]
发表于 2007-12-01 19:17 |只看该作者
原帖由 yuanchengjun 于 2007-12-1 08:02 发表
没有最好的设计,只有最合适的设计。
这种漫无边际的问题,要漫无边际的答,重点就是把问题推给提问的人。
差不多就是反问提问的人:我设计软件是按照实际需求来的,实际需求是怎么样的?

好像中国的程序员都很牛, 在北美混几年, 却不知谁在面试时敢这样态度的.
若我是面试官, 我会说, 我现在扮演一客户, 你来提问, 来获得需求.

1,假如让你设计IE,notepad你会怎么设计?
我会想像一下我会怎么用。还会调查将来用的人怎么用。
设计就按照这些来。

这问题要求一般在5-20分钟内给出一个能表现你自己能力的设计, 像这样简单的回答, 这工作机会基本上是没了

2,再比如某银行会问:银行系统大致是个什么样的?
我没有做过银行业务,但是我面对过不少其他业务,总要面对新的业务。
我的经验是,详细调查需求,设计按照需求来。
我不喜欢大致这个词,不确切。凡事以实际调查为准。

面试官可能接着问: 若客户不能清晰的表达他们的需求, 你这样来调查?
若客户的需求变化比较快, 你怎么处理?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP