develop's blog,about web&game&mobile&so on!
存档 Archives : 02月, 2010

世界上最健康的作息时间表,并祝新年快乐

<Category: rayYee> 发表评论

点击在新窗口中浏览此图片
7:30:起床。英国威斯敏斯特大学的研究人员发现,那些在早上5:22―7:21 分起床的人,其血液中有一种能引起心脏病的物质含量较高,因此,在7:21之后起床对身体健康更加有益。
打开台灯。“一醒来,就将灯打开,这样将会重新调整体内的生物钟,调整睡眠和醒来模式。”拉夫堡大学睡眠研究中心教授吉姆·霍恩说。喝一杯水。水是身体内成千上万化学反应得以进行的必需物质。早上喝一杯清水,可以补充晚上的缺水状态。

7:30―8:00:在早饭之前刷牙。“在早饭之前刷牙可以防止牙齿的腐蚀,因为刷牙之后,可以在牙齿外面涂上一层含氟的保护层。要么,就等早饭之后半小时再刷牙。”英国牙齿协会健康和安全研究人员戈登·沃特金斯说。

8:00―8:30:吃早饭。“早饭必须吃,因为它可以帮助你维持血糖水平的稳定。”伦敦大学国王学院营养师凯文·威尔伦说。早饭可以吃燕麦粥等,这类食物具有较低的血糖指数。

8:30―9:00:避免运动。来自布鲁奈尔大学的研究人员发现,在早晨进行锻炼的运动员更容易感染疾病,因为免疫系统在这个时间的功能最弱。步行上班。马萨诸塞州大学医学院的研究人员发现,每天走路的人,比那些久坐不运动的人患感冒病的几率低25%。

9:30:开始一天中最困难的工作。纽约睡眠中心的研究人员发现,大部分人在每天醒来的一两个小时内头脑最清醒。

10:30:让眼睛离开屏幕休息一下。如果你使用电脑工作,那么每工作一小时,就让眼睛休息3分钟。

11:00:吃点水果。这是一种解决身体血糖下降的好方法。吃一个橙子或一些红色水果,这样做能同时补充体内的铁含量和维生素C含量。

13:00:在面包上加一些豆类蔬菜。你需要一顿可口的午餐,并且能够缓慢地释放能量。“烘烤的豆类食品富含纤维素,番茄酱可以当作是蔬菜的一部分。”维伦博士说。

14:30―15:30:午休一小会儿。雅典的一所大学研究发现,那些每天中午午休30分钟或更长时间,每周至少午休3次的人,因心脏病死亡的几率会下降37%。

16:00:喝杯酸奶。这样做可以稳定血糖水平。在每天三餐之间喝些酸牛奶,有利于心脏健康。

17:00―19:00:锻炼身体。根据体内的生物钟,这个时间是运动的最佳时间,舍菲尔德大学运动学医生瑞沃·尼克说。

19:30:晚餐少吃点。晚饭吃太多,会引起血糖升高,并增加消化系统的负担,影响睡眠。晚饭应该多吃蔬菜,少吃富含卡路里和蛋白质的食物。吃饭时要细嚼慢咽。

21:45:看会电视。这个时间看会儿电视放松一下,有助于睡眠,但要注意,尽量不要躺在床上看电视,这会影响睡眠质量。

23:00:洗个热水澡。“体温的适当降低有助于放松和睡眠。”拉夫堡大学睡眠研究中心吉姆·霍恩教授说。

23:30:上床睡觉。如果你早上7点30起床,现在入睡可以保证你享受8小时充足的睡眠。

