摘要:再次申明一下:本系列不是讲述TDD的,只是用TDD来建立设计的思想。即便是用DDD,有时候还是结合TDD一起使用的。 开发方式比较 我们用下面的一段分析来引出今天的内容: 想想我们平时是如何在写代码:拿来需求,分析功能,编写功能代码。这样的方式,没有问题,大家也一直沿用很多年了。为了后面描述方便,我们称这种方式为传统流程。 TDD的怎么做的: 拿来需求,分析功能,写功能测试代码,编写功能代码。其实两个过程差不多的,真的差不多的。 首先来分析下两种开发流程。个人认为:因为TDD多了一个角色转换的过程:在我们传统流程中,我们一直以一个开发人员的思维在想问题,分析,然后就... 阅读全文
一起谈.NET技术,走向ASP.NET架构设计——第一章:走向设计
2011-09-02 00:21 by 狼人:-), 256 阅读, 0 推荐, 收藏,
摘要:前言:很多做开发的人都在不断的摸索着,积极的学习,试图找出一条走向架构设计的成功法则。每当有人问起我们的职业,我们也常常在说:”软件设计”。有时,我就在想:”设计”,这个已经被我们嚼烂了的词,到底有多少人真正懂”设计”的含义。 自动进入IT,走在开发这条路上,就一直在不断的摸索,寻找,苦思:如何能够才能成为架构师。于是在网络上不断的收集和阅读架构设计方面的书籍和资料,到处在找一些架构师的传记,文章和甚至是采访资料..... 同时一直不断的请教自己的一些前辈,或者同事,不同人都不同的说法,有人说:搞架构的,要懂很懂底层例如从汇编到C,要懂算法, 有人说:要懂很多语言,例如Java, ... 阅读全文
一起谈.NET技术,微软PDC10:大牛谈ASP.NET和C#技术走向
2011-09-02 00:21 by 狼人:-), 303 阅读, 0 推荐, 收藏,
摘要:最近看了自己关心的主题的微软PDC视频,也结合自己的Web 2.0项目做了一些思考。这次PDC最大的一个主题就是Azure OS,所谓的云操作系统。不过微软的服务器要布到中国也不知道要到什么时候,所以也没有深究。我主要关心的是Asp.net和C#的技术走向。 我总结了一下,总的走向就是更加的Web化,比如Webform的Tag的ID可以控制了,MVC将成为主流,C# 4.0更加向动态语言靠,甚至引入了一个dynamic的关键字。这些基本和我的预期相符合。其实都指向一个理念:Web的本质是文档。 Web的本质是文档 以前有网友对我的所谓“文档化”理念提出疑问。因为我一直认为理念... 阅读全文
一起谈.NET技术,C#调试心经
2011-09-02 00:21 by 狼人:-), 349 阅读, 0 推荐, 收藏,
摘要:注:如无特别说明Visual Studio均指Dev10即Visual Studio 2010。 入门篇 假设你是有着.Net平台的程序员,并且使用Visual Studio 做为开发工具。 断点:最简单的一种,设置一个断点,程序执行到那一句就自动中断进入调试状态。设置断点,在你觉得有问题的代码行,左侧单击,会出现红色的红点即断点。 启动调式:按F5,或者菜单栏---调式---开始调试,或者工具栏的图标: 快速监视:快速查看变量或者表达式的值,也可以自定义表达式进行计算: 单步执行 有三种,一种是每次执行一行(F10);一种是每次执行一行,但遇到函... 阅读全文
一起谈.NET技术,Mono向Mac OS应用程序开发示好
2011-09-02 00:21 by 狼人:-), 291 阅读, 0 推荐, 收藏,
摘要:Mono正在努力改进各个平台上的使用体验。近日Miguel de Icaza在博客上宣布MonoMac发布了新的版本。MonoMac是面向Mac OSX API的C#绑定,其API设计主要受到了MonoTouch的启发,后者可以基于Mono开发原生的iOS应用程序。MonoMac套件的目标之一,也是发布独立的.app应用程序,让最终用户摆脱对Mono的依赖。
多年以前,Geoff Norton创建了CocoaSharp,这是第一套面向Cocoa API的.NET绑定。从那时起,Mono用户开始尝试利用.NET客户端调用Objective-C的API。几年下来,也出现了其他几个设法集成Objec 阅读全文
一起谈.NET技术,WPF 企业内训全程实录(中)
2011-09-02 00:21 by 狼人:-), 284 阅读, 0 推荐, 收藏,
摘要:摘要 WPF企业内训全程实录由于文章比较长,所以一共拆分成了三篇,上篇WPF企业内训全程实录(上)主要讲了基础,这篇作为该实录的中篇,起着承上启下的作用,主要讲解开发模式、团队协作及应用框架。其实如果大家仔细看目录,可以发现我安排的顺序是首先讲解最基本的概念和基础内容、然后过渡到开发模式及框架、最后结合其他技术和项目实际运用,这也是学习并应用一门技术最好的流程。上篇实际上主要有两个侧重点:一则就是理清脉络——历史渊源、概念引入及基本阐述;二则是讲解WPFBasic——主要讲解WPF的每个知识点,涵盖了WPF的方方面面;如果大家感兴趣,可以下载代码进行仔细研究,如果有不懂的地方也可以参考... 阅读全文
一起谈.NET技术,WPF企业内训全程实录(上)
2011-09-02 00:21 by 狼人:-), 254 阅读, 0 推荐, 收藏,
摘要:一. 摘要 圣殿骑士由于工作和项目需要,所以对一些技术进行了较为深入的研究,之前在整个公司做过一些技术专场的培训,由于每次时间较短且人员较多的关系,没能讲得很透彻。一直都想以文字的形式把这些培训细节写出来,但是发现进度确实很慢,所以先来几篇宏观的讲解,希望能起到“授人与鱼也授人以渔”的效果。今天我们就来分享一下WPF内训之旅,这篇文章以WPF培训为主线,中间贯穿了一些其他技术和使用心得。其他培训专题诸如“OO到设计模式”、“WCF基础到企业应用“Silverlight基础到企业应用及优化”随后也会奉上,热诚和大家互相学习,如果有讲得不妥之处,也希望大家能够多多指点! 二. 本文提纲... 阅读全文
一起谈.NET技术,预览:Visual Basic与C#中的异步语法
2011-09-02 00:21 by 狼人:-), 269 阅读, 0 推荐, 收藏,
摘要:在最近的博客文章中,Visual Basic团队发布了一条简单的消息,声称在Visual Basic和C#中将会增加异步编程语法。两种语言新增的Async和Await关键字的实现将基于.NET 4.0中的任务并行库(Task Parallel Library,TPL)。 Async关键字用于方法,它将启用方法的异步行为。在这个方法中,Await关键字将暂停当前的执行流程,直到当前异步行为结束为止。线程不会因此而暂停,它可以用于处理其他工作,例如UI事件。一旦异步行为结束后,方法的将继续执行余下部分。 以下是一个典型的WPF或WinForm应用程序中的“搜索”功能: Code hi... 阅读全文
一起谈.NET技术,.NET 中的正则表达式
2011-09-02 00:21 by 狼人:-), 295 阅读, 1 推荐, 收藏,
摘要:前两天面试一个程序员,自己说工作中用到过正则表达式,也比较熟悉,问他要使用正则表达式需要引用那个命名空间,使用哪些类,居然吱吱唔唔答不上来,让他写一个验证电话号码的正则表达式也写不出来,实在是很奇怪这种程序员是怎么工作了两三年的。
言归正传,下面介绍下.net中正则表达式中的使用。
要在.net中使用正则表达式,需要引用System.Text.RegularExpressions 命名空间。新建一个正则表达式类: Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter. 阅读全文
一起谈.NET技术,asp.net 缓存
2011-09-02 00:21 by 狼人:-), 272 阅读, 0 推荐, 收藏,
摘要:缓存是在内存存储数据的一项技术,也是ASP.NET中提供的重要特性之一。例如你可以在复杂查询的时候缓存数据,这样后来的请求就不需要从数据库中取数据,而是直接从缓存中获取。通过使用缓存可以提高应用程序的性能。 主要有两种类型的缓存: ·输出缓存Output caching ·数据缓存Data caching 1. 输出缓存(Output Caching) 使用输出缓存,你可以缓存最后输出的HTML页面,当相同的页面再次请求的时候,ASP.NET不会再执行页面的生命周期和相关代码而是直接使用缓存的页面,语法如下: <%@ OutputCache Duration=”60” 阅读全文
一起谈.NET技术,DataTable 深入解析数据源绑定原理之高级篇
2011-09-02 00:21 by 狼人:-), 443 阅读, 0 推荐, 收藏,
摘要:前言 在上篇写了篇 实战系列之天气预报实时采集 ,有个别同志认为没技术含量,也许正如所说。 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->只是人各有看法,当我写出一篇文章时,我只是希望:1:如果你还不懂,请看写法,了解想法。2:如果你已懂,略过写法,请看想法。 其实纵观我一直写来的200多篇文章,基本都可以看出那么点痕迹: Code highlighting produced by Actipro CodeHighlighter... 阅读全文
一起谈.NET技术,Visual Studio下使用jQuery的10个技巧
2011-09-02 00:20 by 狼人:-), 353 阅读, 2 推荐, 收藏,
摘要:广泛流行的jQuery是一个开源的,跨浏览器和兼容CSS 3的JavaScript库,你可以用它简化你的JavaScript编码任务和操作(添加,编辑和删除)HTML内容中的DOM元素,本文介绍10个在Visual Studio下使用jQuery的10个有用的技巧,希望对你有所帮助。 你需要准备些什么 为了在Visual Studio中顺利使用jQuery,你需要安装下面这些软件: Visual Studio 2008 Visual Studio 2008 SP1 jQuery库 Visual Studio 2008 jQuery插件 或者直接使用Visual... 阅读全文
一起谈.NET技术,XML和实体序列化和反序列化
2011-09-02 00:20 by 狼人:-), 249 阅读, 0 推荐, 收藏,
摘要:近来的项目中用到了序列化就抽空学习了一下,拿出来给大家分享一下: 类为我们提供了自己对象串行化(Serialize)和反串行化(Deserialize)的xml的方法,该类可以序列化的内容: 公共类的公共读写字段或者属性 XmlElement对象 XmlNode对象 Dataset对象 实现了Icollection 或IEnumerable的类 该类在设计中有一个设计需求: 需要被序列化的类要提供一个空参数的构造函数,否则运行时会出现异常 在开发过程中可能会有很多地方要用到对象和XML相互转化,在此提供一个通用的类,提供泛类型的支持。 /... 阅读全文
一起谈.NET技术,C#面向对象设计模式纵横谈:Singleton 单件
2011-09-02 00:20 by 狼人:-), 204 阅读, 0 推荐, 收藏,
摘要:模式分类 从目的来看: -创建型(Creational)模式:负责对象创建 -结构型(Structural)模式:处理类与对象间的组合 -行为型(Behavioral)模式:类与对象交互中的职责分配 从范围来看: -类模式处理类与子类的静态关系 -对象模式处理对象间的动态关系 动机(Motivation) 在软件系统中,经常有这样一些特殊的类,必须保证它们在系统中只存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?
这应该是类设计者的责任,而不是使用者的责任 结构(Structure)... 阅读全文
一起谈.NET技术,走向ASP.NET架构设计——第五章:业务层模式,原则,实践(后篇)
2011-09-02 00:20 by 狼人:-), 248 阅读, 0 推荐, 收藏,
摘要:设计模式 本篇文章主要是接着讨论的在业务层可以采用的或者常用的一些设计模式: State模式 状态模式允许一个对象在随着它的状态变化而改变它自身的一些行为。 在项目开发的过程中,有一些类,例如一个业务类常常是有自己的一些状态的,而且还存在状态之间的一些转换,有些状态之间是可以进行转换的,有些状态之间是不能转换的。就拿一个汽车来举例子,汽车有很多的状态:静止,启动,前进,后退,停车。而且不能由”前进”状态转为“启动”状态。 很多朋友知道state模式的用法和结构,朋友们应该也清楚在状态之间的转换用swtich.. case的一些弊端。在项目中,很多时候就没有”一定”,”非... 阅读全文
浙公网安备 33010602011771号