学习IT技术网站
这里主要是 记录一些自己不熟悉的IT学习网站,不做整体总结汇总。
IT潮流网:www.itclw.net
web开发网:http://www.cncms.com.cn/
中国IT实验室:http://www.chinaitlab.com/
有一篇总结汇总的文章:http://bbs.51cto.com/thread-461205-1.html
前端技术:bootstrap
head first 设计模式
linq to excel
jexus
NPOI
http://www.cnblogs.com/shanyou/p/3218611.html
http://www.linuxdot.net/
网络方面系列文章:
https://community.emc.com/thread/197851
webservce,xml,xlst
多线程:
http://blog.csdn.net/laoniu541292552/article/details/7972946
http://www.enkj.com/help/newscontent/108098
http://www.cnblogs.com/huangxincheng/archive/2012/04/02/2429543.html(new)
http://www.docin.com/p-200406065.html
使用表值参数来insert
http://blog.csdn.net/tjvictor/article/details/4360030
程序员数据结构与算法面试总结
http://blog.csdn.net/v_july_v/article/details/6543438
开源的基于.net平台的电子商务网站
Linq里有Enumerable.Empty<T>这个方法 ,这个静态方法会缓存,只有一个实例,大家能用这个方法尽量用过个
面向对象软件设计七大原则:
http://blog.163.com/liang8065@126/blog/static/21761596201011213296347/
1,开闭原则 (软件实体应当对扩展开放,对修改关闭)
2,里氏代换原则 (尽量从抽象类或者接口继承,而不是从具体类继承)
3,依赖倒置原则 (要依赖于抽象,不要依赖于实现;要针对接口编程,不要针对实现编程)
4,接口隔离原则 (建立单一接口,不要建立臃肿庞大的接口;接口的方法尽量少)
5,合成/聚合复用原则 (首先使用合成/聚合,合成/聚合则使系统灵活,其次才考虑继承,达到复用的目的)
6,迪米特法则(最少知识原则) (一个软件实体应当尽可能少的与其他实体发生相互作用;一个对象应当对其他对象有尽可能少的了解)(门面(外观)模式和调停者(中介者)模式实际上就是迪米特法则的具体应用。)
7,单一职责原则 (一个类,应该只有一个职责)
设计模式(23种):
http://terrylee.cnblogs.com/archive/2006/06/01/334911.html
创建型:
1, 单件模式 single (保证一个类仅有一个实例,并提供一个访问它的全局访问点。)
2, 抽象工厂模式 abstract factory (提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类)
3, 建造者模式 builder pattem (将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。)
4, 工厂方法 factory method (定义一个创建对象的接口,让子类决定实例化哪一个类。使一个类的实例化延迟到其子类)
5, 原型模式 protype (用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。)
结构型:
6, 适配器模式 adapter (将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作)
7, 桥接模式 bndge (将抽象部分与实现部分分离,使它们都可以独立的变化)
8, 装饰模式 decorator (动态地给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活)
9, 组合模式 composite (将对象组合成树形结构以表示“部分-整体”的层次结构。Composite模式使得用户对单个对象和组合对象的使用具有一致性。)
10,外观模式 facade
11,享元模式 flyweight
12,代理模式 proxy (在软件系统中,有些对象有时候由于跨越网络或者其他的障碍,而不能够或者不想直接访问另一个对象,如果直接访问会给系统带来不必要的复杂性,这时候可以在客户程序和目标对象之间增加一层中间层,让代理对象来代替目标对象打点一切。这就是本文要说的Proxy模式。)
行为型:
13, 模板方法模式 template (定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤)
14, 命令模式 command
15, 迭代器模式 Iterator
16, 观察者模式 oberver (定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时, 所有依赖于它的对象都得到通知并被自动更新。)
17, 中介者模式 mediator
18, 备忘录模式 memento
19, 解释器模式 interpreter
20, 状态模式 state
21, 策略模式 strategy
22, 职责链模式 chain of responsibility
23,访问者模式 visitor
JS相关的一些常用方法
//parent.location.reload();window.parent.refresh();
//opener.location.href = opener.location.href
parent.location.reload(); //用iframe、弹出子页面刷新父页面iframe
window.opener.location.reload(); //弹出子页面
self.opener.location.reload(); //子窗口刷新父窗口
window.opener.location.href = window.opener.location.href; //刷新以open()方法打开的窗口
window.parent.dialogArguments.document.execCommand('Refresh'); //刷新以winodw.showModelDialog()方法打开的窗口
Sencha Touch:http://blog.csdn.net/ardyc/article/details/7449072
mogodb:http://www.cnblogs.com/xumingxiang/archive/2012/04/08/2437468.html
打开一个小窗体:
function OpenDialog(src, title, width, height, callback) {
$("#dialogSKU").children().remove();
$("#dialogSKU").append('<iframe src="' + src + '" style="width:100%;height:' + (height - 60) + 'px;" frameborder="0"></iframe>');
$("#dialogSKU").dialog({ autoOpen: true,
height: height,
width: width,
title: title,
modal: true,
draggable: false,
close: callback
});
$("#dialogSKU").css({ background: "#fff", border: "1px solid #666" });
}