镜像往事

8/29/2008 06:08:00 下午
火之章

“黄沙中,飞舞着我们的先王,他们在空中俯视着子民们对蓝色的向往。”

标签: ,

近日总结

8/23/2008 06:52:00 上午
我决定把.NET的核心开发语言转换到C++上了。过去的项目修改依然会使用C#,以后便开始使用C++了。要问为什么,就为了进步。

这个决定触使我更相信.NET是个好东西,在底层上,无所谓使用什么语言。它确保了多语言环境下所有的项目可以100%相互引用,相互兼容。

更重要的,便是WEB程序和桌面程序之间的兼容,这一点在其它平台上只有JAVA才能做到(jsp / j2ee /ejb)。

总结两条简单的:

应该使用 类名 ^foo 来声明成员,最好不要使用旧语法 ( __gc* )

在class的声明上也最好是使用 ref class。

标签:

blogspot是个好东西

8/13/2008 12:44:00 上午
长期以来苦于没有一个安全的空间,把自己的东西放在国内的BSP上,那是天天闹得人心慌慌,而自己开服务器的成本太大了。
昨晚索性再回来研究下这个blogspot的各种参数,发现可以调整的地方非常多。
最重要的是安全和稳定。

优点有这些:

1 能够自绑定域名。
2 服务器在国外。
3 和Google的很多服务能够同步。

标签: ,

我也不知道这应该叫什么花

7/27/2008 05:32:00 下午



制作过程和兰花差不多的。这次用了HDRI照明。

标签:

兰花归来

7/26/2008 05:08:00 下午

左边是成品,右边是为了展示自身材质而故意去掉环境光源。纹理使用的是MAYA自带的,在自发光和透明度上面都是用了渐变属性,花叶越是往边缘,透明度也就越低。这个作品用了3个小时。开启了mentalray的Final Gathering,参数100左右。7秒钟渲染。

标签:

安全查询

7/19/2008 05:14:00 下午
我们可以想象这么一个链接地址:http://www.xxx.com/info.aspx?id=6这个链接的参数直接说明了很直观的问题,向id为6的页面发起查询,但是有时候我们不希望用户能够通过更改id的值来获取其它信息,应该怎么办呢?这里我提出了两个解决办法:
1:同时传递两个参数,例如只有同时传递id和name,并且在数据库中,id和name的值能够得到配对,才会显示正确的结果。这个办法比较安全,但是存在冗余设计,也许会给维护带来成本增加。
2:用guid值来代替数字值。这个办法的优点是guid的无规律性,你几乎不可能知道数据库中下一个或者上一个值是什么,但是它的缺点也是存在的,guid为数据库增加了负担。它的容量是数字值的4倍。




标签:

基于XML文件集群的数据库:GeneGrid-DataBases(V1.0)

5/13/2007 08:58:00 上午
下载文件 查看说明文档

今天我很高兴地宣布我的第二款作品,完全基于XML的数据库:GeneGrid-DataBases(V1.0)

它基于这样一个思想:以最简单的原理,按照 GUID-对应值的形式 把所有的数据都存储在XML文件群中。

原始文档发布地址:http://www.fssfans.com/blog.aspx?user=3&id=154552


它的缺点:这并不是一个关系式数据库,所以它不支持SQL语言,内在的数据存储结构中也不存在互相的关联。但是它的这个缺点也是它的优点之一:高效、简洁、平台扩展性强

它的优点

1:不需要安装、不需要加载服务、不需要设置IIS(对于很多使用虚拟主机的站长来说,这一点是致命伤痛)

2:同时支持运行在IIS上和运行在本地应用。

3:支持所有的平台应用。 虽然目前仅仅运行在.Net平台下,但是它的基础架构是XML文件,所以在平台的移植上仅仅是我作为开发者的个人时间问题。而且,您现在就可以通过它的 WEB服务功能,将它运行在您的J2EE、PHP、ASP、Mobile环境中,而不需要等待我开发好JAVA和PHP版本(当然,它们已经存在于我的计 划中)

