Archive for the ‘Java’ Category

基于Huffman编码译码的文件压缩器

1 Comment,  Popularity: 52%,  IT & Telecom, Java, Software

最开始是两个周之前帮同学写的一个小工具,一直没有完善和收尾,趁这次五一假期,终于弄了出来。开始时同学的要求是基于二进制Huffman编码,对bmp图片进行译码、解码,从而实现压缩和解压缩的功能。我在写的过程中对这份要求进行了大大的扩展,已经能够实现对任意大小(内存等硬件限制除外)的文件,并且任意格式的文件而不只限于bmp文件,进行压缩、解压缩。界面如下:

huffman-encode-decode

开发工具选的是Java,后来才感受到,如果换成c或者c++来写,在存储时,大概会省去许多麻烦。因为,Java毕竟是擅长开发一些比较大的应用的,对于比较底层的二进制位存储,是不支持的,只有自己花了点时间写了一个字节缓冲,来实现二进制存储。

Read the rest of this entry »

Java实验小结

No Comments,  Popularity: 54%,  Campus, IT & Telecom, Java, Software

一个看起来并不怎么困难的小项目,结果花去了我总共大概50个小时左右的时间,记录一下写代码时的所感所想,以备后鉴。

首先,对于一门刚刚接手的语言,给我最大的学习助手除了google,还是google。相比较而言,我并不觉得那本被传的神乎其神的《Thinking in Java》比Google更优秀。当然,这句话的前提是针对“刚刚接手Java的初学者”,并且,我的意思是,与其总是单纯显耀自己手中有一本厚厚的经典之著而只翻看前面的简介几页,还不如务实的用Google多查几个实例认真研究一下。所以,谢谢你,Google。

然后,当一个客户(老师)提出的需求是一种模糊性的方向性需求,并且尽可能给你发挥的空间的时候,那么你就可以充分利用这个可以发挥的空间,进行想象、进行实现。我发现同学们之间各个最终成果的差距就是,除了代码实现的能力些许不同以外,更大的差距在于,你是不是能想象得到某种实现,你的视野是不是很开阔。比如,在存储结构中,既然我能用xml,为什么还要用c语言擅长的文本流?不是怕做不到,就怕想象不到。

项目的框架搭建和细节撰写同样重要。例如,整个项目如果能用多个有不同意义的java类来实现,并且界面操作和功能操作相分离,比只用一个庞大的java class,晕头转向的将滚动条拖来拖去要简洁明了的多,更重要的是,前者的做法远远提高了程序运行的时间和空间效率。因为,我不必在一开始就将所有的类都实例化成对象,仅仅这一点就大大降低了内存占用率。

注重用户界面(UI)和用户体验(UE)。对于开发者来说,应当把我们的用户都当作纯粹的傻瓜。这一点上,在Bingyan工作的经历给我相当大的帮助,每一个对用户友好的细节之处,也许都是最终结果赢得客户(老师)赞赏的原因之一。从模糊搜索、智能提示、到用户帮助文档,都是很容易考虑到的方面。

Read the rest of this entry »

  • 全文搜索

  • 按月存档

    标签云

  • 最新评论

    • triStoneL: 学习了. 后面三个都没有用过.....
    • 抽筋儿: 这经验太宝贵了,很值得参考...
    • 中中: 老大发我一个。wwwxike@qq.co...
    • 中中: :em00...
    • 中中: 老大,发我一个,wwwxike@qq.co...
    • triStoneL: 不错么,我很久没跑了,现在估计跑3km...
    • Julia: 明明就是为了制造机会救美~ :em15...
    • triStoneL: 可以到6Bone的官方去使用一个德国的ht...
    • triStoneL: 那代理果然不错,现在可以上你blog了.....
    • triStoneL: 等俺回学校了也要试一下撒.....
  • 万有引力

    • Apher - Big Fat Rat
    • awflasher - 郭启睿,师兄
    • Bingyan - what’s going on ?
    • HJG - Being Playful! (Focus on UE/UI Design)
    • Julia - PP的Julia’s Dessert House
    • Lemok - 高尚的热爱低级趣味
    • LRL - 猫和老鼠
    • Shanmay - 松鼠的Blog
    • Viv - 清者自清浊自浊
    • Xiao12 - 做最好的自己
    • Yaker - Yaker’s Ideal
    • Yskin - 计算机技术,生活
    • zEUS. - 網生@誌
    • 刘磊 - 折翼的飞翔
    • 华中大在线 - 华中科技大学门户网站
    • 华君 - To be continued
    • 周曙光 - 周曙光地球官方网站
    • 周睿 - ThinkPower.WillPower
    • 奋斗 - 生命在于折腾
    • 小玉 - 有事做事,没事出来晃晃
    • 抽筋儿 - 抽筋儿的话语权
    • 白云黄鹤 - 白云已死
    • 菜蔡 - 一卷舒云,一点浓墨
    • 译言 - 发现,翻译,阅读中文之外的互联网精华
  • Sponsored Link