找到相关内容 16
FCKEditor简化与FCK源代码分析
本次从学习的角度对FCKEditor源代码进行分析和作了部分修改:因FCKEditor是一个复杂的基于JS的开源软件,更多细节难以在文章中描述,可下载查看DEMO深入了解,希望对有需要的朋友带来帮助。同时因个人能力、时间、精力有限,不足之处还请指正,后继也会进一步完善本文
http://www.cyqdata.cn/cnblogs/article-detail-52870 
借助扩展方法简化参数合法性判断
有许多的方法需要对传入的参数进行合法性判断,比如下面这种 1 void AddItem(int rpIndex, Item rpItem)2 {3     if(rpIndex < 0)4   
http://www.cyqdata.cn/cnblogs/article-detail-52866 
如何利用Interception简化MVVM中的Model和ViewModel的设计
这一篇是“如何利用AOP简化MVVM中Model和ViewModel的设计”一文的姊妹篇。阅读本文之前,请一定要先阅读上一篇,否则你可能对有关问题理解不深。   上一篇说到,我们可以用AOP的方式,具体来说,我们使用了一个第三方的框架(PostSharp)来实现了代码注入。PostSharp的方式是静态注入,它是需要改变IL代码的。 请看下面这个截图,Customer类型里面的IL代码其
http://www.cyqdata.cn/cnblogs/article-detail-40755 
如何利用AOP简化MVVM中Model和ViewModel的设计
这一篇谈一个MVVM中的一个虽然小但却很实际的问题,就是如何简化Model和ViewModel的设计。这是我们在项目中总结提炼的一些做法。 【备注】关于MVVM的概念,并不是本文的重点。如果你对MVVM还不熟悉,可以参考这里。关于MVVM与之前的MVP,MVC设计模式的渊源和比较,还有目前主流的几个MVVM框架的大致情况,我最近可能再会抽时间另外整理一篇,有兴趣的朋友关注一下。 有用过MVVM的
http://www.cyqdata.cn/cnblogs/article-detail-40733 
条码扫描二维码扫描——ZXing android 源码简化
前言   最近公司的Android项目需要用到摄像头做条码或二维码的扫描,Google一下,发现一个以Apache License 2.0 开源的 ZXing项目。Zxing项目里的Android实现太过复杂多余东西太多,得对其进行简化。 前提条件   下载源代码:点击这里   编译核心库:Zxing的主页上有介绍具体步骤,大家也可以参照这篇博文:android 条码识别软件开
http://www.cyqdata.cn/cnblogs/article-detail-39489 
.NET 下的 jQuery UI 开源控件 - JQueryElement, 简化 js 脚本编写, 提供更方便的 ajax 调用[1]
jQuery UI 是使用 jQuery 开发的 javascript 脚本, 其中实现了一些简单易用的页面元素, 比如: 按钮, 日期框. 可以参考 http://jqueryui.com/ 查看如何使用 jQuery UI. JQueryElement 是在 .NET 下使用的 jQuery UI 控件. JQueryElement 中包含 Accordion, Autocomplete, B
http://www.cyqdata.cn/cnblogs/article-detail-38939 
利用OMF来简化数据文件的管理
      在没有OMF(托管文件)之前,数据库管理员在创建数据文件的时候,需要关心两个问题。一是该为这个数据文件取一个什么样的名字,二是需要考虑新创建的数据文件会不会与已经存在的数据文件重复。当企业的数据库比较大,有数百个数据文件时,这项工作就会变得非常的困难。为此需要采用一种机制,对数据文件进行自动管理。在Oracle数据库中就提供了OMF托管
http://www.cyqdata.cn/cnblogs/article-detail-38850 
Windows Phone 实用开发技巧(2):使用TombstoneHelper简化墓碑操作
由于Windows Phone 目前不支持第三方应用程序在后台运行,微软提供了另一种方法称之为Tomstone,虽然在Mango更新中支持了所谓的“多任务”,但是我们还是需要处理墓碑化,有没有一些方法简化我们的墓碑化操作呢,当然是有。 在CodePlex就有这么一个开源项目,TombStoneHelper 下面以一个具体的Demo演示如何使用这个帮助类库简化我们的墓碑化代码
http://www.cyqdata.cn/cnblogs/article-detail-38383 
使用 jQuery 简化 Ajax 开发
jQuery 是什么?   jQuery 由 John Resig 创建于 2006 年初,对于任何使用 JavaScript 代码的程序员来说,它是一个非常有用的 JavaScript 库。无论您是刚刚接触 JavaScript 语言,并且希望获得一个能解决文档对象模型(Document Object Model,DOM)脚本和 Ajax 开发中一些复杂问题的库,还是作为一个厌倦了 DOM 脚本
http://www.cyqdata.cn/cnblogs/article-detail-37617 
改善C#程序的建议10:使用Parallel简化Task的使用
在命名空间System.Threading.Tasks下,有一个静态类Parallel简化了在同步状态下的Task的操作。Parallel主要提供了3个有用的方法:For、ForEach、Invoke。 For方法,主要用于处理针对数组元素的并行操作,如下: static void Main(string[] args) { int[] num
http://www.cyqdata.cn/cnblogs/article-detail-37526 
改善代码设计 —— 简化条件表达式(Simplifying Conditional Expressions)
1. Decompose Conditional (分解条件式) 解释:       "复杂的条件逻辑" 是导致复杂性上升最常见的地方, "条件表达式中堆积的计算过程", "条件式表达得不简洁"等等都是造成复杂的原因. Decompose Conditional 用于将这些复杂的元素从条件表达式中分离出去, 仅在条件表达式中调用简洁的函数. &n
http://www.cyqdata.cn/cnblogs/article-detail-37360 
如何理解与简化jquery的closest函数
在实现delegate方法中,有一个很重要的辅助函数叫closest,虽然现在它归类为遍历节点这个模块中。这个函数实现得非常复杂,洋洋洒洒近50行,完全不符合极限编程的规矩。 closest: function( selectors, context ) { var ret = [], i, l, cur = this[0]; // Array if ( jQuery.isA
http://www.cyqdata.cn/cnblogs/article-detail-37252 
使用 Castal DynamicProxy 简化 Silverlight 数据绑定
大家都知道, 在使用 Silverlight 数据绑定的时候, 为了使源对象的更改能够传播到目标,源必须实现 INotifyPropertyChanged 接口。INotifyPropertyChanged 具有 PropertyChanged 事件,该事件通知绑定引擎源已更改,以便绑定引擎可以更新目标值。 下面是一个典型的例子: public class UserModel : INotif
http://www.cyqdata.cn/cnblogs/article-detail-31854 
合理使用“.NET扩展方法”来简化代码(例子:空值判断,利用扩展方法实现LINQ操作符ForEach)
我们先简单介绍扩展方法的定义,扩展方法是用来在类型定义完成后再继续为其添加新的方法。扩展方法使您能够向现有类型“添加”方法,而无需创建新的派生类型、重新编译或以其他方式修改原始类型。 扩展方法是一种特殊的静态方法,但可以像扩展类型上的实例方法一样进行调用。你只要在静态类的静态方法的参数前加上this,就可以生成这个类的扩展方法。 如果你曾经开发过详细资料
http://www.cyqdata.cn/cnblogs/article-detail-8273 
案例实战zencart1.38a支付模块简化Fast and Easy Checkout配置
zencart默认的支付功能是三步以上才能进入paypal等支付页面的,非常繁复,所以,有必要实现一个一页买单(one page checkout)的功能,现在,以我的成功经验,给大家讲一个成功的案例吧,绝对能弄好,如果有看不明白的可以找我,只要看完我的教程,一般是不会有问题了。 虽然可以修改checkout_shipping的内容实现了one page checkout的功能,但是一般的phpe
http://www.cyqdata.cn/cnblogs/article-detail-3444 
使用匿名委托,Lambda简化多线程代码
      .net中的线程也接触不少了。在多线程中最常见的应用莫过于有一个耗时的操作需要放到线程中去操作,而在这个线程中我们需要更新UI,这个时候就要创建一个委托了来更新UI了,不然会报错的。下面我们就来设计一个简单的场景:窗体上有一个按钮和进度条,按钮按下后启动一个线程让进度条滚动。需要说明一下的是,我们这里不讨论使用匿名委托,lambda的好坏,我们只有一个目标就是使得我们的程序:短点,短点,再短点。   最“朴素”写法         我刚开始没有掌握匿名方法这些就是按照下面这些写的,说实话很痛苦。后来接触了匿名表达式,lambda后几乎都不想再想写这样的东西了,除非特殊的一些情况,比如需要自己定义委托。如果您现在还在按照下面这样写,那么这篇文章对你或许有
http://www.cyqdata.cn/cnblogs/article-detail-241