4:非常方便的数据合并,当您准备合并两套数据的时候,您需要做的仅仅是把XML数据文件复制在同一个文件夹下面即可,因为文件是以GUID来命名的,所以不会出现命名冲突和数据标签冲突。

5:它是基于文件集群的形式存放数据的,默认每个文件最大512K(并且您可以根据自己的机器性能来定制这个大小),系统会自动建立新的文件来保存 更多的数据,所以,不用担心数据量增大后导致执行性能的下降。理论上,这个系统所能够容纳的数据量仅仅受限于您的磁盘空间大小。

6:原生支持JSON格式,为AJAX应用带来更强大的效率。

它默认支持:返回json数据格式、通过Ajax应用模式控制、基于Asp.Net的Web服务、以及在任何.Net程序(本地)中加载使用。

7:免费使用许可,无论使用在任何用途,它都是免费的,随便您赚的黑钱还是白钱都不关我事,我不会向您收取使用费用。

执行原理:

当您添加完成一个数据的时候,您会得到一个特殊的GUID序列号。您必须记住这个GUID,才能够保证以后可以查询到您刚才添加的数据。所以,您一旦丢失了某个数据的GUID序列号,您将很难再找到这条数据。

使用方法:

WEB应用:

1 把genegrid.dll放置到Bin文件夹中。

保证站点根目录下存在data文件夹(存在文件夹即可,里面有没有其它文件无所谓)

把genegrid_config文件夹复制到站点根目录下

ajax.aspx、server.asmx、json.aspx三个文件可以放在任意目录中

2

AJAX应用:

查询单个数据:json.aspx?guid=某个数据的GUID值

查询多个数据:json.aspx?guid=某个数据的GUID值&guid=某个数据的GUID值&guid=某个数据的GUID值&.............(任意多)

以上两个办法都是以 {guid:guid值,value:数据值} 的形式返回JSON格式,主要应用AJAX中。

写入:ajax.aspx?cmd=addNew&values=您的数据 (返回 true|false)

更新:ajax.aspx?cmd=update&guid=某条数据的GUID&values=新值 (返回 true|false)

(以上两条操作的values参数也可以通过POST来传递)

删除:ajax.aspx?cmd=delete&guid=某条数据的GUID (返回 true|false)

WEB服务的使用方法大同小异,具体的说明可以参看server.asmx的自带文档。

版本信息和版权声明:ajax.aspx?cmd=vol

项目加载:

您可以通过不同的办法来将这个数据库集成到您的开发项目中,其一是通过WEB服务(具体的方法不在本文讨论范围),

其二是加载DLL模块(.net):

namespace genegrid

dbOperate 类

public Guid insert(string values); //添加数据,返回一个GUID类型值

public string select(string id); //查找单一数据,参数是某数据的GUID

public DataTable selects(string[] ids); //查找多个数据,参数GUID格式的String数组

public bool delete(string id); //删除数据,参数是某数据的GUID

public bool update(string id,string values); //更新数据,参数是某数据的GUID、新的值。

设置文件:

保存在genegrid_databases_data目录下的唯一一个文件,名字任意起,后缀名任意。本质是一个XML文件。

最后是版权声明:

1.0版本属于免费版本,可免费任意使用在商业用途和非商业用途。虽然该套系统已经经过我的多项测试,但是毕竟个人能力有限,作为开发者本人的我对于使用该软件而产生的所有后果不负责。

GeneGrid-DataBases V1.0 Build 001 © 2007 梁逸晨 kvspas@gmail.com

下载文件 查看说明文档

标签:

更新很快,并且采纳了我的建议

5/06/2007 05:34:00 下午
半个月前,我曾经发了一封邮件到Google拼音支持部门,反应在程序中第一次使用Google拼音的时候,加载速度很慢,今天就看到更新中提到已经处理了这个问题了。
很不错,支持。

标签: ,