代码改变世界

随笔分类 -  [01].NET技术

一起谈.NET技术,使用Brahma在GPU上执行LINQ

2011-08-29 19:30 by 狼人:-), 225 阅读, 收藏,
摘要: Brahma是一个用于并行计算的开源库,它由C#编写并支持在多种处理器上运行。目前,Brahma仅包含一个图形处理器(GPU)模块,但是它的模块化结构可以支持更多种类的处理器。使用Brahma,同一个C#方法中的语句可以同时运行在CPU和GPU上,而不需要额外的代码。 Brahma通过将LINQ语句转换成目标处理器代码来执行并行计算,所生成的代码会跟据目标处理器的不同而不同。例如针对DirectX会生成High Level Shading Language,而针对OpenGL则会生成OpenGL Shading Language。为了提高性能,LINQ查询仅被编译一次,然后根据需要多次运行 . 阅读全文

一起谈.NET技术,使命必达:深入剖析WCF的可靠会话

2011-08-29 19:30 by 狼人:-), 183 阅读, 收藏,
摘要: 作为一个通信基础平台,WCF必须保证通信的可靠性。由于消息交换是WCF采用的通信手段,通信可靠性的保障体现在确保消息的可靠传输。WCF本质上是一个消息处理框架,作为整个消息交换系统的两个终端,即发送端和接收端。换句话说,WCF仅仅负责对消息的发送和接收,一旦消息通过WCF的信道层进入了网络,就脱离了WCF的控制范围。但是,由于网络环境的限制,网络层不能百分之百地确保对消息的有效交付。如何克服中间环节的制约,确保从一端发送的消息能够被有效地交付给另一端,这就是可靠消息传输(Reliable Messaging)需要解决的问题。WCF通过可靠会话(Reliable Sessions)实现了种种.. 阅读全文

一起谈.NET技术,HTTP协议及POST与GET操作差异,C#中如何使用POST、GET等

2011-08-29 19:30 by 狼人:-), 289 阅读, 收藏,
摘要: 引言 HTTP协议我想任何IT人士都耳熟能详了,大家都能说出个所以然来。但是如果我问你HTTP协议的请求方法有哪些?POST与GET的差异?GET或POST传送数据量的大小有限制吗?HTTP响应的状态有哪些?以及在C#中你如何使用?如果你不能清楚地回答其中的大部分问题,那么这篇文章就是为你准备的!大纲如下: 1、HTTP概述 1.1、HTTP协议的客户端与服务器的交互 1.2、HTTP消息 1.3、HTTP请求的方法 1.4、HTTP响应的代码 2、抓包分析 3、POST与GET的差异 4、以一个实例说明C#中如何使用POST、GET等操作 4.1、HttpWebRequest 4... 阅读全文

一起谈.NET技术,.NET中通过代理实现面向方面编程(AOP)

2011-08-29 19:30 by 狼人:-), 310 阅读, 收藏,
摘要: 上篇文章我说到了在代码中可以利用泛型委托来封装异常处理,这样可以让程序看起来更加清晰,要想完成功能需要调用者调用指定的工厂方法才行,但要想改变某些程序员的编码习惯我想是一件比较困难的事情。有朋友说利用委托来实现异常处理并不算是真正意义上的AOP,因为传统的AOP并不需要客户端做代码结构的变更,最多也就是配置上的问题。但在.net中要想实现AOP,我想最方便的实现机制要属代理机制了,但只要利用代理,在性能上就会造成一定的影响。 如果开发过分布式服务,像remotion,wcf等,消息都是它们通信的重要手段。客户端通过方法调用形式体现的服务访问需要转换成具体的消息,然后经过编码才能利用传输... 阅读全文

一起谈.NET技术,敏捷开发的26条至理名言

2011-08-29 19:30 by 狼人:-), 168 阅读, 收藏,
摘要: 我经常收集各种各样的至理名言,最近我重温敏捷开发;真正的问题是什么?下面是一份26条关键原则的清单,以指引敏捷软件开发团队。 1、完整地干完一件事后在开始另一件事:用厨房比喻来说就是:“先上这道菜,再开始做下一道”。软件开发的最大问题就是同时开始几件事情,这将不可避免的造成某些工作被废弃,从而造成浪费。专注于一件事;完整地实现其功能;运行测试;编写文档;签入所有,把这当做一项工作完成,然后再开始下一件事。 2、不要破坏构建:非常明显,但必须被包含在任何软件开发建议清单中。程序员在签入之前采取所有合适的预防措施进行测试,则永远不会破坏构建。如果构建被破坏,通常是因为有人偷懒了。 ... 阅读全文

