IT技术博客

IT技术博客,精选各种精华文章供您阅读,是您学习各种IT技术的博客优选之地

c#进阶理解property属性和属性值之惑

 目录1 简单demo  2 使用reflactor分析3 使用属性的提醒 4 我对属性的理解5 属性需要定位吗? 6 扩展阅读       1 简单demo 以下是一个常见的属性的使用。其中Name 属性没有定义私有字段,而AGE定义了已有字段。  Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->public sealed class Employee { // This property is an 

PowerShell 2.0之使用WMI管理Windows(三)对WMI对象的语言支持

管理大型的异构网络非常繁琐,而在本地计算机上用不同的自动化接口,如PowerShell、COM对象,甚至基于.NET的程序管理单独的程序和服务则容易得多。关键是存在于混合网络中的分布式系统,即如何操作防火墙后面的设备。如果它只是一种硬件设备,如路由器,则使用WMI(Windows Management Instrumentation)即可。WMI是协同工作的一系列技术,可以提供网络对象的统一访问形式。并且用其查询服务信息,尤其是各种形式的数据、触发命令,以及改变配置选项。 在第2个PowerShell版本中针对WMI对象增加了很多语言增强功能,允许用户使用类似URL的字符串作为WMI对象的别名。 首先介绍将包含WQL查询字符串转换为WMI查询对象,这个类型是[wmisearcher],由此可以引申出ManagementObjectSearcher对象。搜索对象只有一个Get()方法,用于执

当软件项目全部能靠自己搞定了,也能接几万元的软件项目时,未必适合创业

   软件开发人员到了一定的境界后软件项目全部靠自己都能搞定了,同时几万元的项目能接到也能顺利完成时就会考虑到自己创业的事情,有些人头脑不够冷静这时候就盲目走上了创业之路,创业后自己很辛苦、生意也难做、还会遇到很多生存问题、资金问题、人力资源问题、可持续发展问题等等N多问题。      01:同一时间只做一个项目时人的精力都很集中、项目进展、工作效率都很快、管控项目总是会得心应手。    02:但是同时做好几个项目,人的精力分散了,往往出处于水上漂、应付表面,无法对项目进行强有力的推动、明显的进展,工作效率会明显下降。    03:干自己的事情与干别人的事情境界完全是不一样的,往往给你干活的人或者合作干活的人,不会那么拼命,不能期望值很高。    04:软件项目人员的变动可能性太大

浅谈缓存的设计与使用注意项(下)

缓存的加载策略--Proactive 和Reactive proactive的策略就是一开始就将所有backing store中的数据加载到进程内存中,这样做的好处是在数据量相对不大的时候会显得很有效率,无需频繁的访问backing store调出数据,并且也不用再代码中判断缓存中是否缓存有数据,是否要从backing store中加载。 reactive策略是“按需加载”,在程序初始化阶段仅加载必要的数据到内存缓存起来,其余数据只有在需要时才从数据库中调出再缓存。这种策略比较保守,缺点是在数据量比较大且频繁访问之初由于要多次频繁的向backing store获取数据,但通常我们使用这种的就是这种策略。 下面是两种方案的示例代码比较:proactive的方式Code highlighting produced by Actipro CodeHighlight

[WebGL] 简介,流程及示例

WebGL是一个附加的渲染上下文(context),支持HTML5的canvas对象。这个上下文允许通过一种与OpenGL ES 2.0 API非常相似的API来进行图像渲染。 创建WebGL上下文 通过使用canvas的getContext(“experimental-webgl”)方法来获取一个WebGLRenderingContext。 创建Shaders Shaders是用来将图形信息(shape data)转换为屏幕上的像素。当使用GLSL这种shader格式时,我们会用到两种不同的shaders。 Vertex shader 使用在被渲染的三角形的每个顶点(corner)上。这个shader会转换点信息,传入贴图对其信息并且使用每个三角形的normals来计算光照。GLSL提供给用户一个特殊的变量gl_Position来存储经过转换的顶点信息。WebGL

vc2010 std::tr1 bind库捉虫记

前两天发现了VC2010 tr1库中bind实现的一个bug,当时只是作了记录,没有详细分析.但作为一个QA,不找出问题所在实在不算称职,于是就有了这篇捉虫记. 闲言少叙,书归正传,tr1库就不多作介绍了,有兴趣的同学可以去 wikipedia上看.bind,顾名思义,就是把参数与函数绑定,以利于我们进行函数式编程,是从boost的bind库引入的,对bind不是很了解的可以看陈硕同学的这篇 以boost::function和boost:bind取代虚函数 假定笔者是 vc2010的QA,在做bind的功能测试,开始用gtest写test case, (笔者一般用gtest作为C++测试框架,就写到文章中了,但ms肯定不会用啦.笔者不在ms,请勿对号入座) 先写几个简单的函数供测试之用. Code highlighting produced by Actipro CodeHig

[精] Matlab实现鼠标写字 鼠标绘图

  最早的程序,实在忘了从哪里下载的了。能够实现鼠标的手写输入,但是一些不连续的点。   tmouse.m Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->function tmouse(action)% TMOUSE 本例展示如何以Handle Graphics来设定滑鼠事件(Mouse% Events)的反应指令(Callbacks)if nargin == 0 action = 'start'; end switch(action) % 开启图形视窗 case 'start', axis([0 1 0 1]);% 设定图轴范围 box on;% 将图轴加上图框 title('Click and

推荐25个提高网站可用性和转化率的工具

网站建设的核心关键是“如何发现潜在客户并有效的转化为合作客户”,这里提到有效的转化也就是说找到的客户不一定会选用我们的产品或者服务,成为了我们的客户的转化才是有效的转化,那么在竞争如此激烈的网络时代,我们该怎么去挖掘潜在客户并提高我们网站的转化率呢?关键之一就是提高网站的可用性。   对于网站来说,可用性是指用户能否有效地找到所需的信息或完成他的任务,效率如何以及是否让人有愉快满意的感受。如果网站可用性较差,会浪费用户的时间,大大降低网站的回头访问率,这对网站的生存是一个至关重要的问题。因此,为网站开发人员提供可用性改善建议和改进工具是十分必要的。   如何知道访客是否喜欢你的网站?借助可用性检测工具追踪用户行为可以回答这个问题。跟踪到的数据可以给你提供精确的信息,让你知道用户喜欢你网站的什么地方,哪些区域是最突出,哪些地方是用户最容易忽略的。不要小看这些收集到的

[项目过程中所遇到的各种问题记录]学习篇——对工作以来的学习过的开源项目进行总结—动软代码生成工具

       这篇应该算是项目过程中所遇到的各种问题记录的最后一篇了,主要记录并总结下工作到现在学习过的一些开源的项目,这一篇主要介绍的是我从这些开源项目中学习到的一些知识点的分享。   动软代码生成       从大学的时候为了省事就开始寻找各种代码生成工具,比如:CodeSmith、CodeGeneration以及不知名的代码生成器,其中CodeSmith和CodeGeneration虽然功能强大,但是需要寻找各种代码模板,当时觉得很麻烦,所以继续寻找,于是就接触到了园子里李天平写的动软代码生成,从某种程度上来说李天平写的动软还是很符合国内项目开发需求的:简单、功能齐全、可以生成多种项目,后来在去年的12月22日,李天平开源了其动软的源代码并在动软官网上放出了(不过目

[原创][连载].基于SOPC的简易数码相框 - Nios II SBTE部分(软件部分) - 从SD卡内读取图片文件,然后显示在TFT-LCD上

实在很抱歉,时间紧张,我只讲怎样从SD卡内读取bin文件(二进制文件),然后现在TFT-LCD上。 准备工具 1. Image2Lcd.zip 操作步骤 步骤1 寻找或制作240x320的图片 简单起见,我在谷歌图片里搜索240x320手机壁纸。随便选2张作为样本。   步骤2 使用Image2Lcd将图片转换为bin文件 我们先算一下,每个像素需要高8位+低8位,即16位数据,也就是2Byte;那么一张图片的话,就是240*320*2=15, 3600 Byte = 150 KB。 使用Image2Lcd依次打开图片,勾上如下所示的选项,保存为bin文件。 将生成的2个bin文件,拷贝到SD内的任意目录,比方说pic目录下。 步骤3 使用WinHex查找存放1.bin和2.bin的起始扇区及扇区内容 现在还不涉及文件系统,虽然我的sd卡被格式化为fat32。需

WP7 App性能优化(10):检测应用程序性能(Ⅲ)

监视填充率 填充率是每一帧Silverlight传递给GPU构图的图形表层的像素数目。填充率实质上是GPU工作负载的一个度量。因此,应当随时了解自己的应用程序的填充率,以免其超出GPU的处理能力,而拖慢帧频。当应用程序的帧频超过2屏大小(每屏800*480)时,帧频将会开始降低。通常帧频的降低并不显著,除非填充率超过3.5屏的像素大小。可以通过观察帧频计数器的最后一个数字来判断当前帧频。重要的是要记住,UI线程的帧频永远不可能超过构图线程的帧频,因此如果填充率过高,将会影响应用程序的整体性能。   影响填充率的因素 每一个需要纹理的图形对象都会影响应用程序的填充率。纹理的像素数越多,填充率也越高。通常,影响填充率的有两个主要的因素。首先是基础表层,就是每一个未缓存对象周围的矩形。其次是缓存的所有元素,包括构图线程自动缓存的纹理,和开发者通过设置元素的位图缓存而缓存的元素。除了构图

silverlight游戏设计(四)角色/精灵篇之 -- 精灵的设计

精灵的呈现基础 silverlight的那套api并不是一个为游戏设计的,你找不到现成的”精灵”相关的类。 最简单的精灵用一个Image就可以充当,但游戏中总是存在各式各样的精灵,不同精灵又有不同的逻辑,为了方便设计我们有必要定义一些接口。 呈现器接口—IPresenter IPresenterCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->namespace Sopaco.Silverlight.GameFramewrok.Sprite{    /// <summary>    //

一个程序员第一节音乐课经历

上周三上午很偶然的机会. 接到原来音乐工作室导师李心杰的电话.说是帮我结算没有完成课时费清单.电话中李道出原委.一方面觉得我这样有头没尾退出甚是有些可惜. 不禁让我觉得有些受宠若惊. 因为对于我这个非科班出生 已经过了培养钢琴乐理知识最佳年龄 已经工作过的人来说.确实让我觉得有些意外. 刚开始我有些委婉相拒. 电话中李坚持让把她想法说完再做决定. 没想到她已经帮我联系好了北京一家音乐培训机构. 也说明我所谓特殊情况.我们相处时间也并不长. 李的做法这着实让我极为意外. 又极为难为情把那个不字说出口. 周六休息 到知春路心培训点报道. 见到现在倒是张. 一个看这极为面善40多岁职业女性接待我. 第一次见面我大概聊了我的情况. 这搞得我有些莫名的紧张. 这也许多多少少对自己音乐这方面只有热情而专业知识欠缺一种不自信的表现吧. 没想到张对我第一次见面评价还不错. 在她看来 工作N年之后 还能在这

盛大锦书注册到云梯的 C# 程序

我参加了盛大组织的“Bambook程序达人赛”,是通过博客园报名的。目前提交了两件参赛作品。 在参赛作品中需要实现“注册到云梯”的功能,如下图所示:   这是一个通用的功能,可以封装为一个类,以便各个参赛的 C# 程序调用。 根据盛大官方的 SDK 文档,要注册应用程序到云梯,有两种方法: 使用 RegApp.exe。 编辑云梯安装目录下的 bbapps.xml 文件。 我决定采用第二种方法,即编辑云梯安装目录下的 bbapps.xml 文件。 之所以不采用第一种方法,其中一个原因是第一种方法需要随程序一起发布 RegApp.exe。   好了,下面就是核心的 BambookAppsXml.cs 源程序文件:01: using System; 02: using System.Xml; 03: using System.IO; 04: using Micr

分享一个在线Word编辑的jQuery插件

.demo_block { border: 1px #000 solid; margin: 20px; padding: 20px; background-color: #FDFFCE; } b { color: Red; } code { color: Green; } i { font-weight: bold; font-size: 14.7; font-style: normal; } 在做OA或者工作流程的网站中,常常能够看到一些在线Word编辑进行文档处理的功能,这里我开发了一个在线Word编辑插件并且以此为例。   1.NTKO Word在线编辑器介绍: NTKO的官方网站:http://www.ntko.com/ NTKO OFFICE文档控件是拥有完全自主知识产权的ActiveX控件。使用NTKO Office文档控件,能够在浏览器中直接编辑Word,Exce

PowerShell 2.0之使用WMI管理Windows(二)PowerShell操作WMI

在PowerShell发布之前,标准的操作方法是使用编程脚本API调用一系列COM对象。调用COM客户端代码可以在各种语言中都能使用,只是典型的WMI客户端脚本代码使用VBScript编写,因为这样简单易行。代码会获取CIM对象的实例,并通过WQL查询和获取信息。结果是用标准的foreach循环获得的集合。下例为使用VBS获取winword.exe进程id的winword_pid.vbs脚本,代码如下: strComputer = "." classNamespace = "winmgmts:\\" & strComputer & "\root\cimv2" Set objWMIService = GetObject(classNamespace) query = "SELECT * from W

30天敏捷结果(26): 如何解决问题

“You don’t overcome challenges by making them smaller but by making yourself bigger.” —John C. Maxwell 你不能通过把挑战变小来克服它,而应该让自己变得更强大来战胜它     我们每个人都会遇到问题,问题是生活的一部分,它们总会不断地冒出来。与其躲避问题,我更加喜欢拥抱问题,积极地去应对它而不是逃避,基于这一点,最有效的事情就是学会解决问题的技术,成为有一个问题解决者。我在个人管理:问题应对之道中首次谈到问题,本篇把问题解决作为敏捷结果的一次练习再次出现。   你的结果:  学习解决问题的一种系统化的方法,成为一个有技巧的问题解决者     在30天敏捷结果:开篇中说到接下来我们将进行敏捷结果

WP7 App性能优化(11):检测应用程序性能(Ⅳ)

填充率测试示例 该示例允许你添加和移除移动的矩形以观察对填充率的影响。每个矩形是屏幕的1/8大小,因为应用了动画,所以会表现出纹理。 示例代码下载 运行此示例,会看到如下三个按钮: Add-添加一个矩形 Dlt-删除一个矩形 Hide-隐藏Hide和Add按钮,将Dlt按钮变为Show按钮 你将在屏幕右上角看到两个数字。第一个数字表示一个单独矩形所占的屏幕像素数,第二个数字表示总屏幕像素数(填充率)。 要测试该示例,尝试如下操作: 添加矩形直到填充率超过2,观察帧频的下降。 添加矩形直到帧频在45-60之间。单击Hide按钮,会看到帧频升高而填充率降低了。这是因为承载按钮的表层收缩了。底部的两个按钮消失后,图形表层只向下拉伸了约屏幕的10%,相对于按钮可见时的90%。点击Show按钮会使帧频恢复因为图形表层又增加了。 转到:WP7 App性能优化(0):索引页作者: M

Ruby on Rails 体验之旅(一)--安装

  最新心血来潮的想学一门新的东西,听说用ROR的开发效率会很高,所以就选择了ruby on rails,安装的时候真是不顺心,这里把自己的安装心得记下来: 1) 安装ruby        下载安装包:http://rubyforge.org/frs/?group_id=167,我下载的是rubyinstaller-1.8.7-p302.exe 装完后,可以用ruby -v 测试是否安装成功,如图,要是出现了版本 就说明安装成功了 2)安装rubygems       Rubygems是ruby的包管理器工具,它使得ruby包的安装十分简单,只需要一条命令就可以从远程服务器上下载相应的包,如果相应的应用包含其他扩展,rubygems 也会提示你从远程安装所依赖的扩

Ajax删除效果

在上一篇文章中,我们创建了一个Ajax留言板程序,在本文中,进一步优化这个程序,给留言板加上删除功能。效果正如你在 http://www.css88.com/demo/ajax-deleet/中看到的一样,只不过我们也要同时更新数据库的信息。   要删除数据库中指定的数据,则必须要有主键的值,否则数据库不知道删哪一条,于是,我们在添加留言的时候就要将刚刚持久到数据库中的id返回,并写到DOM中以便在删除的时候获取该id,则Ajax处理类中的添加方法修改后如下: 代码 Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->/// <summary>