CSK.Blog--个人原创Weblog

说说最近在作的事情~

因为现在CS开始上课了,天天coding的生活开始了。很喜欢现在这种状态,对我而言coding是很幸福的,当然垃圾代码除外

1.EZ-UML

这是暑假CS软件工程我们小组的项目名称,主要的要求就是用java实现一个类似于Rational Rose或者PowerDesign的UML设计软件。采用纯GUI模式的。

当然3周多一点的时间是不可能开发一个PowerDesign的,所以这次的项目仅限OOM部分,就是UML里面的Class; package ; interface这种符号。

当然要做就要做的有挑战性些,至少要在OOM设计部分比上面的软件好吧,至少用户体验要好。用过PowerDesign的人都应该知道那个用MFC最原始框架的软件的UI有多么的poor.

我这次负责EZ-UML中Visual 的部分,也就是写一个对象显示、拖放、改变大小的编辑器引擎。说实话这方面一点经验也没,自从Stereoic开发好以来再也没写过这么没把握的代码了。

GUI内核采用了SWT,而非Swing(Swing的界面完全是重新绘制的,效率肯定没有SWT直接调用OS原生API的高啦,用Swing作UI...算了,matlab是什么样..)

这个引擎将来我会单独抽取出来,用这个开发矢量图编辑器甚至一个Visual Basic的Form编辑器应该不难了..

 

效果图

自认为还不错,得益于SWT自身支持DoubleBuffered绘图模式,所以显示效果非常的好。

就把这个作为我第一个java平台下的作品吧

2.Flash网站正式支持BackButton技术

因为还没完工,也不多介绍了,就是可以利用url来唯一定位flash中的内容。也可以像浏览普通页面用后退、前进来切换Flash页面里面的内容。

为此还解决了一个firefox下的显示bug

不过这个功能已经有人写了很好的js插件了:

  

提供的:dhtmlHistory.js

3.Blog支持代码自动上色

这个用了别人写的一个js脚本,在客户端完成上色任务。脚本是prettyprint.js。可以google上去找下。他会把出现在

<xmp class="code-csharp">

<xmp class="code-xml">

<xmp class="code-mdb">

中的代码自动用class所指名的语法上色。

上面就是xml上色的例子,再给各C家族的上色例子:

 var elems = document.getElementsByTagName ("xmp");
 for (n=elems.length - 1; n>=0; n--)
 {
  if (elems[n].className == "code-csharp") {
   format (elems [n], formatCs);
  }
  else if (elems[n].className == "code-xml") {
   format (elems [n], formatXml);
  }
  else if (elems[n].className == "code-mdb") {
   format (elems [n], formatMdb);
  }
  else if (elems[n].className == "code-gaim") {
   format (elems [n], formatGaim);
  }
 }

---------------------

EOF

新版Flash网站效果图[2]

事实上已经按这个效果图完成了50%了,ReformCore的核心代码都没变动,就修改UI代码,所以这个暑假新网站正式公布运作还是有希望的~

网站全景尺寸1440*1000,如果屏幕宽度小于1440,会自动按照当前窗口大小自动重新布局。这次设计将采用可智能加载技术,即可以按照当前用户带宽来优化网站的显示效率,比如宽带用户会将音效、背景加载完毕后显示网站,对于窄带用户是先显示出文字内容,然后逐步显示出图形。

整个框架完全是OO设计的,今后可以通过ReformScript和我公开的控制接口来编程控制网站,相信可以提供给你个能在编写ActionScript同时就能看到效果的学习环境^_^

 

 新的设计风格已经能在主页上看到了,去我的Flash网站看看?

文曲星终于修好了~

以前说过我的nc2000的排线端掉了,后来火大就尝试用漆包线来代替排线。

以前我的pc1000也是这样修好的,但nc2000的印刷版的线路特别细,而且这次排线有20根之多,以前没有好的络铁和相关的工具,所以尝试修复了4次才成功的..

(用漆包线替代了排线,点击看大图)

这种修复十分的费时间,而且除了能锻炼焊接功底实在没别的意义了,但我为了焊排线已经把原先的排线插座拆掉了,就算送到ggv也没法给我修,而且也不愿再买一个新的(没意义了)。

(显示面板,点击看大图)

