摘要:
前言一直比较喜欢收集网页特效,很多时候都会遇到CSS被压缩过的情况,这时查看起来就会非常不方便,有时为了减少文件大小,也会对自己的CSS进行压缩,网上提供这样服务的很多,但都不尽如人意,因此打算自己动手写一个JS来进行CSS的格式化和压缩原理CSS的结构如下:选择器{ css属性声明:值;}复制代码所以对CSS格式化也就比较简单,大致分为以下几步;1、把多个空格合并成一个,去掉换行2、对处理后的字符串按"{"进行分组3、遍历分组,对含有"}"的部分再次以"}"进行分组4、对分组后的数据进行处理,主要是加上空格和换行对CSS压缩就比较简
阅读全文
posted @ 2012-03-26 16:05
HackerVirus
阅读(284)
推荐(0)
摘要:
javascript框架有什么功能,这个不是框架作者随意决定,这与人们经常用JS做什么事直接相关。 javascript框架是从common.js这样工具函数集演变过来,最重要的特征是实用。由于框架作者肯定是从 一线开发人员过来的,这个他心里有数,再结合主流框架的功能调查,就万无一失了。jQueryjQuery强在它专注于DOM操作的思路一开始就是对的,以后就是不断在兼容性,性能上进行改进。ajax 数据交互(1.5来自社区)attributes 属性操作,共分className, 表单元素的value值,属性与特征四大块。callbacks 函数列队core 种子模块,命名空间,链式结构,
阅读全文
posted @ 2012-03-26 09:54
HackerVirus
阅读(207)
推荐(0)
摘要:
今天在项目中要用到简单的MessageBox的使用。在Ext.net中没有Winform那么简单,直接写MessageBox.show()的方法。于是就去examples.ext.net的例子网站找,想找到个实际能用的。 地址:http://examples.ext.net/#/MessageBox/Basic/ButtonsConfig/实例中,使用的方法貌似挺复杂的。前台.aspx文件中<%@ Page Language="C#" %><%@ Register Assembly="Ext.Net" Namespace="E
阅读全文
posted @ 2012-03-25 23:13
HackerVirus
阅读(189)
推荐(0)
摘要:
提高性能最好最快的办法当然是通过缓存来改善,对于任何一个web开发者都应该善用缓存。Asp.net下的缓存机制十分强大,用好缓存机制可以让我们极大的改善web应用的性能,下面是一些总结的缓存的知识点,与大家分享交流:1.页面缓存 要实现页面输出缓存,只要将一条 OutputCache 指令添加到页面即可。 <%@ OutputCacheCacheProfile=" "NoStore="True | False"Duration="#ofseconds"Shared="True | False"Location
阅读全文
posted @ 2012-03-25 23:08
HackerVirus
阅读(162)
推荐(0)
摘要:
一. 问题的背景 动态系统的要求之一,是不同模块可以根据自身需求自动组装,这往往通过配置文件或用户选择进行。 这个基本问题在前面的文章中已经讲述过了。 但新的问题来了,我们定义了不同的插件A,B,C,那么,不同插件之间的通信如何进行? 如果系统本身的框架非常明晰而且不易更改,那么面向固定接口的方法是最简单方便的。 这也是大部分插件系统在“主结构”上使用的做法。 但是,如果系统框架本身非常易变,连他们之间交互的接口都会随着问题的不同而不同。这就好像,系统中包含不同种类的插座和插头,我们需要自动将符合要求的插座和插头安装好,实现自动组网。如何实现这种自组织的组装程序呢? 二 . ...
阅读全文
posted @ 2012-03-25 23:05
HackerVirus
阅读(268)
推荐(0)
摘要:
再开始之前,先学习基本基本的概念.程序集:所有.Net类都是定义在某个Assembly(程序集)中的,.Net基本类是定义在mscorlib.dll中。exe也可以看做是类库,也可以引用。.net的exe也是Assembly,.net中的exe和dll的区别就是exe中包含入口函数,其他没有区别,exe也可以当成dll那样引用、也可以反编译。GAC:全局程序集缓存。公用的Assembly放到GAC中,我们新建一个项目,会发现引用的程序集,如system,找不到这个dll放在哪里,实质上系统已注册到全局GAC中程序集包含描述它们自己的内部版本号和它们包含的所有数据和对象类型的详细信息的元数据。程
阅读全文
posted @ 2012-03-25 23:04
HackerVirus
阅读(305)
推荐(0)
摘要:
俗话说,一个好汉十个帮,众人拾柴火焰高等都说明一个道理,有更多的资源,更丰富的积累,都是助你走向成功,走向顶峰的推动力。本篇的公用类库的介绍主题是程序开发中多线程操作环境中,常用到的线程安全的各类同步集合、字典等对象,这些辅助类通过封装及继承关系,获得更加丰富完善的集合类,并且增加了线程锁,实现多线程访问的集合类。本篇随笔介绍包含有有序字典集合、同步字典集合、有序同步字典集合、同步列表、同步先进先出队列等对象。本篇继续继续整理优化已有的共用类库,并继续发表随笔介绍公用类库的接口方法以及详细使用操作,力求给自己继续优化,积攒更丰富的公用类库资源,加深了解的同时,也给大家展现公用类库好的方面。厚积
阅读全文
posted @ 2012-03-25 23:03
HackerVirus
阅读(486)
推荐(0)
摘要:
简介这篇文章阐述了当使用MemoryStream处理大型数据集时经常触发的模棱两可的OutofMemoryException异常,并且介绍了一个类——MemoryTributary,他可以用来替代.NET内置的MemoryStream,并且能够支持大型数据的处理。背景当试图使用MemoryStream处理较大数据(in the order of tens of MB)时,它通常会引发OutofMemoryException异常。这是不是因为,正如其命名的那样,超出了系统内存的限制了呢?但实际上那都是进程的虚拟地址空间。当进程从Windows申请内存的时候,内存管理器并没有从RAM中分配地址空间
阅读全文
posted @ 2012-03-25 23:02
HackerVirus
阅读(497)
推荐(0)
摘要:
JavaScript 中的函数实际上是数据。这也就是说下面的2 种定义函数的方式是完全一样的。function f(){return 1;}var f = function(){retrun 1;}第二种定义函数的方式也被称为“文本标记型”函数两种定义函数的区别: 第二种定义函数的缺点,有位置的限制,而第一种没有,我们看一下下面的例子<script type="text/javascript"> //这也就是说下面的2 种定义函数的方式是完全一样的。 function fun01() { } var fun02 = function () { }//结果是fun
阅读全文
posted @ 2012-03-25 23:00
HackerVirus
阅读(130)
推荐(0)
摘要:
cat todd.log | grep programming | sort -r需求变化与IoC需求又变了,怎么办?先上一个轻松的段子:程序员XX遭遇车祸成植物人,医生说活下来的希望只有万分之一,唤醒更为渺茫。可他的Lead和亲人没有放弃,他们根据XX工作如命的作风,每天都在他身边念:“XX,需求又改了,该干活了,你快来呀!”,奇迹终于发生了,XX醒来了,第一句话:“需求又改了?”。这个段子用幽默的方式反映了需求变化这个让每一个程序员、架构师或项目经理都头疼的问题。面对这个问题,不同的人有不同的应对之道,最近微博上有一段关于需求变化的讨论:@假装刺猬的猪:我们在软件开发过程中,会持续碰到客户
阅读全文
posted @ 2012-03-25 22:56
HackerVirus
阅读(220)
推荐(0)