一起谈.NET技术,利用AOP重构代码

2011-08-29 19:30 by 狼人:-), 290 阅读, 收藏,
摘要: AOP是什么? AOP是OOP的延续,Aspect Oriented Programming的缩写,即面向方面编程。AOP是GoF设计模式的延续,设计模式追求的是调用者和被调用者之间的解耦,AOP也是这种目标的一 种实现。 案例:在应用程序中,我们经常会对某一段程序做异常处理,或者是把一个方法的调用所消耗的时间体现在日志中,如果我们对每个方法都写具体的实现,我想并不是一件轻松的事情。对于异常处理来讲,其实我们平常编程很少去捕获具体的异常,当然特殊程序除外,例如客户端捕获WCF异常时最好捕获CommunicationException,TimeoutException,Excep... 阅读全文

一起谈.NET技术,你是个软件架构师吗?

2011-08-29 19:30 by 狼人:-), 269 阅读, 收藏,
摘要: 开发和架构的界限难以捉摸。有些人告诉你它根本不存在,架构只是开发者们所做的设计过程的简单扩展。 另外一些人认为这是一个鸿沟,它只能由那些做到高度抽象,而且不会陷入实现细节的开发者才能跨越。通常,在这两个极端的观点中间某处有个可操作的平衡点;不论如何,怎么从开发转换为架构师都是个有趣的问题。 经常被用来区分软件架构和软件设计开发的关键几点包括 伸缩性和抽象程度的增加以及作出正确设计决策意义的增强。软件架构是通过一个全局的观点,宏观的视角来理解软件系统作为一个整体如何工作。 即使这能够帮助区分软件开发和架构,它并不能帮助理解某人如何从开发提升到架构。 并且,它也不能帮助识别谁能够成为一... 阅读全文

一起谈.NET技术,Silverlight 4.0发布之际,让我们重新再认识一次Silverlight这位乱世英雄!

2011-08-29 19:30 by 狼人:-), 165 阅读, 收藏,
摘要: Microsoft Silverlight是微软所发展的 Web 前端应用程序开发解决方案,是微软丰富型互联网应用程序Rich Internet Application(简称RIA)策略的主要应用程序开发平台之一,以浏览器插件形式,提供 Web 应用程序中多媒体(含影音流与音效流)与高度交互性前端应用程序的解决方案,同时它也是微软 UX(用户体验)策略中的一环。 Silverlight与WPF的关系? 在理解Silverlight之前,需要先了解WPF为何方神圣,并在一定程度上深入理解WPF的原理及Dispatcher机制。Windows 7、Visual Studio 201... 阅读全文

一起谈.NET技术,重新认识C#: 玩转指针

2011-08-29 19:30 by 狼人:-), 241 阅读, 收藏,
摘要: 许多文章并不鼓励在C#下使用指针开发,不过,本文偏偏要这样做。在大量尝试C#下使用指针开发之后,你会对C#有更深的认识。 在说C#下的指针之前,需要提一下C++/CLI。C++/CLI 我们可以把它看作两部分:Native C++和 Managed C++,两者可以无缝结合。对C#,我们也可以把它看作两部分:Managed C# 和 Unmanaged C#。Managed C# 和 Unmanaged C# 是我杜撰的两个词,前者就是我们通常的C#,后者就是使用指针、Struct和非托管内存的C#。事实证明,Unmanaged C#也可以玩的十分优雅——它具有C语言的大部分特性,却比... 阅读全文

一起谈.NET技术,.NET 4九大新特性

2011-08-29 19:30 by 狼人:-), 283 阅读, 收藏,
摘要: 英文原文:What's New in the .NET Framework 4 本文将向您介绍.NET Framework 4中的主要功能和改进特征。请注意,本文中并没有提供有关这些新功能的综合信息,并随时可能更改。 请注意,.NET Framework 4引入了一个改进的安全模式。有关该内容的更多的信息,请参阅文章《.NET Framework 4中的安全变化》。 一、应用程序兼容性和部署 除了一些在安全、标准遵从、正确性、可靠性及性能等方面的改进之外,.NET Framework 4与基于早期.NET框架版本构建的应用程序高度兼容。 .NET Framework 4... 阅读全文

