|
2012年6月19日
摘要:
1.概述搜索引擎(search engine)是指根据一定的策略、运用特定的计算机程序搜集互联网上的信息,在对信息进行组织和处理后,为用户提供检索服务的系统。2.搜索引擎分类按照信息搜集方法和服务提供方式的不同,搜索引擎系统可以分为三大类:全文搜索引擎(Full Text Search Engine)、目录索引类搜索引擎(Search Index/Directory)和元搜索引擎(Meta Search Engine)。2.1 全文搜索引擎全文搜索引擎是名副其实的搜索引擎,国外代表有Google,国内则有著名的百度搜索。它们从互联网提取各个网站的信息(以网页文字为主),建立起数据库,并能检索与 阅读全文
摘要:
大数据量的问题是很多面试笔试中经常出现的问题,比如baidu google 腾讯 这样的一些涉及到海量数据的公司经常会问到。 下面的方法是我对海量数据的处理方法进行了一个一般性的总结,当然这些方法可能并不能完全覆盖所有的问题,但是这样的一些方法也基本可以处理绝大多数遇到的问题。下面的一些问题基本直接来源于公司的面试笔试题目,方法不一定最优,如果你有更好的处理方法,欢迎与我讨论。 1.Bloom filter 适用范围:可以用来实现数据字典,进行数据的判重,或者集合求交集 基本原理及要点: 对 于原理来说很简单,位数组+k个独立hash函数。将hash函数对应的值的位数组置1,查找时如果发现所有 阅读全文
2012年4月28日
摘要:
在VS2010中,单元测试的功能很强大,使得建立单元测试和编写单元测试代码,以及管理和运行单元测试都变得简单起来,通过私有访问器可以对私有方法也能进行单元测试,并且支持数据驱动的单元测试。1、建立单元测试项目1.1、从被测试代码生成单元测试1)实例:创建VC#模式下的控制台应用程序,工程名为CUnitTest2)输入简单的加、减、乘、除函数代码,如下图所示3)可按如下步骤建立单元测试(1)在Add方法体内,单击鼠标右键,在菜单中选择"创建单元测试",(2)在出现的"创建单元测试"界面中,Add方法被自动勾上,表示要为这个方法创建单元测试代码的基本框架,单 阅读全文
2012年3月24日
摘要:
触发器点滴判断操作类型if exists (select 1 from inserted) and exists (select 1 from deleted)begin -- updateendif exists (select 1 from inserted) and not exists (select 1 from deleted)begin --insertend 阅读全文
摘要:
方法一:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->1 select* 2 from sysobjects o, syscomments s 3 where o.id = s.id 4 andtextlike'%yyao%' 5 and o.xtype ='P'复制代码将yyao替换成自己要查找的文本方法二:Code highlighting produced by Actipro CodeHighligh 阅读全文
摘要:
SQL Server FOR XML PATH 语句的应用在SQL Server中利用 FOR XML PATH 语句能够把查询的数据生成XML数据,下面是它的一些应用示例。?12345DECLARE @TempTable table(UserID int , UserName nvarchar(50)); insert into @TempTable (UserID,UserName) values (1,'a') insert into @TempTable (UserID,UserName) values (2,'b') select UserID,Use 阅读全文
2012年3月21日
摘要:
目录一 编码规范的作用二 编码规范不是“物神”三 编写编码规范的一些建议四 编码规范参考 作为软件开发者,我们可以开发低等级的软件,但不能开发低质量的软件。所以,如何实施质量保证,是我们关注的主要问题之一,而编码规范则是实施质量保证的第一步。 编码规范已经成为一个老生常谈的问题,几乎每个项目,每家公司都会定义自己的编码规范。但在真正实施时,却在有意或无意地违背编码规范。程序员,不喜欢改变自己的编程习惯。加之,管理者对质量控制不足,导致编码规范往往形同虚设。有些人会认为:遵守编码规范不能给项目带来利益,也不能让客户看到我们为此付出的努力,其完全是团队自发的行为,没有必要做硬性的要求。还有些人.. 阅读全文
2012年2月7日
摘要:
新服务器发布网站时,遇到如下情况:只有HTML能正常访问,其他诸如WebService,WCF等都不能访问,显示:Server Application Unavailable 的错误。进入“事件查看器”,写明:没有权限访问System.Web。但是我已经将Windows的文件夹的权限的用户设为了与访问该网站的用户的权限一致。另外网上所传的新建应用程序池也不行。最后,我的解决办法是:应用程序池的属性-》标识-》预定义账户-》改为“本地系统”,遇到安全提示不用去理他。 阅读全文
2012年2月1日
摘要:
第一:新建一个类(Class)Win32Native.cs代码如下:using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace WpfApplication1 { public class Win32Native { [System.Runtime.InteropServices.DllImport("user32.dll", EntryPoint = "SetParent")] public extern static In 阅读全文
2011年12月6日
摘要:
在开始之前,先熟悉几个类及部分属性、方法:CSharpCodeProvider、ICodeCompiler、CompilerParameters、CompilerResults、Assembly。 一、CSharpCodeProvider 提供对C#代码生成器和代码编译器的实例的访问。如果要动态生成VB代码,可以使用VBCodeProvider。 CreateCompiler():获取编译器的实例。 二、ICodeCompiler 定义用于调用源代码编译的接口或使用指定编译器的CodeDOM树。每种编译方法都接受指示编译器的CompilerParameters对象,并返... 阅读全文
2011年11月24日
摘要:
应用的可扩展性、可维护性和灵活性取决于应用架构的质量。不幸的是,这往往被视为马后炮。概念设计和原型变成了大规模的应用,许多应用的基础基本就是示例代码的复制与粘贴,这很诱人,因为这可以让你在项目在开始阶段有一个快速的进度。 然而,节省下来的时间相对于项目后期的维护、扩展甚至重构应用的时间来说,算不得什么。比较好的的方式是写一个可靠的架构,在实施前编写好遵循的约定和定义应用的视图、模型、存储和控制器等。在这篇文章,我们将会看到一个受欢迎的应用并讨论如何构建用户接口,从而创建可靠的架构。代码结构应用程序架构体系会为实际类和框架大妈提供结构和一致性。建立一个好的架构有以下主要好处:■ 每个应用的工作方 阅读全文
2011年11月9日
摘要:
一、树面板简单示例 Javascript代码 vartree=Ext.create('Ext.tree.Panel',{ title:'树面板简单示例', width:150, height:100, renderTo:Ext.getBody(), root:{ text:'树根',//节点名称 expanded:true,//默认展开根节点 children:[{ text:'节点一',//节点名称 leaf:true//true说明为叶子节点 },{ text:'节点二',//节点名称 leaf:true//t 阅读全文
摘要:
一、grid的例: Javascript代码 //配置表格列 {header:"姓名",width:50,dataIndex:'name'}, {header:"组长",width:50,dataIndex:'leader', xtype:'booleancolumn',//Ext.grid.column.Boolean布尔列 trueText:'是', falseText:'否'}, {header:"生日",width:100,dataIndex: 阅读全文
摘要:
1、创建Ext.data.Model数据实体模型 Javascript代码 //注册用户数据模型User Ext.regModel('User',{ fields:[//定义模型字段 {name:'name',type:'string'}, {name:'age',type:'int'}, {name:'phone',type:'string'} ] }); //创建User模型的实体对象 varuser=Ext.ModelMgr.create({ name:'tom' 阅读全文
摘要:
1、append方法 Javascript代码 vartpl=newExt.Template(//定义模板 '<tableborder=1cellpadding=0cellspacing=0>', '<tr><tdwidth=90>姓名</td><tdwidth=90>{0}</td></tr>', '<tr><td>年龄</td><td>{1}</td></tr>', '<tr 阅读全文
摘要:
一、addListener方法 Javascript代码 varbutton=Ext.get('btn'); button.addListener('click',hello1);//绑定事件处理函数 button.addListener('click',hello2);var button = Ext.get('btn');button.addListener('click',hello1);//绑定事件处理函数button.addListener('click',hello2);二、ExtJS支 阅读全文
摘要:
1、获取页面上的HTML元素,并进行处理,使用Ext.get('elid')方法,参数为HTML元素的id值,由此可对获取到的元素进行各种处理。例如: Javascript代码 varel=Ext.get("the-id"); varappendEl=Ext.get("the-id-append"); functionfn1(){ Ext.Msg.alert("提示","您在id为'the_id'的Element上按下了ctrl+c键"); } el.addCls("spe 阅读全文
摘要:
<HTML><HEAD><TITLE>远程数据源的组合框示例</TITLE><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"><linkrel="stylesheet"type="text/css"href="extjs4/resources/css/ext-all.css"/><scripttype="text/javascrip 阅读全文
摘要:
Html代码 <HTML><HEAD><TITLE>提示信息</TITLE><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"><linkrel="stylesheet"type="text/css"href="http://www.cnblogs.com/ext-4.0/resources/css/ext-all.css"/><scriptt 阅读全文
摘要:
一、基础知识 1、JAON对象的例子 Javascript代码 <scripttype="text/javascript"> varperson={//json对象定义开始 name:'tom',//字符串 age:24,//数字 sex:'man', married:false,//布尔值 books:[//数组,在数组中又嵌入了两个json对象 {name:'历史',price:30}, {name:'文学',price:25} ] }//json对象定义结束 //通过点号表示法来取得JSON对 阅读全文
摘要:
Ext.create('Ext.panel.Panel',{ title:'面板头部(header)', tbar:['顶端工具栏(toptoolbars)'], bbar:['底端工具栏(bottomtoolbars)'], height:200, collapsible:true, collapseDirection:'left', width:300, frame:true, renderTo:Ext.getBody(), bodyPadding:5, bodyStyle:'background-co 阅读全文
2011年11月8日
摘要:
首先先上一个Ext布局类型的继承图:Ext.layout.ContainerLayoutExt.layout.AnchorLayoutExt.layout.AbsoluteLayoutExt.layout.FormLayoutExt.layout.BorderLayoutExt.layout.ColumnLayoutExt.layout.FitLayoutExt.layout.AccordionExt.layout.CardLayout Ext.layout.TableLayout 再上一个Ext.Container及其子类继承图:Ext.Container Ext.Viewport Ext. 阅读全文
摘要:
目标:介绍Panel布局的各种类 Panel布局类在VS中的介绍内容:Panel布局类有10种:容器布局,自适应布局,折叠布局,卡片式布局,锚点布局,绝对位置布局,表单布局,列布局,表格布局,边框布局 1,Ext.layout.ContainerLayout 容器布局 提供容器作为布局的基础逻辑,通常会被扩展而不通过new关键字直接创建,一般作为默认布局存在 2,Ext.layout.FitLayout 自适应布局使用layout:'fit' 将使面板子元素自动充满容器,如果有多个子面板也只会第一个会被显示 3,Ext.layout.AccordionLayout 折叠布局 ( 阅读全文
2011年11月4日
摘要:
//验证输入为数字 02private void txt_time_KeyDown(object sender, KeyEventArgs e) 03{ 04if (!((e.Key >= Key.D0 && e.Key <= Key.D9) || (e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9))) 05{ 06e.Handled = true; 07} 08} 0910//屏蔽粘贴非法字符 11private void txt_time_TextChanged(object sender, 阅读全文
2011年10月25日
摘要:
如果有时间加了很多overlayItem,由于缩放问题 有些不能显示为了全部显示Java代码 publicvoidcenterOverlays(){ intminLat=81*MapStoresController.MAP_SCALE; intmaxLat=-81*MapStoresController.MAP_SCALE; intminLon=181*MapStoresController.MAP_SCALE; intmaxLon=-181*MapStoresController.MAP_SCALE; for(inti=0;i<overlayItems.size();i++){ Sto 阅读全文
摘要:
类 OverlayItem java.lang.Object∟ com.baidu.mapapi.OverlayItempublic class OverlayItemextends java.lang.ObjectItemizedOverlay的基本组件。字段摘要 类型名称static intITEM_STATE_FOCUSED_MASKbitset位: 标识该overlay item处于焦点选中状态static intITEM_STATE_NORMAL_MASKbitset位:表明该overlay item处于正常状态static intITEM_STATE_PRESSED_MASKbit 阅读全文
2011年9月20日
摘要:
现在总结一下android的selector的用法。首先android的selector是在drawable/xxx.xml中配置的。先看一下listview中的状态:把下面的XML文件保存成你自己命名的.xml文件(比如list_item_bg.xml),在系统使用时根据ListView中的列表项的状态来使用相应的背景图片。drawable/list_item_bg.xml复制到剪贴板XML/HTML代码<?xmlversion="1.0"encoding="utf-8"?><selectorxmlns:android="h 阅读全文
2011年9月14日
摘要:
代码如下:1、自定义DialogpublicclassSelectDialogextendsAlertDialog{publicSelectDialog(Contextcontext,inttheme){super(context,theme);}publicSelectDialog(Contextcontext){super(context);}@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.slt_cnt_t 阅读全文
2011年9月9日
摘要:
说明android:id 为控件指定相应的IDandroid:text指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串android:gravity指定View组件的对齐方式,比如说居中,居右等位置 这里指的是控件中的文本位置并不是控件本身android:layout_gravity 指定Container组件的对齐方式.比如一个button 在linearlayout里,你想把该button放在靠左、靠右等位置就可以通过该属性设置.以button为 例,android:layout_gravity="right"则button靠右a 阅读全文
2011年8月26日
摘要:
这个示例演示了GridSplitter控件的使用。GridSplitter派生于Thumb,只能使用于Grid中,而且要指定它所在的row和column位置(以及行和列的span):GridSplitter split = new GridSplitter();split.Width = 6;grid.Children.Add(split);Grid.SetColumn(split, 2);Grid.SetRow(split, 1);GridSplitter可以和其它元素共享相同的单元格,这就存在谁遮挡了谁的问题——后出现的元素总是在前面,为此,需要设置margin,以避免重叠:split.M 阅读全文
2011年7月27日
摘要:
XPath语法 在C#中使用XPath示例 XPath可以快速定位到Xml中的节点或者属性。XPath语法很简单,但是强大够用,它也是使用xslt的基础知识。示例Xml:view sourceprint?01<?xml version="1.0" encoding="utf-8" ?> 02<pets> 03<cat color="black" weight="10"> 04<price>100</price> 05<desc>this is 阅读全文
2011年7月26日
摘要:
XSL即可扩展的样式表文件。 可以格式化xml的显示,也可以将xml转换成需要的另一种格式。学习XSL必须熟悉XPath。XSL和XPath一样简单强大,容易学习。1. XSL既然可以格式化xml的显示样式,我们先来看如何在xml中引用xsl文件如下代码示例:<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="url.xsl"?>只需在xml文件的文档声明后面添加<?xml-style 阅读全文
摘要:
漫谈SQL Server中的标识列(一)一、标识列的定义以及特点SQL Server中的标识列又称标识符列,习惯上又叫自增列。该种列具有以下三种特点:1、列的数据类型为不带小数的数值类型2、在进行插入(Insert)操作时,该列的值是由系统按一定规律生成,不允许空值3、列值不重复,具有标识表中每一行的作用,每个表只能有一个标识列。由于以上特点,使得标识列在数据库的设计中得到广泛的使用。二、标识列的组成创建一个标识列,通常要指定三个内容:1、类型(type)在SQL Server 2000中,标识列类型必须是数值类型,如下:decimal、int、numeric、smallint、bigint 阅读全文
摘要:
WPF快速指导6:触发器 本文摘要: 1:属性触发器; 2:数据触发器; 3:事件触发器; Style、ControlTemplate 和 DataTemplate 都有触发器集合。 属性触发器只检查WPF从属属性,而数据触发器则可检查任何一种可绑定的属性。属性触发器一般用来检查WPF可视元素的属性,而数据触发器则通常用来检查不可视对象的属性。 属性触发器:通过此机制,一个属性的更改会在另一个属性中触发即时或动态更改。 数据触发器:通过此机制,事件会在属性中触发动态更改。 数据触发器:EventTrigger,它根据事件的引发来启动一组操作,但这类操作仅限于动画。一:属性触发器 查看代码片段1 阅读全文
2011年6月14日
摘要:
如果自己来做一个UI框架,我们会首先关注哪些方面?我想UI框架主要处理的一定包括两个主要层次的内容,一个是数据展现,另一个就是数据操作,所以UI框架必须能够接收各种不同的数据并通过UI界面展现出来,然后可以通过控件行为来操作这些数据,也就是UI框架的数据(Data)和行为(Behavior)。 本篇从总体上讲解一下WPF如何处理和操作Data,看完之后大家应该对WPF框架如何把数据转变为展现界面有初步的认识,这也是WPF的核心设计之一。 数据(Data) 以前的UI框架的控件对控件数据类型都有规定,按钮上显示的是文本或者加上一个图片,下拉框显示的都是字符串或者带上一个object类型属性的作为 阅读全文
2011年6月10日
摘要:
概要:将所有的VM在加载到Application的Static Resource中,然后在View中用标签指定。实现:1)采用特性指定要添加到StaticResource中的对象view sourceprint?publicclassStaticResourceAttribute : Attribute { publicstringKey { get; set; } publicStaticResourceAttribute(stringkey) { this.Key = key; } }2)从当前的程序集中,把所有标记了StaticResourceAttribute的VM加载到AppReso 阅读全文
摘要:
一、背景:与用户界面 (UI) 相关的最大的问题就是大量的凌乱的代码,原因两个:(1) 用户界面包含负责的逻辑用于维护界面相关对象;(2) 其次也包含了应用程序状态的维护。用户界面的3大问题:状态 (State) , 逻辑 (Logic) ,同步 (Synchronization),其中状态是用户界面最关心的问题之一。二、简述MVC、MVP、MVVM(1) MVC:模型-视图-控制器(Model View Controller),它强制性的使应用程序的输入、处理和输出分开。(2) MVP:模型-视图-表现类(Model-View-Presenter)(3) MVVM:模型-视图-视图模型(Mo 阅读全文
摘要:
Model-View-ViewModel (MVVM) 设计模式描述了构建 WPF 或 Silverlight 应用程序的常用方法。它还是一款构建应用程序的强大工具,以及一种与开发人员讨论应用程序设计的通用语言。虽然 MVVM 确实很有用,但它发展时间不长,用户尚未形成正确的认识。在MVVM模式中,你需要一个为View量身定制的model,那么这个model实际上就是上图ViewModel。ViewModel包含所有UI所需要的接口和属性,这样只需要通过Binding使他们进行关联,就可以使二者之间达到松散耦合,所以这样一来,UI就可以由UI专业人员用design和blend来实现(当然很多效 阅读全文
2011年5月26日
摘要:
在wpf中,在创建完控件之后,系统开始匹配控件所用的Style或者template。在程序中,可以用GetTemplateChild或者FindName来获得Resource中用x:Name="名字"声明的对象。 FindName是公共方法,而非受保护方法,它使用恰当的名称范围措施,从而可以访问某个元素中的模板并在其中查找命名项。 FindName()首先评估该FrameworkElement实例是否包含一个命名范围。如果该实例是一个xaml文件的root,则它包含一个命名范围。然而,如果该实例不包含一个命名空间,该方法则遍历可视树(visual tree),查找最近的命名 阅读全文
摘要:
WPF 4 中DataGrid的模板列做双向数据绑定时,需要在绑定中指定UpdateSourceTrigger,如下:(WPFToolkit February 2010)<DataGridVirtualizingStackPanel.IsVirtualizing="True"VirtualizingStackPanel.VirtualizationMode="Recycling"Name="dataGrid1"AutoGenerateColumns="False"ItemsSource="{Bind 阅读全文
|