任何试图更改生物钟的行为,都将给身体留下莫名其妙的疾病,20、30年之后再后悔,已经来不及了。
一、晚上9-11点为免疫系统(淋巴)排毒时间,此段时间应安静或听音乐。
二、晚间11-凌晨1点,肝的排毒,需在熟睡中进行。
三、凌晨1-3点,胆的排毒,亦同。
四、凌晨3-5点,肺的排毒。此即为何咳嗽的人在这段时间咳得最剧烈,因排毒动作已走到肺;不应用止咳药,以免抑制废积物的排除。
五、凌晨5-7点,大肠的排毒,应上厕所排便。
六、凌晨7-9点,小肠大量吸收营养的时段,应吃早餐。疗病者最好早吃,在6点半前,养生者在7点半前,不吃早餐者应改变习惯,即使拖到9、10点吃都比不吃好。
七、半夜至凌晨4点为脊椎造血时段,必须熟睡,不宜熬夜。
本文转载自免费软件资讯站

本文来自: 世界上最健康的作息时间表,并祝新年快乐

成功的用户界面的8个特性 / 8 Characteristics Of Successful User Interfaces

<Category: collection> 1 条评论

转载自乐闻设计http://www.gaolewen.com/

当你构建你的用户界面和网站的时候,有各种各样的关于界面设计方法和模式的信息你可以使用, 对常见问题的解决方案和一般可用性的建议。下列专家给出的准则可能会引导你创造一个良好的用户界面, 但是究竟什么才是一个良好的界面? 一个有价值的用户界面应该具有那些特性?以下八个特性是一个良好的用户界面所必须的:

清楚
简明
熟悉
易响应
一致
吸引力
高效
宽容

There is a lot of information out there about various interface design techniques and patterns you can use when crafting your user interfaces and websites, solutions to common problems and general usability recommendations. Following guidelines from experts will likely lead you towards creating a good user interface — but what exactly is a good interface? What are the characteristics of an effective user interface?

 

1.  Clear / 清楚的
清晰度是用户界面设计最重要的元素。事实上,用户界面设计的所有目的是为了使人们能够与您的系统通过沟通和功能来进行交互。 如果人们不知道你的应用程序怎样工作或在你的网站上应该去哪里,他们会困惑和沮丧。
2009111011382570
这是什么呢?鼠标移到WordPress的按钮时工具提示会弹出解释其职能。

2. Concise / 简明
清晰的用户界面是很好的,但是,您应该谨慎,不要陷入过度明晰。定义和解释很容易被添加,但是你这样做的同时也增大了规模。您的界面规模增加。添加过多的解释,您的用户将不得不花费过多的时间去读它们。
不仅要保持清晰,而且还保持简洁。当你能用一句话解释一项功能的时候就不要用三句话。当你可以用一个单词标记一个项,就不要用两个。 保持简洁可以节省你的用户的宝贵的时间。 同时保持清晰和简明并不容易,需要足够的时间和努力来实现,但其回报是值得的。  
2009111011383512
在 OS X 的音量控制中使用两个小图标以显示的音量从低到高。

3.  Familiar / 熟悉
许多设计师努力使自己的界面,直观。但到底直观的真正意思是什么?直观也就是就是说可以自然地,本能地理解和领会。但是你怎么能做到直观一些?你可通过是它变的熟悉来实现。熟悉就是, 跟你以前遇到过的东西相似。当你熟悉的东西,你就知道怎样它怎么做-你知道会发生什么事情。 弄清你的用户熟悉的并把它们融合到你的用户界面中。
2009111011384270
GoPlan的标签页式界面。标签很熟悉,因为他们模仿文件夹上的标签。你清楚知道点击标签您将浏览该节和其他地方的标签将继续存在为了进一步导航。

4.  Responsive / 易响应
易响应意味着两件事。首先,易响应意味着快速。如果没有软件在后台,界面应该响应很快。等待加载和缓慢的界面是令人沮丧。看起来加载的很快,反正就是界面快速载入(即使内容尚未赶上)改善了用户体验。
易响应也意味着界面提供某种形式的反馈。界面应该反馈给用户,告知他们现在怎么了。你成功地按下那个按钮吗?你将如何知道?按钮应显示一个被按了的状态反馈,或许可以把按钮上的文字改成“正在加载… ”并且禁用按钮。是软件挂了还是内容载入中?用转动的轮子或显示进度栏的方式来保持用户在进程中。
2009111011384789
Gmail会显示一个进度栏当您第一次进入您的收件箱。 而不是逐步载入网页时,一旦一切准备就绪整个页面即时显示。