一起谈.NET技术,2010 .NET面试题整理之基础篇

2011-08-29 19:30 by 狼人:-), 262 阅读, 收藏,
摘要: 开篇语:对于已有工作经验的朋友,也许面试题已显得不怎么重要,但是如果你应聘的还仅仅是个普通的程序员,相信在很多的公司都还是会先拿出一套面试题,可能对整个面试影响不大,但做好面试题无疑会赢得第一个好的印象,特别对于那些缺少项目经验的应届毕业生。很多时候,在看这些面试题的时候,是否有感过曾经那些一个个不起眼的小程序题所针对的问题正是自己在项目中所犯的错误?是否会发现,原来还有这么多东西自己都还从未去想过?趁自己这次重新找工作之际,对常见面试题进行进行一次重新整理,与大家共同学习!本贴将会进行不断完善和继续更新,有些答案可能并不完全正确,希望能得到大家的指正。 接下来还将整理出:数据库篇、算法篇、. 阅读全文

一起谈.NET技术,从WPF想开去

2011-08-29 19:30 by 狼人:-), 133 阅读, 收藏,
摘要: 一看,又4个月没发文章了,这4个月除去春节奔波,基本上一直在加班,在中国做程序员总是与外国同行不一样,起跑线上输得很厉害。其实按照《人件》统计,程序员一天如果能顺流超过3个小时,基本上就可以秒杀绝大多数问题了。问题是在我们现行的工作环境下,经常是一天连一分钟顺流都进入不了,必须是各种打扰,各种打断,看似提升了效率,事实上是降低了效率。而且,绝大多数时间,我们可能花在了调试错误上,而非本身的逻辑问题上。这样,一天比老外多工作几个小时——以完成同样的目的——就是很正常的了。 呵呵,说着要说WPF的,怎么发了一堆牢骚,其实论环境,比起很多人来,我可能已经是蒙受了很多恩惠了。每天至少有一些充电... 阅读全文

一起谈.NET技术,ASP.NET MVC 2示例Tailspin Travel UI层分析

2011-08-29 19:30 by 狼人:-), 279 阅读, 收藏,
摘要: Tailspin Travel 是一个旅游预订的应用程序示例,最新版本采用ASP.NET MVC 2技术构建,主要使用 DataAnnotations 验证, 客户端验证和ViewModels,还展示了许多Visual Studio 2010, .NET Framework 4, 和Windows Server AppFabric的技术,参看ASP.NET MVC 2示例Tailspin Travel。 Tailspin Travel设计的技术比较多,今天我们来看看界面(UI)上的技术,在UI层上来说主要采用的技术是ASP.NET MVC2和ASP.NET DynamicData框架。... 阅读全文

艾伟_转载:获取confirm返回值的故事

2011-08-29 00:22 by 狼人:-), 266 阅读, 收藏,
摘要: 也许很多人看了这个标题就会不屑看下去,大可以说网上多的去了这种问题的文章,的确,当我碰到这个问题的时候,我也首先在网上找了很多资料,但是没有合适的,或者说没有讲的清晰的,而后,我又问了几个牛人,以及几位同事,也都没有搞懂,后来在我老大的帮助下,最终还是解决了,所以我觉得有这个必要写出来给大家分享下~ 废话说了这么多,还是直奔主题吧~ 我的要求是这样的,页面上有个表单,表单的内容是绑定数据库的,需要动态刷新的,而后有个按钮——save,点击之后为保存到数据库——Insert_Save(),又有个按钮submit,点击之后直接提交到数据库Insert_Submit(),两者的区别是插入到不... 阅读全文

艾伟_转载:Cookies揭秘

2011-08-29 00:22 by 狼人:-), 139 阅读, 收藏,
摘要: 一,前言 Cookies想必所有人都了解, 但是未必所有人都精通。本文讲解了Cookies的各方面知识, 并且提出来了最佳实践。这是笔者在日常工作中的积累和沉淀。 二,基础知识 1.什么是Cookies Cookie 是一小段文本信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。Cookie 包含每次用户访问站点时 Web 应用程序都可以读取的信息。 例如,如果在用户请求站点中的页面时应用程序发送给该用户的不仅仅是一个页面,还有一个包含日期和时间的 Cookie,用户的浏览器在获得页面的同时还获得了该 Cookie,并将它存储在用户硬盘上的某个文件夹中。 以后,如果该用户再次... 阅读全文

