St.*_*rio 5 java dao interface
我正在阅读J. Bloch有效的Java,他说以下内容:
一旦界面发布并广泛实施,几乎不可能改变.
所以,现在考虑DAO模式的简单接口:
public interface UserDao{
public User getById(int id);
public Collection<User> getAll();
public boolean delete(int userId);
public boolean update(User u);
}
Run Code Online (Sandbox Code Playgroud)
这是我的Dao界面首次发布时的样子.到那时,我不得不向用户添加一些功能,以便通过它registration_date或类似的东西聚合所有用户.所以,我需要在DAO-interface中添加相应的方法声明并实现它.
此外,我现在无法想象 - 接口DAO可能或多或少是稳定的,因为添加一些新的DAO操作经常发生.
也许这是我的DAO设计灾难,或者界面几乎不适合DAOs?
我认为J. Bloch的句子是针对公共接口的,而不是针对你的DAO案例.
想想你创建一个公共API,让任何程序员都使用你的平台.如果要更改该接口,则需要程序员调整其代码,因此这将令人沮丧.
但是,如果您要为内部应用程序创建界面,则不会承担风险,并且可以根据需要改进界面.
显然,您必须考虑有多少类实现您的接口并承担修改的成本.
| 归档时间: |
|
| 查看次数: |
102 次 |
| 最近记录: |