07 2015 档案

摘要:本节主要说明使用异步进行程序设计的优缺点及如何通过异步编程,使用传统方法BeginInvoke / EndInvoke来实现异步,使用async/await 创建异步方法和事件。通过异步编程创建具有快速响应和可伸缩性的应用程序。 阅读全文
posted @ 2015-07-30 09:15 yubinfeng 阅读(2128) 评论(9) 推荐(12) 编辑
摘要:上节介绍了线程同步中使用线程锁和线程通知的方式来处理资源共享问题,这些是多线程的基本原理。.NET 4.0以后对多线程的实现变得更简单了。本节主要讨论.NET4.0多线程的新特性——使用Task类创建多线程。 阅读全文
posted @ 2015-07-28 17:33 yubinfeng 阅读(1703) 评论(2) 推荐(8) 编辑
摘要:上节介绍了多线程的基本使用方法和基本应用示例,本节深入介绍.NET多线程中的高级应用。 主要有在线程资源共享中的线程安全和线程冲突的解决方案;多线程同步,使用线程锁和线程通知实现线程同步。 阅读全文
posted @ 2015-07-24 08:41 yubinfeng 阅读(2133) 评论(3) 推荐(13) 编辑
摘要:随着硬件和网络的高速发展,为多线程(Multithreading)处理并行任务,提供了有利条件。其实我们每时每刻都在享受多线程带来的便利,多核处理器多线程工作、Windows操作系统、Web服务器都在使用多线程工作。使用多线程直接提高了程序的执行效率,因此学习多线程对提高程序运行能力非常必要,本节主要介绍多线程原理及.NET中多线程在.NET面向对象程序设计中的应用。 阅读全文
posted @ 2015-07-22 09:33 yubinfeng 阅读(2997) 评论(4) 推荐(21) 编辑
摘要:缓存是一种以空间换取时间的技术,.NET中特别重要的缓布技术Cache.如何利用Cache提升程序性能是我们本节主要内容,通过示例介绍了Cache的创建和移除等的方法,介绍了缓存在工厂反射模式中的应用,最后整理一个缓存的通用类。 阅读全文
posted @ 2015-07-16 08:28 yubinfeng 阅读(3297) 评论(8) 推荐(19) 编辑
摘要:缓存(Cache)是一种用空间换时间的技术,在.NET程序设计中合理利用,可以极大的提高程序的运行效率。 本节将介绍如何利用缓存写出高效率的代码。 阅读全文
posted @ 2015-07-15 00:36 yubinfeng 阅读(3013) 评论(4) 推荐(9) 编辑
摘要:关于JSON序列化,不能不了解Json.net(Newtonsoft.Json)这款世界级的开源类库,除了拥有良好的性能之外,功能也是非常强大的。其可以对非公有字段或属性进行序列化,可以自定义序列化的日期格式,可以进行属性改名序列化等等很多强大而好用的功能。本节一一详细的用示例介绍。此外,对于不喜欢使用第三方类库的同学,会整理一个基于微软类库的通用Json类。 阅读全文
posted @ 2015-07-11 18:35 yubinfeng 阅读(2891) 评论(4) 推荐(10) 编辑
摘要:JSON:一种轻量级、跨平台的数据传输格式。详细介绍JSON的结构,在JS中的使用。重点说明JSON如何在.NET中通过两种方法快速实现序列化和反序列化。最后介绍在使用.NET序列化JSON过程中的注意事项。 阅读全文
posted @ 2015-07-10 20:21 yubinfeng 阅读(2474) 评论(3) 推荐(8) 编辑
摘要:本节主要介绍通过序列化接口IXmlSerializable实现XML序列化和反序列化,整理了XML基础操作及序列化的通用类(包括XML及节点的基础读写操作,XML到DataSet\DataTable互转换操作,XML序列化及反序列化通用方法等)。 阅读全文
posted @ 2015-07-10 03:07 yubinfeng 阅读(3826) 评论(1) 推荐(7) 编辑
摘要:本篇主要介绍XML序列化和反序列化。XML作为W3C标准数据传输格式,将XML对象化处理,认识和使用XML序列化类XmlSerializer,是.NET面向对象程序设计必须要掌握的知识。本节通过对博客园文章列表=>XML,XML=>博客园文章实体对象之间进行序列化和反序列化的示例一步一步介绍。 阅读全文
posted @ 2015-07-09 09:38 yubinfeng 阅读(2125) 评论(4) 推荐(7) 编辑
摘要:在.NET编程中,经常面向对象处理完以后要转换成另一种格式传输或存储,这种将对象转向其他数据格式的过程,即序列化(Serialization)。 与之相反的过程就是反序列化(Deserialization)。掌握和利用好序列化和反序列化的方法,对提高面向编程技术很有益处。 阅读全文
posted @ 2015-07-08 21:22 yubinfeng 阅读(3648) 评论(0) 推荐(11) 编辑
摘要:本节导读:虽然在.NET编程过程中,绝大多数内存垃圾回收由CLR(公共语言运行时)自动回收,但也有很多需要我们编码回收。掌握托管与非托管的基本知识,可以有效避免某些情况下导致的程序异常。1.什么是托管与非托管?托管资源:一般是指被CLR(公共语言运行时)控制的内存资源,这些资源由CLR来管理。可以认... 阅读全文
posted @ 2015-07-07 01:30 yubinfeng 阅读(2194) 评论(0) 推荐(13) 编辑
摘要:本节主要讨论了表达式树的定义和解析之后,我们知道了表达式树就是并非可执行代码,而是将表达式对象化后的数据结构。是时候来引用他解决问题。本节通过动态创建表达式树、执行表达式树及表达式树的调试的学习,最后通过一个动态查询博客园文章结束,使小伙伴们能熟练认识表达式树在动态查询上带来的便利。 阅读全文
posted @ 2015-07-06 13:10 yubinfeng 阅读(4403) 评论(11) 推荐(19) 编辑
摘要:[.net 面向对象程序设计进阶] (6) Lamda表达式(二) 表达式树快速入门 本节导读: 认识表达式树(Expression Tree),学习使用Lambda创建表达式树,解析表达式树。 学习表达式在程序设计中的优点:比如构造动态查询、动态构造表达式树完成未知对象属性访问,比反射的性能高出很 阅读全文
posted @ 2015-07-04 23:06 yubinfeng 阅读(2444) 评论(2) 推荐(16) 编辑
摘要:本节主要说明 Lambda表达式在创建委托中的应用;Lambda表达式在Linq查询中的应用;Lambda 语句在异步事件中的应用;Lambda 的两个特性:类型推理和外部变量引用。 阅读全文
posted @ 2015-07-03 19:07 yubinfeng 阅读(3546) 评论(1) 推荐(22) 编辑
摘要:[.net 面向对象程序设计进阶] (2) 正则表达式(三) 表达式助手 上面两节对正则表达式的使用及.NET下使用正则表达式作了详细说明,本节主要搜集整理了常用的正则表达式提供参考。 此外为了使用方便,编写了一个《正则表达式助手》方便测试正则表达式。 1.正则表达式助手 1.1 软件概述 软件名称 阅读全文
posted @ 2015-07-01 10:52 yubinfeng 阅读(5184) 评论(9) 推荐(30) 编辑