艾伟_转载:分布式缓存BeIT Memcached简介

2011-08-29 00:22 by 狼人:-), 210 阅读, 收藏,
摘要: 或许你还没有用到过分布式缓存,在web集群的情况下,它可以很好的让一部分常用数据常驻服务器内存而不用担心各台web不同步。下面稍微介绍一下beitmemcached对于.net的支持,官方参考http://code.google.com/p/beitmemcached/ 一个完整的操作步骤:1、点击上面页面的downloads,把Memcached_1.2.5.zip 和BeITMemcached_source_2008_05_31.zip两个压缩包下在下来。2、解压Memcached_1.2.5.zip ,它是memcached的服务器端。3、把Memcached_1.2.5复制到你指定的. 阅读全文

艾伟_转载:消息队列(Message Queue)简介及其使用

2011-08-29 00:22 by 狼人:-), 148 阅读, 收藏,
摘要: 消息队列(Message Queue)简介及其使用 利用 MSMQ(Microsoft Message Queue),应用程序开发人员可以通过发送和接收消息方便地与应用程序进行快速可靠的通信。消息处理为您提供了有保障的消息传递和执行许多业务处理的可靠的防故障方法。 MSMQ与XML Web Services和.Net Remoting一样,是一种分布式开发技术。但是在使用XML Web Services或.Net Remoting组件时,Client端需要和Server端实时交换信息,Server需要保持联机。MSMQ则可以在Server离线的情况下工作,将Message临时保存在Clien. 阅读全文

艾伟_转载:Web网站缓存文件并发问题解决方案

2011-08-29 00:22 by 狼人:-), 188 阅读, 收藏,
摘要: 我所负责的XXX.CN平台前期由于网站整体运行效率低因此采用了文件缓存的方式(文件缓存就是当某个页面第一次接受用户访问时将数据库中获取到的内容转化成xml文件的形式,并且存储在服务器硬盘当中,当后面的人再来访问时就只需要直接读取xml缓存文件即可,减少了读取数据库的次数,从而达到提高网站运行效率的目的),但是使用了这种方式其中有一个更新数据的问题,在更新和读取是就产生了并发的问题,说白了就是读取和写入的矛盾,当你的网站的访问量达到一定程度后,产生这种矛盾的概率越来越大,已至于访问者无法访问网站,流失了客户,对于我们酒店预订平台来说,流失的不是客户,而是白花花的金子,这个问题已经困挠了我许久,直 阅读全文

艾伟_转载:.NET平台上的Memcached客户端介绍

2011-08-29 00:22 by 狼人:-), 171 阅读, 收藏,
摘要: 早上接到一个任务,需要对Linux服务器的Memcached的update操作进行性能测试,我发现我是一个典型的“手里拿着锤子,就把所有问题都当成钉子”的人。我第一个念头就是,上Memcached的官网找.NET的客户端。最后在Codeplex上找到了一个叫Memcached Providers的客户端程序,很小,218K,里面就3个DLL,一个是Memcached Providers本身的DLL,还有一个是Enyim.Caching,Enyim.Caching也是一个.NET平台上的Memcached客户端,最后就是著名的log4net。 Memcached Providers的配置很方便, 阅读全文

艾伟_转载:C#正则表达式整理备忘

2011-08-29 00:22 by 狼人:-), 169 阅读, 收藏,
摘要: 有一段时间,正则表达式学习很火热很潮流,当时在CSDN一天就能看到好几个正则表达式的帖子,那段时间借助论坛以及Wrox Press出版的《C#字符串和正则表达式参考手册》学习了一些基础的知识,同时也为我在CSDN大概赚了1000分,今天想起来,去找《C#字符串和正则表达式参考手册》时,已经不知所踪了。现在用到正则的时候也比较少,把以前的笔记等整理一下,以志不忘。 (1)“@”符号 符下两ows表研究室的火热,当晨在“@”虽然并非C#正则表达式的“成员”,但是它经常与C#正则表达式出双入对。“@”表示,跟在它后面的字符串是个“逐字字符串”,不是很好理解,举个例子,以下两个声明是等效的: str. 阅读全文
上一页 1 ··· 31 32 33 34 35 36 37 38 39 ··· 56 下一页