主要过程就是用直径大约0.4mm的漆包线,把2边的油漆用刀刮掉,然后上焊锡,再十分十分小心的焊到主板和显示面板印刷版排线的对应位置,如此重复17次。中途如果焊错位或者焊接时将周围的刚焊的电线脱离的话,就要重新开始...一般焊完一次要3小时。

(主板,点击看大图)

但最让我想不通的是为何前3次都失败了...

不管了,反正修好了,以后有空了就能开发CrazyGT了,呵呵。高中的资料wqx里面都在,可以怀念以下了~~

这下信心倍增,呵呵

为Blog加了广告评论和引用的过滤程序

不知各位有没有遇到这样的问题:总有无聊的人会在自己blog上发布广告类的评论或者干脆发布一个广告链接的引用track通知。

前一段时间已经对某些网站的人通知过了,但近日基本上天天都有新的垃圾出来,实在受不了了,所以做了个抗垃圾评论的过滤器。

说白了就是个关键字过滤程序,我想垃圾散布者还不至于无聊到用XX.XX.XX的手段多过拦截吧,至少广告链接的URL肯定是连续的吧。如果骚扰升级的话干脆用垃圾邮件的过滤技术:贝叶斯定律来解决了

就目前而言,如果发表的留言或者track通知信息中有下列url,blog会报错,拒绝执行

ourvideo.cn
saupro.com
a8b9.cn
100fy.com
88translation.com
onlinetranslation.cn

部分网站我已经开始进行“必要的工作了”

过滤器的代码很简单,所以不好意思拿出来了,如果需要我可以给你,也就不用在这留言了,直接发我email问我要吧。如果你也是ZBlog的用户,那我可以直接把现成页面给你

高手挑战的重大bug...对不住各位了

orcer在blog上的留言

第九关的验证码碎片我用静态调试把我折腾惨了,后来用动态调试,基本没费什么事。最后一关静态反汇编就可以搞定。也算不上体力活。

另外问一下,为什么我最后留言提交的时候说我提交过了,但榜单上没有显示?

前一段时间为了将高手挑战2系统作一些调整,主要是将原先的玩家通过验证后仍需我验证通过改为自动通过。因为以前要对前20名作奖励,所以要尽力防止可能的作弊,后来自然就不需要了。

但在修改代码时打错一个单词..当时也有急事,所以没测试,使得接下来通过的玩家无法保存留言信息也无法显示在榜单上..

幸亏今天看到orcer网友的留言...我还在想为何那么就都没人通过..

bug修正了,但丢失的通过时间和留言是无法恢复的,所以我已和各位新通过的玩家发过e-mail了,如果大家愿意我立刻将丢失的信息补上~

游戏本来就简陋,大家能浪费休息时间来玩实在是对我最大的支持了,所以对于出现这样的问题我表示十分歉疚..

不过是这件事,今后处事上也要多多小心啊

Blog上的音乐变化

考试期间不能写出什么有趣的文章,所以就更新下play list...

添加了下面几首单曲:

>Your Loving Arms,By Karen Overton(Club Mix)

外面评论和beautiful thing一种类型,为什么?听听看吧,我在somnia给我的asot 2006 cd1中第一次听到,感觉不错~这个是club mix版,我在emule上下的,不过音质不好,所以作了去噪处理,同时做了1.2x的变调,使它听上去和asot中差不多(原始的太粗了……)

>07-extraordinary_ways,extraordinary_ways,conjure_one

Conjure_One-Extraordinary_Ways-2005 cd中的第七首(其实我觉得就这首比较符合我的审美……)

>Welcome To Heaven,ilya_malyuev

俄国DJ的作品,我最早在live in trancemission(也是somnia给的)中听到的,听名字就知道不错(^_^),不过单曲太难找了,昨天奇迹般的在emule上下到了……

blog的intro也换掉了,原来的听腻了可不好……

复习信号系统去了,等暑假里把这个播放器完善下吧,让他符合web2.0……

P.S. 因为都是有版权的音乐,所以本来就是不正当的播放,mp3的具体url我已尽力保护不会被得到了,所以如果觉得有喜欢的单曲可以单独来问我索要。

编了个QQ显IP插件

由于目前只是做好了雏形,所以暂时不写具体的原理和实现方法。

