产品设计:QQ快捷键功能的设想与架构

2010年3月6日 由 Hackfan 1条评论 »

  QQ是中国即时通讯领域的大哥,产品设计符合中国国情,开发团队也十分优秀。每次QQ新版本的发布,或多或少的给我带来惊喜。

  但Windows下QQ的快捷键功能,一直没有重大改革。昨天趁着QQ同时在线突破1亿人,安装了QQ 2010 Beta版本。让我失望的是,快捷键功能仍然沿用了之前的设计。因此,我不得不写文章,说说自己对QQ快捷键功能的设想与架构。

QQ快捷键功能的……阅读全文

ORM中,belongs to与has one的区别

2010年2月18日 由 Hackfan 没有评论 »

随着PHP开发框架的普及,越来越多的开发者开始使用ORM进行数据库的操作。

在使用ORM时,数据表间关系的设置往往被很多开发者忽略。

数据表间关系,主要有四种:

  • 一对一关系(has one)
  • 一对多关系(has many)
  • 多对多关系(many to many)
  • 从属关系(belongs to)

本文主要讨论一对一关系与从属关系的区别。

一对一关系(has one)

用于主表的定义中,指主表(primary table)每行记录,在从表(foreign table)中只有一行记录对应。

从属关系(belongs to)

阅读全文

万能密码

2010年2月15日 由 Hackfan 没有评论 »

作者:Hackfan

什么是万能密码?

一个特定的字符串,用它能通过特定系统的验证程序,这个字符串被称为万能密码。

万能密码设置的原因

有意设置

  • (公开)设置万能密码以防密码丢失或遗忘
  • (公开)系统的默认密码
  • (保密)开发者有意留下后门,在必要且合法的情况下使用,以解决实际问题
  • (保密)开发者有意留下后门,以达到某种非法目的

无心设置

  • 因系统、协议或编程出错等原因,无意留下的漏洞

万能密码的种类

默……阅读全文

虎年祝福

2010年2月13日 由 Hackfan 2 条评论 »

胡吉阳祝各位长辈、老师、领导、朋友、同学、同事,虎年,交虎运,享虎福。

阅读全文

【译】最佳安全实践——来自雅虎开发者网络

2010年2月9日 由 Hackfan 1条评论 »

【原文】http://developer.yahoo.com/security/

【译文】http://jiy.hu/security-best-practices

【译者】Hujiy ( Hackfan )

Yahoo在处理用户个人资料安全性的问题上,十分谨慎,我们希望我们的开发者也同样如此。以下是一些指导,帮助你保护你的应用程序用户的信任。

  • 保护你的服务器
  • 阅读全文

  • 代码优化之我见

    2010年2月8日 由 Hackfan 2 条评论 »

      适当的代码优化应该或可以

    • 减少程序行数
    • 减少复杂逻辑
    • 增加可读性
    • 加快运行速度
    • 优化程序结构
    • 加速排错过程
    • 方便代码复用

      但是适当的代码优化需要

    • 经验
    • 责任心
    • 动脑子
    • 思考时间

      某些程序员甚至是项目经理,经常以“项目时间紧”、“先实现功能为主”为由,无视代码优化,甚至把代码优化当做项目实施的绊脚石、眼中钉。我认为可能的原因:

    代码优化之分页输出

    2010年2月8日 由 Hackfan 没有评论 »

      分页代码是PHPer接触的最多的代码之一。很多PHPer都自行实现过分页程序,或者用过相关的分页函数。

    分页函数

      首先回顾一下分页函数的输入与输出。我们拿一个较简单的模型来做说明。

      函数输入:

    1. 记录总数
    2. 每页记录数
    3. 当前页数

      函数输出

    1. 偏移量$offset、记录数$limit(在MySQL中执行LIMIT $limit OFFSET $offset)
    2. 总页……阅读全文

    为Linode VPS添加多个IP指南

    2010年2月7日 由 Hackfan 5 条评论 »

    够买额外IP

    1、在Linode后台选中所要添加IP的VPS,在Extras中的Additional IPs下拉框中,选择增加1个IP的付费方式(月付、年付)。

    2、生成订单、确定订单

    3、支付,一般是信用卡直接划账。Linode的账单金额的计算方式:

    • 自购买日起算(如2010年2月6日23点够买,则服务开通按照2010年2月26日算)
    • 到自然月为一个结算周期(够买日起到2010年2月28日为一个结算周期)
    • 账单金额=(月总金额÷自然月天数×服务天数……阅读全文

    【译】Lazy Load(网页图片缓载)

    2010年2月5日 由 Hackfan 2 条评论 »

    【原文】http://www.appelsiini.net/projects/lazyload

    【译者】Hujiy ( Hackfan )

      Lazy load是一个jQuery插件。他能够延迟加载网页(特别是很长的网页)中的图片。在用户可视区域外的图片,直到用户看到它们时,才会被加载。这一点与图片预加载的做法是截然相反的。

      在一张很长且包含很多大图片的网页上,采用Lazy Load,会使得网页加载速度变快。浏览……阅读全文

    京沪高速宝应“山寨”服务区

    2010年2月5日 由 Hackfan 没有评论 »

      2010年2月4日,上午11点20分,我乘上了从新沂发往苏州的公共汽车。正值年末,外来打工者纷纷回家,因此,从发达地区发往欠发达地区的汽车,都装的满满的;而从欠发达地区发往发达地区的汽车,则空空荡荡,甚至还有空车。我所乘坐的公车,30几张位置,零零星星坐了不到十人。
      车子从徐连高速转向京沪高速,一路上阳光明媚,透过车窗洒在我身上,我慵懒的躺在座位上,虽说已过午饭时间,但此时此刻的我,并没有多少饥饿感。座位、阳光、随时的小憩,我已经很满足了。

      行使了一段时间后,车子从京沪高速宝应出口下。有常识的……阅读全文