posts - 47,  comments - 32,  trackbacks - 0
公告
  2017年7月19日
摘要: 今天是我看《编写高质量代码:改善C#程序的157个建议》第二遍的时候了,看完这本书的确是受益匪浅,学到了很多东西,也明白了很多道理。 里面的代码我每个都调试了一遍,有时候是有些出入的,可能是作者写的书比较早,使用的开发环境比较旧,也许是我的学习还不到家,今天在看建议17的时候,发现了一些小问题,不是阅读全文
posted @ 2017-07-19 15:50 PatrickLiu 阅读(1360) 评论(11) 编辑
  2017年7月17日
摘要: 今天这篇博文是我翻译的RabbitMQ的最后一篇文章了,介绍一下RabbitMQ的C#开发的接口。好了,言归正传吧。 Net/C# 客户端 API简介1、主要的命名空间,接口和类 定义核心的API的接口和类被定义在RabbitMQ.Client这个命名空间下面: 所以要想使用RabbitMQ的功能,阅读全文
posted @ 2017-07-17 11:48 PatrickLiu 阅读(570) 评论(0) 编辑
  2017年7月12日
摘要: 远程过程调用(Remote Proceddure call【RPC】)(本实例都是使用的Net的客户端,使用C#编写) 在第二个教程中,我们学习了如何使用工作队列在多个工作实例之间分配耗时的任务。 但是,如果我们需要在远程计算机上运行功能并等待结果怎么办? 那是一个不同的故事。 此模式通常称为远程过阅读全文
posted @ 2017-07-12 11:32 PatrickLiu 阅读(602) 评论(2) 编辑
  2017年7月11日
摘要: 云服务”现在已经快成了一个家喻户晓的词了。如果你不知道PaaS, IaaS 和SaaS的区别,那么也没啥,因为很多人确实不知道。 “云”其实是互联网的一个隐喻,“云计算”其实就是使用互联网来接入存储或者运行在远程服务器端的应用,数据,或者服务。 任何一个使用基于互联网的方法来计算,存储和开发的公司,阅读全文
posted @ 2017-07-11 17:10 PatrickLiu 阅读(42) 评论(0) 编辑
  2017年7月6日
摘要: (本实例都是使用的Net的客户端,使用C#编写),说明,中文方括号【】表示名词。 在上一个教程中,我们改进了我们的日志记录系统。 没有使用只能够进行虚拟广播的【Fanout】交换机,而是使用了【Direct】类型的交换机,这样做就可以让我们有可能选择性地接收日志。 虽然使用【Direct】类型的【消阅读全文
posted @ 2017-07-06 14:23 PatrickLiu 阅读(319) 评论(0) 编辑
  2017年7月5日
摘要: 今天有时间了,继续《编写高质量代码改善程序的157个建议》的阅读,当我阅读到建议87的时候,里面的一些代码示例和文中所说的不一致了,是不是我现在用的是NetFramework 4.0的缘故,已经把一些问题修复了,今天把问题写下来,告诉大家文中有些小问题需要修复一下。 WPF和WinForm窗体应用程阅读全文
posted @ 2017-07-05 11:00 PatrickLiu 阅读(66) 评论(0) 编辑
  2017年6月29日
摘要: (使用Net客户端)在上一个教程中,我们构建了一个简单的日志系统,我们能够向许多消息接受者广播发送日志消息。在本教程中,我们将为其添加一项功能 ,这个功能是我们将只订阅消息的一个子集成为可能。 例如,我们可以只将关键的错误消息输出到日志文件(以节省磁盘空间),同时仍然可以在控制台上打印所有日志消息。阅读全文
posted @ 2017-06-29 16:13 PatrickLiu 阅读(418) 评论(0) 编辑
摘要: 在多线程程序中,新创建的线程不能访问UI线程创建的窗口控件,如果需要访问窗口中的控件,有以下解决办法 1.可以在窗口构造函数中将CheckForIllegalCrossThreadCalls设置为 false 2.使用委托调用 声明委托: 使用委托在多线程中执行: 这就是多线程界面元素操作的2种解决阅读全文
posted @ 2017-06-29 15:18 PatrickLiu 阅读(25) 评论(0) 编辑
  2017年6月21日
摘要: (本教程是使用Net客户端,也就是针对微软技术平台的) 在前一个教程中,我们创建了一个工作队列。工作队列背后的假设是每个任务会被交付给一个【工人】。在这一部分我们将做一些完全不同的事情--我们将向多个【消费者】传递信息。这种模式被称为“发布/订阅”。 为了说明这种模式,我们将构建一个简单的日志系统。阅读全文
posted @ 2017-06-21 10:52 PatrickLiu 阅读(786) 评论(0) 编辑
  2017年6月15日
摘要: 最近有时间看点书了,把157个建议在重新看一遍,代码都调试一遍。当我看到第15个建议的时候有些出入,就记录下来,欢迎大家来探讨。 第十五条建议是,使用dynamic简化反射的使用,如果是针对这句话来讲,没问题,是正确的。dynamic的确可以简化反射的使用,但是从性能上来说是有条件的,可以根据自己情阅读全文
posted @ 2017-06-15 10:57 PatrickLiu 阅读(1453) 评论(3) 编辑