摘要: 设计模式——抽象工厂模式需求在工厂方法模式中,一个具体的工厂负责创建一个单一的产品。如果有多个产品要创建,就需要多个不同的工厂类,即使这些产品有某些必然的联系,如多个产品家族或者多个配套产品系列,也是需要多个看起来分散的工厂类。举个实际的例子,游戏中男孩的帽子、鞋、衣服区别与女孩的帽子、鞋、衣服,各成一个系列,如果使用工厂方法模式来实现,那么那些实体工厂类就在代码上不能体现其配套的内在来年西,看起来太分散了。而抽象工厂模式就是针对多个产品结构而言的,它主要帮助客户一次创建一个家族的多个产品对象。定义抽象工厂模式为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。又称为Kit模 阅读全文
posted @ 2012-10-02 16:20 萨迦狐 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 设计模式——工厂方法模式需求简单工厂模式,简单地实现了对象创建工作和方法使用的分离,实现了模块的责任分配,但是所有对象的创建工作都集中到了那个工厂类里。但是,如果需要创建的对象很多,这个工厂类就会非常庞大,仍然不利于后期的代码维护,怎么办?根据面向对象的思想,应该继续进行职责的分配和封装,也就是说,如果把每一个产品都由一个具体的工厂来创建,把简单工厂模式中那个庞大的工厂拆分成一个个小工厂类,这样每个具体的工厂类只负责某类对象的创建,职责就分配开了,这就是工厂方法模式。定义工厂方法模式(Factory Method pattern)相对于简单工厂模式来说,就是把一个单一的工厂类,分成了多个具体的 阅读全文
posted @ 2012-10-02 04:06 萨迦狐 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 设计模式——简单工厂模式需求在程序设计中,常常需要把对象的创建与使用分离开来,创建型模式都是为了解决此类问题。简单工厂模式是所有工厂模式中最简单的一个,是学习其它模式的基础。许多时候,我们需要一个类来负责根据情况简单地创建类的对象,而客户程序负责使用即可,就可以用到这种模式。定义简单工厂由3部分组成:(1)首先定义一个抽象产品类来描述产品规格;(2)再定义各具体的产品类实现抽象产品类描述的规格;(3)再定义一个静态的工厂方法负责根据传入参数来创建具体的实体产品对象,这个静态工厂方法最后写在一个单独的类里。由于这个工厂方法是静态的,所以简单工厂模式又名静态工厂方法模式(Static Factor 阅读全文
posted @ 2012-10-02 02:19 萨迦狐 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 参考来源:http://www.jb51.net/css/33920.html搜集整理:sagahu@163.com时间:01-05 23:17:22点评:CSS为一些特殊效果准备了特定的工具,我们称之为“伪类”。其中有几项是我们经常用到的,下面我们就详细介绍一下经常用于定义链接样式的四个伪类。定义链接样式 CSS为一些特殊效果准备了特定的工具,我们称之为“伪类”。其中有几项是我们经常用到的,下面我们就详细介绍一下经常用于定义链接样式的四个伪类,它们分别是::link:visited:hover:active 因为我们要定义链接样式,所以其中必不可少的就是超级链接中的锚标签——a,锚标签... 阅读全文
posted @ 2012-10-02 00:48 萨迦狐 阅读(120) 评论(0) 推荐(0) 编辑
摘要: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" ><head> <title>table标签与样式的例子</title> <style type="text/css"> 阅读全文
posted @ 2012-10-02 00:44 萨迦狐 阅读(292) 评论(0) 推荐(0) 编辑
摘要: jQuery对象是jQuery库封装DOM对象而成的javascript对象,是jQuery库特有的。jQuery对象可以有其对应的DOM对象,但是与其DOM对象有很大的区别。jQuery对象可以使用jQuery库的任何方法,而不能使用相应DOM对象的任何方法。当然DOM对象也不能使用jQuery库里的方法。例如: $("#foo").html(); // 获取id为foo的元素内的html代码。html()是jQuery里的方法。这段代码等同于: document.getElementById("foo").innerHTML; 所以,二者是不可以混用 阅读全文
posted @ 2012-10-02 00:40 萨迦狐 阅读(197) 评论(0) 推荐(1) 编辑
摘要: jQuery选择器与CSS选择器相比较:从写法上看,jQuery选择器继承CSS选择器的绝大部分风格,并且更加丰富而强大;从功能上看,CSS选择器找到元素后添加样式,而jQuery选择器找到元素后添加行为;jQuery选择器具有跨浏览器兼容性。1 基本选择器(Basic)选择器说明返回值示例#idid选择器:根据给定的id匹配一个元素单个元素$("text1")选取id为text1的元素.class类选择器:根据给定的类名匹配元素,选取拥有此class的元素集合元素$(".test")选取所有拥有class为test的元素element标签选择器:根据给 阅读全文
posted @ 2012-10-02 00:39 萨迦狐 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 官网:http://jquery.comGoogle jqueryjs下载:jqueryjsFirebug官网:http://getfirebug.comDreamweaver支持jQuery自动提示代码功能插件下载:http://xtnd.us/dreamweaver/jqueryvs2008支持jQuery自动提示代码功能补丁下载:http://archive.msdn.microsoft.com/KB958502/Release/ProjectReleases.aspx?ReleaseId=1736网文: 选择器、过滤器使用摘要 阅读全文
posted @ 2012-10-02 00:36 萨迦狐 阅读(72) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于Ajax操作的一些补充功能charset:gb2312调用模块:搜集整理:sagahu@163.com最后修订:2011-12-06*/// 根据实际的浏览器类型,智能创建XMLHttpRequest对象。function createXMLHttpRequest() { var req; if (window.XMLHttpRequest) { // code for Firefox, Opera, IE7, etc. req = new XMLHttpR 阅读全文
posted @ 2012-10-02 00:35 萨迦狐 阅读(318) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于xml操作的一些补充功能charset:gb2312调用模块:搜集整理:sagahu@163.com最后修订:2011-12-06*/// 浏览器类型变量var isIe = window.ActiveXObject;var isMoz = document.implementation && document.implementation.createDocument;// 根据实际的浏览器类型,智能创建XMLDOM对象function X 阅读全文
posted @ 2012-10-02 00:33 萨迦狐 阅读(174) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于cookie操作的一些补充功能charset:gb2312调用模块:搜集整理:sagahu@163.com最后修订:2013-01-22*/function addCookie(name, value, expireDays, path, domain) { delCookie(name); expireDays = expireDays ? expireDays : 30; path = path ? path : "/"; var d 阅读全文
posted @ 2012-10-02 00:31 萨迦狐 阅读(199) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于javascript字符串操作的一些补充功能charset:gb2312调用模块:stringutils.js搜集整理:sagahu@163.com最后修订:2011-12-12*/// 把给定非负整数按照指定位数要求格式化为编码function coding(uint, len) { var code = '00000000000000000000000' + uint.toString(); return code.substring(c 阅读全文
posted @ 2012-10-02 00:23 萨迦狐 阅读(246) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于数据验证的一些补充功能charset:gb2312调用模块:stringutils.js搜集整理:sagahu@163.com最后修订:2011-12-15*/function isSpace(str) { var strComp = str; try { if (strComp == " " || strComp == "" || strComp == " " || strComp == null 阅读全文
posted @ 2012-10-02 00:22 萨迦狐 阅读(228) 评论(0) 推荐(0) 编辑
摘要: /* ===========================================================模块说明:对于javascript字符串操作的一些补充功能charset:gb2312调用模块:搜集整理:sagahu@163.com最后修订:2011-12-12*/String.prototype.Repeat = function(num) { return repeat(this, num); }// 按照指定次数重复字符串function repeat(str, num) { var r = ''; while (num) { if (num & 阅读全文
posted @ 2012-10-02 00:19 萨迦狐 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 应用开发平台与代码生成工具感想聪明人干重复事情会怎样?作程序员十多年了,经历了太多的规律性需求的重复建设。我想我是个聪明人,因为每次干这种重复事情,都需要忍耐枯燥而又必须细心,每次我都痛不欲生。我非常需要一些善解人意的辅助开发工具,实在是需要解脱或者减少那种痛苦。必须积累可复用模块必要性不容置疑,这个世界不允许每次重复写已经写过一次的东西,否则你就会苦守清贫。显然DBHelper就是这样的东西,本人就总结MS Access、MS SQL Server、Oracle、MySQL四种数据库的规律,写了一个通用于它们的mySagasoft.DBUtility2010。对于加密保护数据,则写了个myS 阅读全文
posted @ 2012-10-02 00:13 萨迦狐 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 设计模式——总介分类GoF总结出来23种设计模式,大体上可以分为3大类,分别从对象的创建、对象的结构及对象的行为这3个方面来总结代码编写经验。第一大类:创建型模式 在程序设计中,如果将对象的创建和使用都放在客户程序中一起执行,首先会使得客户的资源效率占用很大;客户程序代码增大,又使得客户程序的维护费用加大。所以很多时候有必要把对象的创建与使用分离开来,创建型模式就是为了解决这类问题,正所谓“分而治之”,大家都省心。这样做也可以满足一些特殊的需求。 01.00 简单工厂模式(Simple Factory) 01.01 工厂方法模式(Factory Method) 01.02 抽象工厂模式(Abs 阅读全文
posted @ 2012-10-02 00:10 萨迦狐 阅读(187) 评论(0) 推荐(0) 编辑