zoukankan      html  css  js  c++  java
  • 抢票设计

      刚过的这周,慢慢恢复自己写代码的能力,当然,重要的是能够做单元测试和OOD和OOP的能力。

      尽管需求和接口有很多的设计缺陷,但是我扔可以设计有一个相对扩展性的代码。

      而且,对于Web服务的调用也更加地熟练:1)直接添加引用;2)勾选是否生成异步方法等选项;3)设定好命名空间,点击确定。4)对于以DataTable作为Web服务接口的设计来说,已经跟不上时代的潮流了,但也可以容忍,自己重新顶一个领域模型接口即可。

      爬虫的那个公共模块,也一直在改造与完善,想想当初我抽象出一个IPostString的接口,一个string GetConstructString(string htmlSource)的方法,但是很迷惑,不知道怎么传递参数,以致于每次都返回一个拼了一半的字符串,然后再继续拼。

        /// <summary>
        /// 回发的字符串
        /// </summary>
        public interface IPostString
        {
            string GetConstructPostString(string source);
        }

      当然,我那天顺手添加了一段Attributes 之后,就完全不用担心拼的问题了,体会到设计与重构的甜头,当然,在有经验的高手看来,很幼稚,对我来说,必不可少。

        /// <summary>
        /// 回发的字符串
        /// </summary>
        public interface IPostString
        {
            string GetConstructPostString(string source);
            Dictionary<string, string> Attributes { get; set; }
        }

      第一次尝试使用异步调用,虽然以前都知道一个异步模型,但还没有使用过。这次练习,算是让我对异步变成有了整体的认识。网络好文

      顺便,还学习了桥模式和半同步办异步模式

      对应抢票和抢需求的过程,熟练掌握了线程池地使用以及Work Thread线程内读写UI的方法。

      认真地对待这些小问题,然后就慢慢地有了更多的收获,这是持久战的哲学,我坚信!

  • 相关阅读:
    GP持久对象共享规则
    工程添加文件提示错误" _OBJC_CLASS_$_***View"
    设置UIButton的文字显示位置、字体的大小、字体的颜色、加粗
    ios7 隐藏显示状态栏
    mongodb插入数据不能在vue显示
    MongoDB聚合类操作
    MongoDB基本操作
    Windows平台安装MongoDB步骤以及问题处理
    Power BI 通过输入数据新建表后重新进入编辑状态
    Oracle HR样例数据库建立
  • 原文地址:https://www.cnblogs.com/pengzhen/p/3576954.html
Copyright © 2011-2022 走看看