2012年11月6日
摘要: Uniscribe是Windows 2000以来就存在于WinAPI中的一个库。这个库能够提供给我们关于字符串渲染的很多信息,譬如说哪里可以换行啦,渲染的时候字符的顺序应该是什么样子啦,还有每一个字符的大小什么的。关于Uniscribe的资料可以在http://msdn.microsoft.com/en-us/library/windows/desktop/dd374091(v=vs.85).as... 阅读全文
posted @ 2012-11-06 22:40 陈梓瀚(vczh) 阅读(4007) 评论(1) 推荐(1) 编辑
  2012年10月8日
摘要: 所有关于渲染的部分的代码可以在http://gac.codeplex.com下载下来之后,在\Libraries\GacUI\Source\GraphicsElement目录下面找到。整个渲染系统的主要思想就是,图元(IGuiGraphicsElement)和渲染器(IGuiGraphicsRenderer)分开,而且粒度根据性能的要求粗细都有。为什么要这么设计呢?在前言里面说过,不同的渲染设备,譬如GDI和DirectX,需要的渲染策略和cache资源的方法都不太一样。因此为了让各个渲染设备的渲染器可以充分自定义渲染的策略,于是做出了这样的设计。但是具体是怎么做的呢?在GacUI里面,首先可 阅读全文
posted @ 2012-10-08 23:43 陈梓瀚(vczh) 阅读(4884) 评论(2) 推荐(2) 编辑
  2012年9月18日