现在有名的QQ显IP插件就要数CoralQQ了。最近在做我这个版本的时候也看了下他的实现构造,虽然有些方面我不认同。如采用MFC构架,显示ip的机制是用钩子拦截。这样我觉得比较占资源也占CPU~但反汇编看了整整2天后我不由得对它产生无比敬佩……

我暂时把这个插件叫做OpenPugin。因为以后打算做成支持二重插件甚至开源的。

不得不承认本次开发受到原先的木子版QQ源码和CoralQQ的一些方法的影响。不过相信我是结合了他们的优点,比如获取IP的方法和CoralQQ一样,有效又安全,而插件和QQ进程挂钩的手段是模仿木子版的,修改了内部函数跳转,当然会很智能,适应不同版本的差异。

下面是截图:

 

目前这还是个雏形,只是说明方案时可行的,今后打算把功能完善了在整合交大的一些服务,出个交大版QQ,呵呵~敬请期待……

哎,写这个真是折磨人,发现自己汇编还要去学学……

过去了……迎接新的开始

到今天为止,我终于可以说已经没有特别重的负担了。PRP和法学院网站建设我心中的两大包袱终于消除了。 虽然接下拉仍然会很忙,但至少都是为自己拼命的,所以我不会觉得有什么。 我希望从此生活能简单些,每天读书、做作业、研究点东西、陪gf,呵呵,天堂般的生活啊~ 好了,不能就这样放松了,下一个任务是科创,设计电路去了。 我的Blog,终于可以复活了……

PRP圆满结束

终于没有白费力气,PRP答辩结束,而且获得了教授十分出人意料的一致好评。不过想想之前每个人为此付出的辛勤,特别是答辩前一天的通宵……

在这里首先要对PRP每个成员说声各位辛苦了,记得当时答辩结束我们也没有表现的特别开心,因为实在太累了,回寝室赶紧睡觉……至少到现在我还没恢复

还要特别感谢Princess PI学姐,没有她,答辩天晓得会变成什么惨状……还要通宵那天教会我们了“刷卡开门”……恩,非常之管用阿~~以后考前通宵就这么办。

不过也感慨万分,一个如此“浩大”的PRP的成败完全就靠最后一个1个多小时的答辩和8个左右的教授来决定了。1个多小时的时间能对我们项目了解多少?黑的白的还不都靠最后那个ppt来说明了?

的确可以让人联系到很多事情,不过至少我们的强人隧道是货真价实的,而且这个项目只是完成了他的第一个阶段而已。

不过最近一段时间内我们就自由了,我也终于可以做些自己的事了,现在觉得没有这些事情,能默默无闻的去上课、读书、玩游戏、睡觉、陪gf是多么幸福而又不可求的事啊。Chris也不止一次的说起同样的感受……看来的确应了那句话:No pains,No gains.

经过这次PRP的灾难性洗礼,感觉将来的路好走了许多。就算不论我们的项目以后会怎样,能有和项目每个成员度过这段时光我想并不是任何人有机会去经历的,同时这样的经历绝对不能从其他人的描述中的到切身的感受。

接下来又很多事情等着我,其实我一盘算,那痛苦的日子还在继续着。看来要逼自己在60岁左右完全退休,去好好enjoy life了(前提是我能活到那时候)。

接下来又要开始对这个blog做大调整了

.The Begining#new

PRP项目马上就要答辩了,忙了我3个月的东西终于有结束的那一天,虽然后面的事我还是不想提了

这里放一个关于我们研究项目的统计数据:

网站总大小: 29.4 MB

代码行数(包括html/asp/action script/java script代码)

 纯手工编写行数:20243行(没有计算注释)

将有工具辅助生成代码和注释计算在内:32804

总共核心文件数:199

 总共核心文件字符数: 4247586个字母(中文或者英文字母,utf-8编码)

 总共核心文件大小:>13MB

 接口函数文件列表总数:24

呵呵,我可没有吹牛~~

回想起来,真的大家在这个过程中都非常辛苦,特别是在编写接口时……

好了,新的一天开始了,我也许该睡去了,明天继续写答辩的PPT……

 

我会永远记住这段时光,第一个让我感到开发的恐怖和痛苦的项目。当然收获的也是不可估量的

分页:[«][1][2][3]4[5][6][7][»]

日历

<< 2015-6 >>

Sun

Mon

Tue

Wed

Thu

Fri

Sat

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Copyright Shikai Chen 2000-2012. Powered By Z-Blog(CSK Modified)