验证和授权

JerryXia 发表于 , 阅读 (1,214)
关于验证和授权,很多计算机程序员都分不清楚,举个例子。美女许天仙在上网聊天。慕名已久的王二狗邀她见面,为了表示诚意,二狗开通了视频。天仙看到二狗的真面目后说:“我只和帅哥见面。”张三风听闻此事,也去约天仙见面,他发了一张照片过去。天仙还是拒绝了。三风不解:“你不是喜欢帅哥吗?”天仙答曰:“你竟然想用我的男神竹野内丰(读者如认为他不是帅哥可自行换成金秀贤,笔者十分好奇“美男”、“帅哥”之类的概念外延有多大,长相差异如此大的两人怎么能被划定为一类人)的照片骗我?”上面的场景用计算机技术的术语来... 阅读全文

Framework和Architecture的区别

JerryXia 发表于 , 阅读 (1,646)
其实,Architecture这个字是建筑之意,也就是由没有建筑物到完成的过程,以及如何将建筑生产出来的方法(即建筑学),它是一种Guideline,又称蓝图(blueprint),它指导了建筑物应该要怎麽盖,墙要几公分高,梁柱的位置,地基的面积,基础要打在哪,高度要多高,房间要多大等等都有。但它却没有叫你要用什麽方式(工法)盖。软件也是一样,所谓的软件架构(Software Architecture)是一种软件的蓝图,它告诉你这个软件的结构,功能,介面,用法,与其他系统的构连以及数据交换... 阅读全文

字符编码

JerryXia 发表于 , 阅读 (952)
我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。由于计算机是美国人发明的,因此,最早只有127个字... 阅读全文

正确实现对象的浅拷贝和深拷贝

JerryXia 发表于 , 阅读 (1,048)
为对象创建副本的技术称为拷贝(也叫克隆)。我们将拷贝分为浅拷贝和深拷贝。浅拷贝 将对象中的所有字段复制到新的对象(副本)中。其中,值类型字段的值被复制到副本中,在副本中修改不会影响到源对象对应的值。而引用类型的字段被复制到副本中的是引用类型的引用,而不是引用的对象,在副本中对引用类型的字段值做修改会影响到源对象本身。深拷贝同样,将对象中的所有字段复制到新的对象中。不过,无论是对象的值类型字段,还是引用类型字段,都会被重新创建并赋值,对于副本的修改,不会影响到源对象本身。无论是浅拷贝还是深拷... 阅读全文

面向对象的理解

JerryXia 发表于 , 阅读 (1,011)
数据结构里面有个抽象数据类型(ADT)概念,是指一个数学模型以及定义在该模型上的一组操作。抽象数据类型的定义取决与它的一组逻辑特性,而与其在计算机内部如何表示和实现无关,即不论其内部结构如何变化,只要它的数学特性不变,都不影响其外部的使用。这让我想到了面向对象的程序设计,为了提高软件的重用率,在程序设计时要求在构成软件系统的每个相对独立的模块上,定义一组数据和施于这些数据上的一组操作(数据和行为),并在模块的内部给出这些数据的表示及其操作的细节,而在模块外部使用的只是抽象的数据及抽象的操作... 阅读全文

C#开源资源大汇总

JerryXia 发表于 , 阅读 (40,758)
一、AOP框架         Encase 是C#编写开发的为.NET平台提供的AOP框架。Encase独特的提供了把方面(aspects)部署到运行时代码,而其它AOP框架依赖配置文件的方式。这种部署方面(aspects)的方法帮助缺少经验的开发人员提高开发效率。       NKalore是一款编程语言,它扩展了C#允许在.net平台使用AOP。NKalore的语法简单、直观,它的编译器是基于MonoC#编译器(MCS)。NKalore目前只能在命令行或#Develop内部使用。NK... 阅读全文