博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
排球计分程序(六)——接口的设计与实现
阅读量:4355 次
发布时间:2019-06-07

本文共 1953 字,大约阅读时间需要 6 分钟。

接下来,将进行接口的设计。这里包括数据访问层接口和业务逻辑层接口。在分层架构中,接口扮演着非常重要的角色,它不但直接决定了各层中的各个操作类需要实现何种操作,而且它明确了各个层次的职责。接口也是系统实现依赖注入机制不可缺少的部分。

本项目的接口设计将按如下顺序进行:
1.首先由前文的需求分析,列出主要的UI部分。
2.分析各个UI需要什么业务逻辑支持,从而确定业务逻辑层接口。
3.分析业务逻辑层接口需要何种数据访问操作,从而确定数据访问层接口。

 IAnnounceService接口:

用于发布公告时

using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using 排球队伍公告信息.Models.Entities;

namespace 排球队伍公告信息.Models.Interfaces

{
    public interface IAnnounceService
    {
        /// <summary>
        /// 发布公告
        /// </summary>
        /// <param name="announce"></param>
        void Release(AnnounceInfo announce);

        /// <summary>

        /// 修改公告信息
        /// </summary>
        /// <param name="announce"></param>
        void Notify(AnnounceInfo announce);

        /// <summary>

        /// 删除公告
        /// </summary>
        /// <param name="id"></param>
        void Remove(int id);

        /// <summary>

        /// 取得公告详细内容
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        AnnounceInfo GetDetail(int id);

        /// <summary>

        /// 取得某个分类下的所有公告
        /// </summary>
        /// <param name="categoryId"></param>
        /// <returns></returns>
        List<AnnounceInfo> GetByCategory(CategoryInfo category);
    }
}

ICategoryService接口

用于公告发布后

using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using 排球队伍公告信息.Models.Entities;

namespace 排球队伍公告信息.Models.Interfaces

{
     public interface ICategoryService
    {
        /// <summary>
        /// 添加分类
        /// </summary>
        /// <param name="category"></param>
        void Add(CategoryInfo category);

        /// <summary>

        /// 修改分类名称
        /// </summary>
        /// <param name="id"></param>
        /// <param name="name"></param>
        void ChangeName(int id,string name);

        /// <summary>

        /// 删除分类
        /// </summary>
        /// <param name="id"></param>
        void Remove(int id);

        /// <summary>

        /// 取得某个分类详细信息
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        CategoryInfo GetDetail(int id);

        /// <summary>

        /// 取得所有分类
        /// </summary>
        /// <returns></returns>
        List<CategoryInfo> GetAll();
    }

}

 
 
 

转载于:https://www.cnblogs.com/sdl1305702018/p/7063884.html

你可能感兴趣的文章
Leetcode:Unique Binary Search Trees
查看>>
D3.js 绘制散点图
查看>>
HTML—链接
查看>>
将进程设置为守护进程
查看>>
用连接池提高Servlet访问数据库的效率
查看>>
luogu P1494 [国家集训队]小Z的袜子 ( 普 通 )
查看>>
树的数据结构
查看>>
MyEclipse导入Color Theme
查看>>
SQL Server2012完全备份、差异备份、事务日志备份和还原操作
查看>>
Flash动画播放
查看>>
springmvc+mybatis+dubbo+zookeeper 分布式架构
查看>>
HDUOJ-----Computer Transformation
查看>>
HDUOJ-----2838Cow Sorting(组合树状数组)
查看>>
自定义控件之---抽屉式弹窗控件.
查看>>
一款纯css3实现的机器人看书动画效果
查看>>
加班与效率
查看>>
轻量级Modal模态框插件cta.js
查看>>
MyEclipse下SpringBoot+JSP整合过程及踩坑
查看>>
重定向和管道
查看>>
实验五
查看>>