当前位置: 首页 > news >正文

石家庄网站维护企业邮箱账号

石家庄网站维护,企业邮箱账号,无线路由器做中继手机能连接但无法访问网站,上海企业网站建设目录 概念 需求 贫血模型 充血模型 总结 概念 贫血模型:一个类中只有属性或者成员变量,没有方法。充血模型:一个类中既有属性、成员变量,也有方法。 需求 定义一个类保存用户的用户名、密码、积分;用户必须具有…

目录

概念

需求

贫血模型

充血模型

总结


概念

  1. 贫血模型:一个类中只有属性或者成员变量,没有方法。
  2. 充血模型:一个类中既有属性、成员变量,也有方法。

需求

定义一个类保存用户的用户名、密码、积分;用户必须具有用户名;为了保证安全,密码采用密码的散列值保存;用户的初始积分为10分;每次登录成功奖励5个积分,每次登录失败扣3个积分。

贫血模型

优点:简单清晰,适合小型项目或简单业务逻辑。

缺点:业务逻辑分散,不利于复杂业务场景的维护。

class User
{public string UserName { get; set; }//用户名public string PasswordHash { get; set; }//密码的散列值public int Credit { get; set; }//积分
}
User u1 = new User(); u1.UserName = "ljy"; u1.Credit = 10;
u1.PasswordHash = HashHelper.Hash("123456");//计算密码的散列值
string pwd = Console.ReadLine();
if(HashHelper.Hash(pwd)==u1.PasswordHash)
{u1.Credit += 5;//登录增加5个积分Console.WriteLine("登录成功");
}
Else
{if (u1.Credit < 3)Console.WriteLine("积分不足,无法扣减");else{u1.Credit -= 3;//登录失败,则扣3个积分}Console.WriteLine("登录失败");
}

充血模型

符合“单一职责原则”

class User
{public string UserName { get; init; }        public int Credit { get; private set; }private string? passwordHash;public User(string userName){this.UserName = userName;this.Credit =10;}//修改密码public void ChangePassword(string newValue){if(newValue.Length<6){throw new Exception("密码太短");}this.passwordHash =Hash(newValue);}//比较密码散列值public bool CheckPassword(string password){string hash = HashHelper.Hash(password);return passwordHash== hash;}//扣除积分public void DeductCredits(int delta){if(delta<=0){throw new Exception("额度不能为负值");}this.Credit -= delta;}//增加积分public void AddCredits(int delta){this.Credit += delta;}
}
User u1 = new User("ljy");
u1.ChangePassword("123456");
string pwd = Console.ReadLine();
if (u1.CheckPassword(pwd))
{u1.AddCredits(5);Console.WriteLine("登录成功");
}
else
{u1.DeductCredits(5);Console.WriteLine("登录失败");
}

总结

贫血模型是站在开发人员的角度思考问题,充血模型是站在业务的角度思考问题。

http://www.zhongyajixie.com/news/58521.html

相关文章:

  • 网站结构怎么分析免费模式营销案例
  • 哪家公司做网站比较好网络营销课程个人总结范文
  • 建网站 南京关键词搜索排名推广
  • 网站开发公司开发过程seo技术有哪些
  • 怎么申请建立一个公司网站百度竞价返点开户
  • 企业做网站需要什么条件谷歌搜索引擎入口手机版
  • 网络搭建案例seo网站推广专员
  • 网站浏览图片怎么做的收录批量查询
  • 3d动画制作软件免费东莞网站建设优化
  • 怎样做网站连接毕节地seo
  • 创建网站的英语南京最大网站建设公司
  • 浙江网站设计公司电话电商网站分析
  • 万荣网站建设seo推广价格
  • 海南行指网站开发公司东莞百度快速排名
  • 怎么看自己的网站是用什么做的360优化大师安卓版下载
  • dhl做单网站seo云优化
  • 做618购物网站的总结网络运营推广
  • 软件技术开发合同范本seo是啥软件
  • wordpress次级菜单seo网站是什么意思
  • 软件设计和软件开发的区别安卓手机优化软件哪个好
  • 版面设计用什么软件深圳龙岗区优化防控措施
  • 如何做介绍监控公司的网站广州网站优化服务商
  • 网站文件夹怎么做bing搜索引擎下载
  • 做网站平面一套多少钱手机seo排名软件
  • 个人商城网站备案营销广告
  • 公司门户网站项目模版站长之家最新网站
  • 潍坊网站建设品牌谷歌建站
  • 做微网站需要域名吗个人网站的制作模板
  • 凡科建站登陆百度首页广告
  • 唐山网站建设拓软文营销是什么意思