5.  Consistent / 一致
之前我谈过关于上下文的重要性,以及它应如何指导你的设计决定。我认为,适应任何给定的上下文是很聪明,但是,一个界面仍然应保持一定程度的一致性。
一致的界面,使用户能够开发惯用模式-他们会了解不同的按钮,标签,图示和其他界面元素的外观,并识别他们。认识到在不同的情况他们所做的事情不同。他们也将了解特定的东西如何工作,能够从过去的经验中更快的总结知道如何操作新功能。
2009111011384227
在Microsoft Office的用户界面是一致的是有原因的。

6.  Attractive / 吸引力
这可能有一点争议,但我相信一个良好的界面应该有吸引力。吸引力在某种意义上,是与界面交互变得是愉快。是的,你可以让你的用户界面简单,易于使用,有效率和易反应,它将尽其出色-但如果你可以做额外的一步,使之有吸引力的。那样用户体验会真正令人满意。当你的软件使用起来是令人愉快的,你的客户或工作人员将不仅是简单地使用它-他们会期待着使用它。

当然有许多不同类型的软件和网站,所有的创作针对的不同的市场和用户。什么样看来’好’对任何一个特定的观众都会有所不同。这就是说,你应该为了你的用户来包装你的界面的的外观和风格。此外,美感设计应适度使用,并且是为了加强功能。美化界面不同于加载时使用多余的眼睛糖果。
2009111011385924
谷歌是众所周知的极简洁的界面,他们关注功能重于形式,但他们显然的花费时间美化了Chrome用户界面元素,如按钮和图标,使它们看起来正好体现了微妙的梯度和像素超薄突出。

7.  Efficient / 高效率
用户界面像是车辆,带你去你要到的地方。这些地方是软件应用程序或网站的不同的功能。一个良好的界面可让您在执行这些功能更快。现在, ‘有效’听起来像一个相当模糊的属性-如果你把所有其他的事情在这个清单上,当然界面到头来还是需要高效?差不多,但不完全。
你真正需要做的是使界面能高效的找出用户努力想要实现的,然后让他们可以有条不紊的做到。您必须确定您的应用程序应该如何工作’ -什么功能它需要有,什么样的目标是你努力努力争取实现?实现一个界面,可以让人们轻松地完成他们想要做的,而不只是简单的实现对各个功能的访问。
2009111011386611
苹果公司已经确认了人们在其iPhone上想要对照片做三个关键的事情,并在照片控制中提供按钮来分别完成他们。

8.  Forgiving / 宽容
没有人是完美的,当使用你的软件或网站必定有人会犯错误。 如何处理这些错误将成为你的软件的质量一个重要指标。不要惩罚用户-建立一个宽容的界面,纠正问题。
一个宽容的界面可以使你的用户远离代价高昂的错误。例如,如果有人删除了重要的信息,他们可以轻松地重新检索或撤消这一行动? 当有人浏览到损坏或不存在的网页,他们会看到什么?他们会迎接一个加密的错误提示还是得到了一些有用的替代目的地?
2009111011386395
错误的删除了电子邮件?Gmail可让您迅速取消上一次的操作。

To conclude…结束…
实现这些特性实际上可能同实现另外一些特性产生冲突。例如,试图使一个界面清晰,您可能会增加太多的描述和解释,即最终使整个界面变得大而笨重。缩减容量,努力使事情简洁可能产生相反的效果,使东西模糊不清。实现一个完美的平衡需要的技能和时间,解决方案根据不同的案例也并不一样。

本文来自: 成功的用户界面的8个特性 / 8 Characteristics Of Successful User Interfaces