摘要: 说起GacUI(http://www.gaclib.net/,gac.codeplex.com),其实这个想法在我还在上大三的时候就已经有了。但是由于经验不足,在当时并没能够把这个东西给做出来,直到去年(2011)的国庆节为止。想想到现在也做了快一年了,GacUI也可以用来写一些不是特别残暴的C++GUI程序了。前几天有人问道,为什么在PC都快完蛋了并且大部分GUI都已经用C#来做的时候,我还要做这个东西呢?其实,这有两个原因:第一个我喜欢折腾C++;第二个C++好像也没什么特别好的GUI,因此也想尝试一下,如果做成了就维护下去,做不成了好歹还可以提高自己的水平,总之是不会浪费时间的。所以我. 阅读全文
posted @ 2012-09-18 14:30 陈梓瀚(vczh) 阅读(19176) 评论(4) 推荐(6) 编辑
  2012年7月10日
摘要: 为了给自己写的C++ GUI库做宣传,在几个月前我决定要给他做一个网站,经历了这几个月不断的重构,现在网站的架构终于定型了。考虑到在这之前我几乎没有开发网站的经验,所以在这里做点小总结来介绍自己一路走来发生的事情。 一开始为了制作这个网站购买了万网的域名和一个很便宜的一年500块钱的空间。这个空间支持低版本的asp.net,不过当时还没学会这方面的东西。后来我就开始学习HTML和CSS,然后做出了几个页面。不同的浏览器有不同的bug,导致HTML和CSS搞起来相当复杂,特别是div和float的结合,更是焦头烂额。后来索性整个网页都用表格布局。虽然表格布局并不是什么流行的做法,但是鉴于Gac. 阅读全文
posted @ 2012-07-10 02:29 陈梓瀚(vczh) 阅读(7163) 评论(36) 推荐(12) 编辑
  2012年6月22日
摘要: 博客光写GacUI(http://www.gaclib.net/)的Demo更新也好无聊啊。所以今天先换换口味,胡扯点别的。 一年一度的高中毕业生填简历的日子即将就要到了,又有很多人问计算机专业的事情。其实我从心底里觉得,高考后才来问这个,已经完了一大半了。当然另一小半十分有前途的人可以在大学四年赶上来,不过估计他们还是要读个研究生,才能把自己训练成能用的码农。 编程是一件很难的事情。当然我的意思跟那篇著名的《编程是一件很难的事情》不一样。想把代码写好,本来就是一件非常困难的事情。我大三的时候训练一个大一的老乡,就光是C++,长达四年后她还搞不清楚模板元编程究竟是什么。而且还有C语言学会了转. 阅读全文
posted @ 2012-06-22 02:02 陈梓瀚(vczh) 阅读(30538) 评论(65) 推荐(50) 编辑
  2011年12月16日
摘要: (很荣幸被华南理工大学软件学院邀请撰写此文,关于毕业那会儿找工作的一些事情)前些日子被华南理工大学软件学院邀请回去参加一些活动,其中包括跟一些师弟师妹们进行座谈。期间就有一个人问,要怎么样才可以去微软。其实我从来没有想过这个问题,所以那个时候的答案自然就是微软的广告(编程好,数学好,态度好)了。09年大四那会儿,刚好碰上了美帝的次贷危机,令我们这些想去美帝的公司被剥削的这帮人倍感艰辛。所幸后来还是过五关斩六将,最后在实习结束之后成功留了下来。这其中的因果,显然不是面试的那几天所能够决定的,因此还得从hello world讲起。我有幸从初二开始就学习编程。那个时候世界已经处于一个现代化的程度了, 阅读全文
posted @ 2011-12-16 23:44 陈梓瀚(vczh) 阅读(70973) 评论(72) 推荐(73) 编辑
  2011年8月11日
摘要: 代码上传到了http://vlpp.codeplex.com/的Candidate\Games\FunctionVisualizer文件夹下面,VS2010,.NET 4.0。做这个的目的只要是前几天看到了batman equaltion,然后浑身不舒服,因此就想起了这片新闻(http://news.cnblogs.com/n/106212/)里面的东西。就花了一个晚上和一个早上的时间做了出来。当然这里面有点瑕疵,不过大概还是好的。 在Candidate\Games\FunctionVisualizer\FvCalculation\RawExpression.cs里面可以看到用来表达函数的语. 阅读全文
posted @ 2011-08-11 15:05 陈梓瀚(vczh) 阅读(4459) 评论(9) 推荐(5) 编辑
  2010年4月28日
摘要: Vczh Library++ 语法分析器开发指南陈梓瀚前言在日常的开发工作中我们总是时不时需要写一些语法分析器。语法分析器不一定指的是一门语言的编译器前端,也有可能仅仅是一个自己设计格式的配置文件的读写程序,或者是一门用来简化我们开发的DSL(领域专用语言)。我们可以选择使用XML,不过因为XML的噪音实在是太多,所以自己写语法分析器在有些情况下是必要的,特别是那种经常需要修改的文件,使用XML有... 阅读全文
posted @ 2010-04-28 13:46 陈梓瀚(vczh) 阅读(2298) 评论(2) 推荐(1) 编辑
  2010年1月8日
摘要: 最近在公司写了一大堆复杂的界面,终于体会到了前辈们那种上刀山下火海的感觉了。做完了之后回头想想,MVC还是有道理的。 什么是MVC?其实可以简单的理解为一个有UI的程序可以划分为三个部分:数据层、逻辑层和应用层。当然这些名字是我乱起的。数据层顾名思义就是用来读写数据的地方,譬如说一个电话本的文件。逻辑层就是用户在界面上的操作的抽象,譬如说要通过名字来查找消息啦,给一个关键字求得筛选后的电话信息列表... 阅读全文
posted @ 2010-01-08 20:02 陈梓瀚(vczh) 阅读(6470) 评论(27) 推荐(1) 编辑
  2009年12月31日
摘要: 项目主页:http://vlpp.codeplex.com/ Vczh Library++从2006年就开始开发,到现在经历了一些版本变迁,到现在已经正式步入3.0了。现在Vczh Library++ 3.0的基础部分已经成型,我的目标是将Vczh Library++ 3.0做成一个在性能不是极端苛刻情况下使用的数据处理库,附带一个高速的脚本引擎。未来可能会提供更多的东西,但主要围绕着这两个目标走... 阅读全文
posted @ 2009-12-31 11:06 陈梓瀚(vczh) 阅读(1822) 评论(2) 推荐(0) 编辑