摘要: 转载自:http://www.cnblogs.com/shanlin/p/3954531.html WPF系列自然需要以一个实际项目为结束。这里分享一个博客园博客实现的一个项目,我觉得作为一个练手的项目非常合适。担心博主后期会删除什么,这里先备份在自己的博客里面分享给大家。 本文所有源码下载:T... 阅读全文
posted @ 2014-12-30 19:59 Learning hard 阅读(7452) 评论(10) 推荐(5) 编辑
摘要: 一、引言 在前面介绍了WPF一些核心的内容,其中包括WPF布局、依赖属性、路由事件、绑定、命令、资源样式和模板。然而,在WPF还衍生出了一种很好的编程框架,即WVVM,在Web端开发有MVC,在WPF客户端开发中有MVVM,其中VM就相当于MVC中C(Control)。在Web端,微软开发了Asp... 阅读全文
posted @ 2014-12-29 22:35 Learning hard 阅读(18432) 评论(13) 推荐(17) 编辑
摘要: 示例代码:TreeViewEx.zip原文地址:http://www.codeproject.com/Tips/673071/WPF-TreeView-with-WinForms-Style-FomatIntroductionWPF defaultTreeViewis very good, but ... 阅读全文
posted @ 2014-12-28 22:14 Learning hard 阅读(13918) 评论(1) 推荐(5) 编辑
摘要: 一、引言 模板从字面意思理解是“具有一定规格的样板"。在现实生活中,砖块都是方方正正的,那是因为制作砖块的模板是方方正正的,如果我们使模板为圆形的话,则制作出来的砖块就是圆形的,此时我们并不能说圆形的”砖块“不是砖块吧。因为形状只是它们的外观,其制作材料还是一样的。所以,模板可以理解为表现形式。W... 阅读全文
posted @ 2014-12-28 20:36 Learning hard 阅读(19892) 评论(9) 推荐(13) 编辑
摘要: 一、引言 WPF资源系统可以用来保存一些公有对象和样式,从而实现重用这些对象和样式的作用。而WPF样式是重用元素的格式的重要手段,可以理解样式就如CSS一样,尽管我们可以在每个控件中定义格式,但是如果多个控件都应用了多个格式的时候,我们就可以把这些格式封装成格式,然后在资源中定义这个格式,之前如果... 阅读全文
posted @ 2014-12-27 19:17 Learning hard 阅读(21156) 评论(8) 推荐(12) 编辑
摘要: 一、引言 WPF命令相对来说是一个崭新的概念,因为命令对于之前的WinForm根本没有实现这个概念,但是这并不影响我们学习WPF命令,因为设计模式中有命令模式,关于命令模式可以参考我设计模式的博文:http://www.cnblogs.com/zhili/p/CommandPattern.html... 阅读全文
posted @ 2014-12-23 22:47 Learning hard 阅读(16989) 评论(7) 推荐(12) 编辑
摘要: 一、引言 WPF绑定使得原本需要多行代码实现的功能,现在只需要简单的XAML代码就可以完成之前多行后台代码实现的功能。WPF绑定可以理解为一种关系,该关系告诉WPF从一个源对象提取一些信息,并将这些信息来设置目标对象的属性。目标属性总是依赖属性。然而,源对象可以是任何内容,可以是一个WPF元素、或... 阅读全文
posted @ 2014-12-20 02:08 Learning hard 阅读(20567) 评论(7) 推荐(14) 编辑
摘要: 一、引言 WPF除了创建了一个新的依赖属性系统之外,还用更高级的路由事件功能替换了普通的.NET事件。 路由事件是具有更强传播能力的事件——它可以在元素树上向上冒泡和向下隧道传播,并且沿着传播路径被事件处理程序处理。与依赖属性一样,可以使用传统的事件方式使用路由事件。尽管路由事件的使用方式与传统... 阅读全文
posted @ 2014-12-16 23:35 Learning hard 阅读(14678) 评论(5) 推荐(8) 编辑
摘要: 一、引言 感觉最近都颓废了,好久没有学习写博文了,出于负罪感,今天强烈逼迫自己开始更新WPF系列。尽管最近看到一篇WPF技术是否老矣的文章,但是还是不能阻止我系统学习WPF。今天继续分享WPF中一个最重要的知识点——依赖属性。二、依赖属性的全面解析 听到依赖属性,自然联想到C#中属性的概念。C#... 阅读全文
posted @ 2014-12-15 23:20 Learning hard 阅读(21513) 评论(7) 推荐(21) 编辑
摘要: 一、引言 关于WPF早在一年前就已经看过《深入浅出WPF》这本书,当时看完之后由于没有做笔记,以至于我现在又重新捡起来并记录下学习的过程,本系列将是一个WPF快速入门系列,主要介绍WPF中主要的几个不同的特性,如依赖属性、命令、路由事件等。 在正式介绍之前,我还想分享下为什么我又要重新捡起来WP... 阅读全文
posted @ 2014-11-25 23:18 Learning hard 阅读(50198) 评论(18) 推荐(25) 编辑
摘要: 引言 WCF是微软为了实现SOA的框架,它是对微乳之前多种分布式技术的继承和扩展,这些技术包括Enterprise Service、.NET Remoting、XML Web Service、MSMQ等。WCF推出的原因在于:微软想将不同的分布式技术整合起来,提供一个统一的编程模型,这样对于开发... 阅读全文
posted @ 2014-11-15 14:15 Learning hard 阅读(5809) 评论(6) 推荐(10) 编辑
摘要: 一、引言 要将Rest与.NET Framework 3.0配合使用,还需要构建基础架构的一些部件。在.NET Framework 3.5中,WCF在System.ServiceModel.Web组件中新增了编程模型和这些基础架构部件。 新编程模型有两个主要的新属性:WebGetAttribut... 阅读全文
posted @ 2014-11-13 23:06 Learning hard 阅读(4287) 评论(10) 推荐(7) 编辑
摘要: 一、引言 在前面的WCF服务中,它都要求服务与客户端两端都必须启动并且运行,从而实现彼此间的交互。然而,还有相当多的情况希望一个面向服务的应用中拥有离线交互的能力。WCF通过服务队列的方法来支持客户端和服务之间的离线工作,客户端将消息发送到一个队列中,再由服务对它们进行处理。下面让我们具体看看WC... 阅读全文
posted @ 2014-11-12 22:11 Learning hard 阅读(4154) 评论(6) 推荐(10) 编辑
摘要: 一、引言 好久没更新,总感觉自己欠了什么一样的,所以今天迫不及待地来更新了,因为后面还有好几个系列准备些,还有很多东西需要学习总结的。今天就来介绍下WCF对事务的支持。二、WCF事务详解2.1 事务概念与属性 首先,大家在学习数据库的时候就已经接触到事务这个概念了。所谓事务,它是一个操作序列,这... 阅读全文
posted @ 2014-11-11 23:33 Learning hard 阅读(4545) 评论(14) 推荐(4) 编辑
摘要: 一、引言 在上一篇文章中介绍了WCF对Session的支持,在这篇文章中将详细介绍WCF支持的操作。在WCF中,除了支持经典的请求/应答模式外,还提供了对单向操作、双向回调操作模式的支持,此外还有流操作的支持。接下来将详细介绍下这几种操作,并实现一个双向回调操作的例子。二、WCF操作详解2.1 请... 阅读全文
posted @ 2014-11-02 17:48 Learning hard 阅读(5529) 评论(4) 推荐(5) 编辑
摘要: 一、引言 由前面几篇博文我们知道,WCF是微软基于SOA建立的一套在分布式环境中各个相对独立的应用进行交流(Communication)的框架,它实现了最新的基于WS-*规范。按照SOA的原则,相对独自的业务逻辑以Service的形式进行封装,调用者通过消息(Messaging)的方式来调用服务。... 阅读全文
posted @ 2014-11-01 17:11 Learning hard 阅读(6510) 评论(7) 推荐(8) 编辑
摘要: 一、引言 在前面博文介绍到,WCF的契约包括操作契约、数据契约、消息契约和错误契约,前面一篇博文已经结束了操作契约的介绍,接下来自然就是介绍数据契约了。所以本文要分享的内容就是数据契约。二、数据契约的介绍 在WCF中,服务契约定义了可供调用的服务操作方法,而数据契约则是定义了服务端和客户端之间传... 阅读全文
posted @ 2014-10-26 23:30 Learning hard 阅读(7044) 评论(13) 推荐(7) 编辑
摘要: 一、引言 在上一篇博文中,我们分析了如何在WCF中实现操作重载,其主要实现要点是服务端通过ServiceContract的Name属性来为操作定义一个别名来使操作名不一样,而在客户端是通过重写客户端代理类的方式来实现的。在这篇博文中将分享契约继承的实现。二、WCF服务契约继承实现的限制 首先,介... 阅读全文
posted @ 2014-10-23 21:08 Learning hard 阅读(3737) 评论(9) 推荐(8) 编辑
摘要: 一、引言 在上一篇博文中,我们创建了一个简单WCF应用程序,在其中介绍到WCF最重要的概念又是终结点,而终结点又是由ABC组成的。对于Address地址也就是告诉客户端WCF服务所在的位置,而Contract又是终结点中比较重要的一个内容,在WCF中,契约包括服务契约、数据契约、消息契约和错误契约... 阅读全文
posted @ 2014-10-22 08:09 Learning hard 阅读(6551) 评论(25) 推荐(15) 编辑
摘要: 一、引言 前面几篇文章分享了.NET 平台下其他几种分布式技术,然而前面几种分布式技术专注于某一特定的领域,并且具有不同编程接口,这使得开发人员需要掌握多个API的使用。基于这样的原因,微软在.NET 3.0时实现了WCF。WCF是.NET平台下各种分布式技术的集成,它将前面介绍的几种分布式技术完... 阅读全文
posted @ 2014-10-19 16:09 Learning hard 阅读(7038) 评论(4) 推荐(11) 编辑
摘要: 一、引言 在前面文章中分别介绍了MSMQ和.NET Remoting技术,今天继续分享.NET 平台下另一种分布式技术——Web Services二、Web Services 详细介绍2.1 Web Services 概述 Web Services是支持客户端与服务器通过网络互操作的一种软件系统... 阅读全文
posted @ 2014-10-17 08:32 Learning hard 阅读(7067) 评论(19) 推荐(15) 编辑
摘要: 一、引言 上一篇博文分享了消息队列(MSMQ)技术来实现分布式应用,在这篇博文继续分享下.NET平台下另一种分布式技术——.NET Remoting。二、.NET Remoting 介绍2.1 .NET Remoting简介 .NET REmoting与MSMQ不同,它不支持离线可得,另外只适合... 阅读全文
posted @ 2014-10-13 00:45 Learning hard 阅读(9425) 评论(24) 推荐(16) 编辑
摘要: 一、引言 Windows Communication Foundation(WCF)是Microsoft为构建面向服务的应用程序而提供的统一编程模型,该服务模型提供了支持松散耦合和版本管理的序列化功能,并提供了与消息队列(MSMQ)、COM+、Asp.net Web服务、.NET Remoting... 阅读全文
posted @ 2014-10-12 16:37 Learning hard 阅读(16890) 评论(16) 推荐(27) 编辑
摘要: 1、《证券分析》(格雷厄姆著)。格雷厄姆的经典名著,专业投资者必读之书,巴菲特认为每一个投资者都应该阅读此书十遍以上。 2、《聪明的投资者》(格雷厄姆著)。格雷厄姆专门为业余投资者所著,巴菲特称之为"有史以来最伟大的投资著作"。 3、《怎样选择成长股》(费舍尔著)。巴菲特称自己的投资策略是"85... 阅读全文
posted @ 2014-10-07 15:18 Learning hard 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 一、引言 经过这段时间对设计模式的学习,自己的感触还是很多的,因为我现在在写代码的时候,经常会想想这里能不能用什么设计模式来进行重构。所以,学完设计模式之后,感觉它会慢慢地影响到你写代码的思维方式。这里对设计模式做一个总结,一来可以对所有设计模式进行一个梳理,二来可以做一个索引来帮助大家收藏。 ... 阅读全文
posted @ 2014-09-29 00:28 Learning hard 阅读(169471) 评论(67) 推荐(156) 编辑
摘要: 一、引言 在上一篇博文分享了访问者模式,访问者模式的实现是把作用于某种数据结构上的操作封装到访问者中,使得操作和数据结构隔离。而今天要介绍的备忘者模式与命令模式有点相似,不同的是,命令模式保存的是发起人的具体命令(命令对应的是行为),而备忘录模式保存的是发起人的状态(而状态对应的数据结构,如属性)... 阅读全文
posted @ 2014-09-20 22:04 Learning hard 阅读(14843) 评论(6) 推荐(7) 编辑
摘要: 一、引言 在上一篇博文中分享了责任链模式,责任链模式主要应用在系统中的某些功能需要多个对象参与才能完成的场景。在这篇博文中,我将为大家分享我对访问者模式的理解。二、访问者模式介绍2.1 访问者模式的定义 访问者模式是封装一些施加于某种数据结构之上的操作。一旦这些操作需要修改的话,接受这个操作的数... 阅读全文
posted @ 2014-09-20 12:24 Learning hard 阅读(16116) 评论(10) 推荐(5) 编辑
摘要: 一.WITH AS的含义 WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分。特别对于UN... 阅读全文
posted @ 2014-09-18 20:36 Learning hard 阅读(502) 评论(0) 推荐(0) 编辑
摘要: 一、引言 在现实生活中,有很多请求并不是一个人说了就算的,例如面试时的工资,低于1万的薪水可能技术经理就可以决定了,但是1万~1万5的薪水可能技术经理就没这个权利批准,可能就需要请求技术总监的批准,所以在面试的完后,经常会有面试官说,你这个薪水我这边觉得你这技术可以拿这个薪水的,但是还需要技术总监... 阅读全文
posted @ 2014-09-18 20:35 Learning hard 阅读(20532) 评论(13) 推荐(11) 编辑
摘要: 相同点:1.truncate和不带where子句的delete、以及drop都会删除表内的数据。2.drop、truncate都是DDL语句(数据定义语言),执行后会自动提交。不同点:1. truncate 和 delete 只删除数据不删除表的结构(定义)drop 语句将删除表的结构被依赖的约束(... 阅读全文
posted @ 2014-09-17 22:23 Learning hard 阅读(326) 评论(0) 推荐(0) 编辑
摘要: 一、引言 前面主题介绍的状态模式是对某个对象状态的抽象,而本文要介绍的策略模式也就是对策略进行抽象,策略的意思就是方法,所以也就是对方法的抽象,下面具体分享下我对策略模式的理解。二、策略者模式介绍2.1 策略模式的定义 在现实生活中,策略模式的例子也非常常见,例如,中国的所得税,分为企业所得税、... 阅读全文
posted @ 2014-09-17 22:17 Learning hard 阅读(22014) 评论(6) 推荐(11) 编辑
摘要: 一、引言 在上一篇文章介绍到可以使用状态者模式和观察者模式来解决中介者模式存在的问题,在本文中将首先通过一个银行账户的例子来解释状态者模式,通过这个例子使大家可以对状态者模式有一个清楚的认识,接着,再使用状态者模式来解决上一篇文章中提出的问题。二、状态者模式的介绍 每个对象都有其对应的状态,而每... 阅读全文
posted @ 2014-09-14 20:08 Learning hard 阅读(17718) 评论(7) 推荐(14) 编辑
摘要: 一、引言 在现实生活中,有很多中介者模式的身影,例如QQ游戏平台,聊天室、QQ群和短信平台,这些都是中介者模式在现实生活中的应用,下面就具体分享下我对中介者模式的理解。二、 中介者模式的介绍2.1 中介者模式的定义 从生活中的例子可以看出,不论是QQ游戏还是QQ群,它们都是充当一个中间平台,QQ... 阅读全文
posted @ 2014-09-13 18:35 Learning hard 阅读(14652) 评论(5) 推荐(7) 编辑
摘要: 一、引言 在现实生活中,处处可见观察者模式,例如,微信中的订阅号,订阅博客和QQ微博中关注好友,这些都属于观察者模式的应用。在这一章将分享我对观察者模式的理解,废话不多说了,直接进入今天的主题。二、 观察者模式的介绍2.1 观察者模式的定义 从生活中的例子可以看出,只要对订阅号进行关注的客户端,... 阅读全文
posted @ 2014-09-13 15:10 Learning hard 阅读(40287) 评论(15) 推荐(26) 编辑
摘要: 一、引言 在上篇博文中分享了我对命令模式的理解,命令模式主要是把行为进行抽象成命令,使得请求者的行为和接受者的行为形成低耦合。在一章中,将介绍一下迭代器模式。下面废话不多说了,直接进入本博文的主题。二、迭代器模式的介绍 迭代器是针对集合对象而生的,对于集合对象而言,必然涉及到集合元素的添加删除操... 阅读全文
posted @ 2014-09-09 23:57 Learning hard 阅读(15625) 评论(6) 推荐(6) 编辑
摘要: 一、前言 之前一直在忙于工作上的事情,关于设计模式系列一直没更新,最近项目中发现,对于设计模式的了解是必不可少的,当然对于设计模式的应用那更是重要,可以说是否懂得应用设计模式在项目中是衡量一个程序员的技术水平,因为对于一个功能的实现,高级工程师和初级工程师一样都会实现,但是区别在于它们实现功能的可... 阅读全文
posted @ 2014-09-07 23:14 Learning hard 阅读(23274) 评论(6) 推荐(6) 编辑
摘要: UML中描述对象和类之间相互关系的方式包括:依赖(Dependency),关联(Association),聚合(Aggregation),组合(Composition),泛化(Generalization),实现(Realization)等。依赖(Dependency):元素A的变化会影响元素B,但... 阅读全文
posted @ 2014-09-06 22:47 Learning hard 阅读(4797) 评论(0) 推荐(5) 编辑
摘要: 前言 现在,越来越多的公司采用Cocos2d-x 3.0来开发游戏了,但是现在这样的文章并不多,所以打算写一系列来帮助初学者快速掌握Cocos2d-x 3.0。首先就从开发环境的大家说起吧。开发工具的准备搭建开发环境需要安装工具包括Visual Studiopython ———(本教程以pytho... 阅读全文
posted @ 2014-07-02 21:28 Learning hard 阅读(2470) 评论(4) 推荐(5) 编辑
摘要: Autodesk面试技术题解答By SmartPtr(http://www.cppblog.com/SmartPtr/) 近一年以来,AUTODESK的面试题在网上是闹的沸沸扬扬,作为一个名企,这是可以理解的,况且其面试题质量也是不错的。抽一些闲暇时间,把网上传的比较多的70道题简单的解答了一遍,不为别的,只为再熟悉一下在大学学过的一些基础知识。希望对大家有用。当然,这只是我的个人解答,有什么不对的或者需要补充的,大家尽管提上来,好的话我加上去的。。。1.在类的普通成员函数中调用虚函数,情况是怎么样的?(对象、引用、指针)多态, 事实上,这是 Template Method模式的关键2.关于成 阅读全文
posted @ 2014-02-21 11:29 Learning hard 阅读(1629) 评论(0) 推荐(1) 编辑
摘要: VC++实现绘图操作,说白了也就是对API熟练操作了,下面介绍几种绘图1. 绘制线条具体实现代码如下:// 鼠标左键按下时的处理函数void CDrawView::OnLButtonDown(UINT nFlags, CPoint point){ // TODO: 在此添加消息处理程序代码和/或调用默认值 originP=point; CEditView::OnLButtonDown(nFlags, point);}// 鼠标左键弹起时的处理函数,Point为弹起时鼠标的点坐标void CDrawView::OnLButtonUp(UINT nFlags, CPoint po... 阅读全文
posted @ 2014-01-06 12:44 Learning hard 阅读(3124) 评论(0) 推荐(0) 编辑