AS3 优化 之 FOR内循环

<Category: flash> 发表评论

转载自8ria
写游戏只要有思路,就能实现,但这也只是从功能角度出发,能不能有好的效率,才是关键,于是想积累一些关于优化方面的知识。

关于AS3 FOR内循环的优化

当我们遍历一个数组的时候 ,你可能会这样写

private function testFor() : void
{
var tmpVar:int;

for(var i:Number=0; i {
tmpVar = testArray[i];
}
}

执行这个函数50次,所用的时间是53.34毫秒。

如果我们将number类型改成int类型,如下

for(var i:int=0; i

这样所执行的时间是35.58毫秒。

如果先把数组的长度计算出来,速度会更快

var l:int = testArray.length;

for(var i:int=0; i

这个仅仅用了21.6毫秒

所以在for循环上int比number快,将length在循环外事先定义出来比直接写在for条件语句里面要快。

再看两段代码

var tmpVar:int;

for(var i:Number=0; i<100000; i++)
{
tmpVar = SomeClass.SOME_CONSTANT;
}

var tmpVar:int;
var myConstant:int = SomeClass.SOME_CONSTANT;

for(var i:Number=0; i<100000; i++)
{
tmpVar = myConstant;
}

前者的运行速度是34.08毫秒,后者的速度是 15.8毫秒

所以说 在FOR循环外先取到类属性,比拿到FOR循环内再去取类的属性的速度要快

变量在FOR内的定义
for(var i:int=0; i<100000; i++)
{
var v1:Number=10;
var v2:Number=10;
var v3:Number=10;
var v4:Number=10;
var v5:Number=10;
}
这个FOR需要用46.52毫秒,如果你用一个 var 去定义所有,将这些变量写成一行,像这样

for(var i:int=0; i<100000; i++)
{
var v1:Number=10, v2:Number=10, v3:Number=10, v4:Number=10, v5:Number=10;
}

执行之间缩短到 19.74

所以 在FOR循环内 尽量减少var这个关键字出现的次数,会提高效率

逻辑运算符的适当运用也会提高效率的

for(var i:int=0; i<100000; i++)
{
var val1:int = 4 * 2;
var val2:int = 4 * 4;
var val3:int = 4 / 2;
var val4:int = 4 / 4;
}

这段执行时间为 49.12 毫秒, 如果换成下面的代码,将会降到 35.56 毫秒

for(var i:int=0; i<100000; i++)
{
var val1:int = 4 << 1;
var val2:int = 4 << 2; var val3:int = 4 >> 1;
var val4:int = 4 >> 2;
}

本文来自: AS3 优化 之 FOR内循环

switch case

<Category: flash> 3 条评论

switch (event.keyCode)
{
case Keyboard.DOWN:
case Keyboard.PAGE_DOWN:
case Keyboard.RIGHT:
 book.pageDown();
break;
case Keyboard.UP:
case Keyboard.PAGE_UP:
case Keyboard.LEFT:
 book.pageUp();
break;
}

 

今天才发现switch case还可以这样写的。

本文来自: switch case

AS3 Data Structures For Game Developers (AS3DS)

<Category: flash> 发表评论

以下是kevin Cao  总结的这个类库里面实现了哪些数据结构:

  • Multi-Dimensional Arrays (多维数组)
  • Queue (队列,先入先出)
  • Stack (堆栈,先入后出)
  • Tree (树)
  • Binary Tree (二叉树,每个节点最多只允许两个子节点)
  • Binary Search Tree (BST) and Hash Table (哈希表)
  • Linked Lists (链表,可以包含向前或向后的指针)
  • Graph (图)
  • Bit Vector (位向量)
  • 这些数据结构都是游戏开发中常用的,我正准备研究下这个类库!

    http://lab.polygonal.de/ds/

    本文来自: AS3 Data Structures For Game Developers (AS3DS)