摘要:
发表于 2011 年 08 月 11 日 由 wenjianhua Android UI Design Tips是Google官方开发者博客上发布的一组PPT,旨在指导设计和开发者如何构建一个卓越的应用程序。既然是Android他母亲写的,了解自己儿子的肯定是自己的父母嘛。没错,这几组PPT确实很精品。因此在网上找了些翻译资料,大多都只翻译了前面一小部门,后面的我准备参考其它人的只言片语,勉强翻译翻译,第一次翻译,水准不高,将就看吧。开始为什么我们要关心 UI?如果一个应用软件具备良好的使用体验,那么:1. 用户所感知的软件质量越好2. 将给你更高的评分3. 软件会有更好的排名4. ... 阅读全文
随笔档案-2011年08月
浅谈按钮分组和位置
2011-08-24 15:04 by htc开发, 186 阅读, 收藏,
摘要:
1.视觉流向用户浏览页面的视觉流向通常是从左上至右下的一条弧线,我们可以看到通常浏览器的操作都是在右侧,关闭|缩小|滚动条等等。符合视觉流向通常情况下,我们会将按钮安排在相同的对象右边,或者是下面,但是复杂界面元素的底部一般是用户的“盲点”。我们将影响整个页面或者对话框的按钮,确认|取消|下一页|保存这样类按钮设置在弹出框的右侧有很好的扩展性,左侧可以添加帮助按钮,这样有助于功能的区域划分。如果按钮都有自己的小图标,类似用于表单,列表中,可以将它们放在工具条或者类似工具条狭长的区域上,通常在页面的顶部。按钮的位置1.视觉流向用户浏览页面的视觉流向通常是从左上至右下的一条弧线,我们可以看到通常浏 阅读全文
XML Schema教程——XML应用
2011-08-22 22:04 by htc开发, 193 阅读, 收藏,
摘要:
1. 最简单的schema文档 如何写一个最简单的xml schema文档呢? 首先,我们写出一个最简单的xml文档。 hello.xml ------------------- <?xml version="1.0"?> <greeting>hello world!!</greeting> <!--一个根元素:greeting;且这个元素不含属性,无子元素,内容是字符串。--> hello.xsd ---------- <?xml version="1.0"?> <xsd:schema 阅读全文
XML Schema介绍
2011-08-22 17:24 by htc开发, 183 阅读, 收藏,
摘要:
XML Schema是基于 XML 的 DTD 替代者。XML Schema描述 XML 文档的结构。XML Schema语言也称作 XML Schema 定义(XML Schema Definition,XSD)。什么是 XML Schema?XML Schema 的作用是定义 XML 文档的合法构建模块,类似 DTD。XML Schema:定义可出现在文档中的元素定义可出现在文档中的属性定义哪个元素是子元素定义子元素的次序定义子元素的数目定义元素是否为空,或者是否可包含文本定义元素和属性的数据类型定义元素和属性的默认值以及固定值XML Schema是 DTD 的继任者我们认为 XML Sc 阅读全文
cdecl、stdcall、fastcall函数调用约定区别
2011-08-22 10:43 by htc开发, 147 阅读, 收藏,
摘要:
在C语言中,假设我们有这样的一个函数: int function(int a,int b) 调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者和函数本身来协调。为此,计算机提供了一种被称为栈的数据结构来支持参数传递。 栈是一种先进后出的数据结构,栈有一个存储区、一个栈顶指针。栈顶指针指向堆栈中第一个可用的... 阅读全文
__attribute__ 详解
2011-08-22 10:23 by htc开发, 157 阅读, 收藏,
摘要:
From http://hi.baidu.com/cygnusnow/blog/item/8b82000f871fcf2f6159f3de.htmlGNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)。__attribute__书写特征是:__attribute__前后都有两个下划线,并切后面会紧跟一对原括弧,括弧里面是相应的__attribute__参数。__attribute__语法格式为:__ 阅读全文
wireshark开发者手册中文版——如何产生协议统计
2011-08-19 14:07 by htc开发, 1303 阅读, 收藏,
摘要:
9.6如何产生协议统计如果你的协议已经有了一个窃听器接口,你可以使用它从协议追踪中产生一些有趣的统计信息(假设是有趣的吧!)这个可以在一个分离的插件中完成,也可以在进行协议解析的同一个插件中完成。第二种模式更好一些,因为窃听器和统计模块通常依靠共享协议指定数据,这些数据在不同插件中可能需要的步骤更加繁琐。下面是一个在TAP接口之上产生统计的机制。例子9.21初始化状态接口/*registerallhttptrees*/staticvoidregister_foo_stat_trees(void){stats_tree_register("foo","foo&quo 阅读全文
wireshark开发者手册中文版——如何窃听协议
2011-08-19 12:31 by htc开发, 449 阅读, 收藏,
摘要:
9.5如何窃听协议 增加一个窃听接口到协议上可以让我们做一些有用得事情。尤其是可以从窃听接口上产生协议统计。 一个窃听器基本上是一种让其他项目了解当一个协议被解析时发生了什么事情的方法。窃听器在主程序中被注册,然后在每一个解析器中被调用。一些被整个例程提供的确定的协议标识数据也可以被使用。 要使用窃听器,必须首先注册。窃听器注册时返回一个整型句柄,使用例程register_tap注册,它带有一个字符串名称,注册之后我们可以通过这个字符串找到它。例子9.19初始化一个窃听器#include<epan/packet.h>#include<epan/tap.h>statici 阅读全文
Linux中EXPORT_SYMBOL的用法
2011-08-11 14:26 by htc开发, 309 阅读, 收藏,
摘要:
Linux中EXPORT_SYMBOL的用法EXPORT_SYMBOL标签内定义的函数对全部内核代码公开,不用修改内核代码就可以在您的内核模块中直接调用。您还可以手工修改内核源代码来导出另外的函数,用于重新编译并加载新内核后的测试。 阅读全文
友善之臂mini2440的头文件定义地址
2011-08-11 14:25 by htc开发, 236 阅读, 收藏,
摘要:
include/linux/arch/arm/march-2410/include/mach/regs-gpio.h 阅读全文
k-means clustering K平均算法
2011-08-10 09:29 by htc开发, 176 阅读, 收藏,
摘要:
此算法的主要作用:屏幕上很多的点,把相邻的点聚到离他最近的点。k-means algorithm算法是一个聚类算法,把n个对象根据他们的属性分为k个分割,k < n。它与处理混合正态分布的最大期望算法很相似,因为他们都试图找到数据中自然聚类的中心。php实现算法代码如下:class Cluster
{ public $points; public $avgPoint; function calculateAverage($maxX, $maxY) { if (count($this->points)==0) { $this->avgPoint->... 阅读全文
C++设计模式-原型
2011-08-03 20:05 by htc开发, 196 阅读, 收藏,
摘要:
定义用原型(Prototype)实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。结构理解1. Prototype是原型基类,提供Clone纯虚方法,它根据不同的派生类来克隆不同的对象。2. ConcretePrototype是原型具体类。实现Clone方法,克隆自己,返回克隆后的新对象。3. Client调用基类Clone接口,就可以得到一个克隆对象。要点1. 原型模式中,Client并不知道要克隆对象的实际类型,只需知道基类类型即可。2. 克隆对象比直接创建对象的优点在于,克隆是将原有对象的行为属性带到了新的对象中。3. C++没有克隆方法,要克隆一个对象,需要借助拷贝构造函数(C 阅读全文
C++设计模式-生成器
2011-08-03 14:38 by htc开发, 350 阅读, 收藏,
摘要:
定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。结构理解1. 生成器(Builder)模式是一步步构建一个复杂的产品,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们,用户不知道内部的具体构建细节。2. Builder基类创建复杂产品(Product)全过程的抽象基类。Builder基类提供若干个构造部件(BuildPart)的方法(基类提供缺省实现)。具体构建产品的过程由ConcreteBuilder实现,GetResult()是获取构造完成后的对象(该方法并不在基类中!因为产品Product一般没有抽象基类。如果产品有抽象基类,GetResult就可 阅读全文
C++设计模式-抽象工厂
2011-08-02 21:03 by htc开发, 176 阅读, 收藏,
摘要:
定义提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。结构理解1.AbstractFactory是抽象工厂类,声明创建产品族的接口。具体工厂创建具体的产品族(Product Family),可以创建出分属于不同产品等级的一个产品族中的所有对象。ConcreteFactory1和ConcreteFactory2分别生产2个不同产品族。举例:手机工厂生产的产品族中,产品有Linux系统的手机和Windows系统的手机。PC工厂生产的产品族中,产品有Linux系统的PC和Windows系统的PC。2.AbstractProductA和AbstractProductB是产品基类。它们 阅读全文
C++设计模式-单件
2011-08-02 19:38 by htc开发, 227 阅读, 收藏,
摘要:
定义单件(Singleton)模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。结构理解1.Singleton模式用来取代全局静态变量。C++通过静态成员变量来实现类实例全局唯一性。2.instance()方法是单件提供的唯一调用入口。要点1.为了防止外界调用产生多个实例,将构造方法、析构方法、拷贝构造方法、赋值重载方法都作为protected。2.instance()方法产生对象方式有两种:使用局部static对象,生命期在首次进入局部生命期产生,在程序结束时销毁;通过new产生新对象,在析构方法中delete对象。3.获取单件实例调用方式:Singleton::instance() 阅读全文
C++设计模式-工厂方法
2011-08-02 16:55 by htc开发, 169 阅读, 收藏,
摘要:
定义定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法(Factory Method)使一个类的实例化延迟到其子类。也叫虚构造器(Virtual Constructor)结构理解1.Product是工厂方法生产产品的抽象基类。2.Creator是生产产品的工厂对象抽象基类。Creator提供创建虚方法即工厂方法FactoryMeothod()。FactoryMeothod()由派生类(ConcreteCreator)具体实现,生产对应的具体产品(ConcreteProduct)。3.ConcreteProduct是继承Product的具体产品。4.ConcreteCreator是生 阅读全文
浙公网安备 33010602011771号