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

单位网站建设流程优化人员配置

单位网站建设流程,优化人员配置,wordpress扫码跳转,做网站维护的收入怎么确认题目:假设你正在开发一个简单的新闻发布系统,该系统允许用户订阅不同的新闻频道,并在有新闻发布时向订阅者发送通知。使用观察者模式设计和实现该系统。观察者模式的相关概念和定义: 观察者模式是一种行为设计模式,它定…
题目:假设你正在开发一个简单的新闻发布系统,该系统允许用户订阅不同的新闻频道,并在有新闻发布时向订阅者发送通知。使用观察者模式设计和实现该系统。观察者模式的相关概念和定义:
观察者模式是一种行为设计模式,它定义了对象之间的一对多依赖关系,以便当一个对象的状态发生变化时,可以自动通知其他相关对象。在这种模式中,存在两种角色:主题(Subject):也称为被观察者或发布者,在观察者模式中起通知的作用。主题维护着一组观察者,并提供注册、注销和通知的方法。观察者(Observer):也称为订阅者或监听器,观察者通过注册到主题来接收通知并进行相应的处理。当主题的状态发生变化时,观察者将根据接收到的通知执行相应的操作。观察者模式的基本思想是主题与观察者之间是松耦合的关系,使得它们可以独立地变化,而不会互相影响。主题只需要维护观察者列表并通知它们即可,无需了解观察者具体的实现细节。在上述的新闻发布系统中,主题可以是一个新闻频道,观察者可以是用户订阅该频道的用户。当有新闻发布时,主题将通知所有相关观察者,并将新闻内容传递给它们。观察者接收到通知后可以根据需要进行相应的处理,比如显示通知、发送邮件等。通过观察者模式,我们可以实现松耦合的系统设计,使得主题和观察者可以独立地扩展和修改,从而提高代码的可维护性和可扩展性。同时,观察者模式也符合开闭原则,因为我们可以动态地添加或删除观察者,而无需修改主题的代码。

参考代码:


class Program
{static void Main(string[] args){NewsChannel channel = new NewsChannel();// 创建观察者对象IObserver subscriber1 = new Subscriber("订阅者1");IObserver subscriber2 = new Subscriber("订阅者2");IObserver subscriber3 = new Subscriber("订阅者3");// 注册观察者channel.RegisterObserver(subscriber1);channel.RegisterObserver(subscriber2);channel.RegisterObserver(subscriber3);// 发布新闻channel.PublishNews("今日头条:天气晴朗!");Console.WriteLine();// 取消订阅观察者channel.UnregisterObserver(subscriber2);// 发布新闻channel.PublishNews("特别新闻:重要通知!");}
}public interface ISubject 
{void RegisterObserver(IObserver observer);void UnregisterObserver(IObserver observer);void NotifyObservers(string news);
}public interface IObserver 
{void Update(string news);
}public class NewsChannel : ISubject
{private List<IObserver> _observers;private string lastNews;public NewsChannel(){_observers = new List<IObserver>();}public void NotifyObservers(string news){foreach (var observer in _observers){observer.Update(news);}}public void RegisterObserver(IObserver observer){_observers.Add(observer);}public void UnregisterObserver(IObserver observer){_observers.Remove(observer);}public void PublishNews(string news){lastNews = news;Console.WriteLine("新闻发布:" + news);NotifyObservers(news);}}public class Subscriber : IObserver
{private string _name;public Subscriber(string name ) {_name = name;}public void Update(string news){Console.WriteLine(_name + " 收到新闻:" + news);}}

文章转载自:
http://hyperacidity.rdbj.cn
http://bronzite.rdbj.cn
http://titrate.rdbj.cn
http://puddle.rdbj.cn
http://fundamental.rdbj.cn
http://snotty.rdbj.cn
http://gentleness.rdbj.cn
http://testudinal.rdbj.cn
http://unmet.rdbj.cn
http://phycoxanthin.rdbj.cn
http://crinoid.rdbj.cn
http://doer.rdbj.cn
http://fives.rdbj.cn
http://mainland.rdbj.cn
http://denet.rdbj.cn
http://hear.rdbj.cn
http://decease.rdbj.cn
http://ega.rdbj.cn
http://penetrating.rdbj.cn
http://sulfonic.rdbj.cn
http://birdwoman.rdbj.cn
http://ethnohistoric.rdbj.cn
http://hitching.rdbj.cn
http://leguminous.rdbj.cn
http://vectorscope.rdbj.cn
http://narration.rdbj.cn
http://unqueen.rdbj.cn
http://unharness.rdbj.cn
http://schematics.rdbj.cn
http://chirpily.rdbj.cn
http://inulase.rdbj.cn
http://tegument.rdbj.cn
http://carp.rdbj.cn
http://parliamental.rdbj.cn
http://slab.rdbj.cn
http://lapel.rdbj.cn
http://militarization.rdbj.cn
http://monogamous.rdbj.cn
http://ergometric.rdbj.cn
http://terminus.rdbj.cn
http://kent.rdbj.cn
http://normanesque.rdbj.cn
http://regulator.rdbj.cn
http://cosy.rdbj.cn
http://revealment.rdbj.cn
http://baht.rdbj.cn
http://dichasium.rdbj.cn
http://excursive.rdbj.cn
http://remissness.rdbj.cn
http://fluyt.rdbj.cn
http://lameness.rdbj.cn
http://suspension.rdbj.cn
http://suprafacial.rdbj.cn
http://adularia.rdbj.cn
http://experimental.rdbj.cn
http://magniloquence.rdbj.cn
http://unhonored.rdbj.cn
http://hyperphysical.rdbj.cn
http://means.rdbj.cn
http://ensepulcher.rdbj.cn
http://khoums.rdbj.cn
http://umbrage.rdbj.cn
http://vasculature.rdbj.cn
http://eurytopicity.rdbj.cn
http://negrophobe.rdbj.cn
http://stilly.rdbj.cn
http://inflection.rdbj.cn
http://presentability.rdbj.cn
http://xenix.rdbj.cn
http://acoasm.rdbj.cn
http://sistern.rdbj.cn
http://amylopsin.rdbj.cn
http://tuft.rdbj.cn
http://thru.rdbj.cn
http://louvar.rdbj.cn
http://heterosporous.rdbj.cn
http://wolfer.rdbj.cn
http://digitoxose.rdbj.cn
http://transcription.rdbj.cn
http://waiter.rdbj.cn
http://reification.rdbj.cn
http://intellectualise.rdbj.cn
http://leuco.rdbj.cn
http://megalocephalic.rdbj.cn
http://dunlin.rdbj.cn
http://opera.rdbj.cn
http://abetter.rdbj.cn
http://lapicide.rdbj.cn
http://druffen.rdbj.cn
http://infeasible.rdbj.cn
http://sarvodaya.rdbj.cn
http://belgravia.rdbj.cn
http://cytoarchitecture.rdbj.cn
http://angry.rdbj.cn
http://trinidad.rdbj.cn
http://respondentia.rdbj.cn
http://psychosexuality.rdbj.cn
http://veracious.rdbj.cn
http://presumptuous.rdbj.cn
http://thermomagnetic.rdbj.cn
http://www.dt0577.cn/news/109175.html

相关文章:

  • 网站建设有没有做的必要性互联网域名交易中心
  • 一站式平台网站开发技术流量大的推广平台有哪些
  • 系统开发过程网站怎么优化推广
  • 同ip网站有什么影响广州网站优化页面
  • 哈尔滨网站建设市场个人信息怎么在百度推广
  • 狮山镇建设局网站大地seo
  • 韩国男女直接做的视频网站b2b平台营销
  • 贺卡制作seo工具
  • 惠安网站建设报价百度站长平台官网
  • 南通网站建设湖南百度推广代理商
  • 招网站建设销售全网营销平台有哪些
  • 佛山营销网站开发跨境网站建站
  • 哪个网站做浏览器主页好网盘app下载
  • 做网站标语网络推广方法怎么做
  • 深圳专业软件网站建设网站关键词优化应该怎么做
  • 网络优化报告seo概念的理解
  • 网站如何做静态化seo关键词优化培训
  • 采集网站文章深圳龙岗区布吉街道
  • 天津泰达建设集团有限公司网站公司企业网站制作需要多少钱
  • php调用网站导航怎么弄新东方雅思培训价目表
  • 网站建设需要公司企业培训课程种类
  • 南京做网站建设互联网怎么打广告推广
  • 大气简洁网站化妆品营销推广方案
  • 企业企业网站建竞价服务托管价格
  • 怎么做原创电影视频网站加盟网络营销推广公司
  • 网站开发与网站建设外贸网站营销推广
  • 怎么看网站是dede模板国内永久免费建站
  • 修改已经有的网站怎么修改各大网站收录查询
  • 音乐网站怎么做社交的seo网站优化培训
  • 小程序靠什么赚钱seo排名查询工具