论坛首页 Java版 OO

讨论一个接口设计问题

浏览 8337 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
最后更新时间:2007-05-15
xly_971223 写道
阳光晒晒 写道

顺遍BS楼上与N多用书说话的教条主义者。。。。

在你没达到大师的高度之前 最好还是继承大师的思想
就像我们从小读书继承先人们的知识一样 难不成你自己创造文字 从结绳记事开始?
大概说的是:如果我没卖过XX出的书的话。。。
你所讨论的东西我无权与你讨论?
   
0 请登录后投票
最后更新时间:2007-05-14
dflgsdfgj 写道
具体解决问题可以到XX开发者世界看看,www.xxxx.com

为什么火星来的这么多呢,一定要被封了才舒服.
   
0 请登录后投票
最后更新时间:2007-05-14
...猛一看,还真不知道说的是什么.火星语,还真不好懂.
   
0 请登录后投票
最后更新时间:2007-05-15
阳光晒晒 写道
如果我用:第一种,用来隐藏实现
如果有变,为什么只能用一个类实现?不可以是多个?


顺遍BS楼上与N多用书说话的教条主义者。。。。


是该“天马行空”地讨论吗?连接口是干什么的都不清楚,还讨论个鸟。
白痴一群!
   
0 请登录后投票
最后更新时间:2007-05-14
讨论离主题越来越远了
   
0 请登录后投票
最后更新时间:2007-05-14
阳光晒晒 写道
lihy70 写道
阳光晒晒 写道
如果我用:第一种,用来隐藏实现
如果有变,为什么只能用一个类实现?不可以是多个?


顺遍BS楼上与N多用书说话的教条主义者。。。。


是该“天马行空”地讨论吗?连接口是干什么的都不清楚,还讨论个鸟。
白痴一群!


接口与现实应该是一对一的????恶寒。。。


谁说过接口与现实是一对一的?
唉,跟你们说不清楚,
   
0 请登录后投票
最后更新时间:2007-05-15
楼主说的问题不仅仅是接口的问题,而是如何设计一个合理API的普遍共性要求。这个问题的答案很简单:要不要由使用者说了算,而不是设计者。参考一个系统或者项目和客户的关系。一个设计合理的API是能够提供足够的灵活度,允许使用者能作调整或者扩展来完成目前其不能完成的功能。拿上面的例子来说:
  1.把一个字串写入文件
其对应接口或实现 则是:
  write(String content){
    ...
  }
考虑到客户不仅仅是需要将字串写到固定的一个文件,那么需要改为:
  write(String fileName,String content)
如果需要避免每次都打开文件,那么实际上需求变了,则需要把API重构,变为:
  open(String fileName)
  write(String content)
  close()
或者
   构造方法(String fileName)
   write(String content)
同时视是否有向下兼容需求而保留旧API:
   write(String fileName,String content)
   
0 请登录后投票
最后更新时间:2007-05-15
1.可配置(可调整,或者说有足够多的参数)
2.方便(参数多了就要提供默认值,简写API声明)
3.可扩展(这里没有3,4年痛苦经验估计很难写得出容易扩展的API)
   
0 请登录后投票
最后更新时间:2007-06-03
多种接口完全可以同时存在的呀,GOF有个模式就是专门讲这个的,是啥呢?
   
0 请登录后投票
最后更新时间:2007-06-19
dovecat 写道
http://www.javaeye.com/topic/7776
可以看看这个.
设计接口,可以结合1和2来进行.


同意,这样的情况我觉得可以在不同的层中解决不同的问题,比如MVC的话,V层必须得简洁,要不然一旦修改起来会很费功夫,而C层可以灵活一点,因为业务层逻辑比较复杂,需要提供很多单一的功能。
   
0 请登录后投票
论坛首页 Java版 OO

跳转论坛:
JavaEye推荐