摘要:学习并尝试敏捷以来,目前是第三个团队。第一个团队,在一个小公司,我负责公司两个开发团队之一。那是第一次带队开发,没有什么项目管理经验,在强大的开发压力下,有一段时间把自己搞的焦头烂额:团队成员比较清闲,因为他们没能力解决复杂的问题,我自己天天忙死累活。痛定思痛的开始研究项目管理,尝试了一些传统的管理方式,很不给力,然后就接触到极限编程、敏捷开发。首次的敏捷尝试,给了我很多惊喜。我们对一个旧系统进行了较大的升级改造(累积了数年的一个面条式程序,可以想象它的糟糕程度)在这次开发过程中,我们尝试了结对编程、测试驱动、立会、回顾总结等等一些敏捷的方式方法。这是一次非常有益的尝试,我们顺利完成升级,减少 阅读全文
浅谈极限编程(XP)和代码重构(Refectoring)
2011-09-02 10:50 by htc开发, 259 阅读, 0 推荐, 收藏, 编辑
摘要:“历史”教会我们一个道理可是我们常常会忘记任何新技术、新思想无论它们有多“赞”无论它们有多“烂”从它们出现在世人面前那天起人们自然而然地分成对立两派——赞同与反对,坚信与怀疑比如相对论,当时全世界只有不超过五个人能够理解,反对声一片比如干细胞,在包治百病的巨大诱惑下,人类有被重新定义的危险比如核建设,在提供无限能量的同时,却也可在瞬间摧毁一个城市……哲学说任何事物既包含肯定的因素(使其成长),也包含否定的因素(使其灭亡)而黑格尔则说“否定的否定”、“辩证的否定”——辩证的过程Delphi、CB这些曾被广泛采用的工具现在的结局令很多老程序员感到惋惜代码重构和极限编程也是如此即便在那些计算机大师们 阅读全文
Android UI Design Tips(Google官方出品:Android UI 设计指导)——第一部分
2011-08-30 09:37 by htc开发, 335 阅读, 0 推荐, 收藏, 编辑
摘要:发表于 2011 年 08 月 11 日 由 wenjianhua Android UI Design Tips是Google官方开发者博客上发布的一组PPT,旨在指导设计和开发者如何构建一个卓越的应用程序。既然是Android他母亲写的,了解自己儿子的肯定是自己的父母嘛。没错,这几组PPT确实很精品。因此在网上找了些翻译资料,大多都只翻译了前面一小部门,后面的我准备参考其它人的只言片语,勉强翻译翻译,第一次翻译,水准不高,将就看吧。开始为什么我们要关心 UI?如果一个应用软件具备良好的使用体验,那么:1. 用户所感知的软件质量越好2. 将给你更高的评分3. 软件会有更好的排名4. ... 阅读全文
浅谈按钮分组和位置
2011-08-24 15:04 by htc开发, 166 阅读, 0 推荐, 收藏, 编辑
摘要:1.视觉流向用户浏览页面的视觉流向通常是从左上至右下的一条弧线,我们可以看到通常浏览器的操作都是在右侧,关闭|缩小|滚动条等等。符合视觉流向通常情况下,我们会将按钮安排在相同的对象右边,或者是下面,但是复杂界面元素的底部一般是用户的“盲点”。我们将影响整个页面或者对话框的按钮,确认|取消|下一页|保存这样类按钮设置在弹出框的右侧有很好的扩展性,左侧可以添加帮助按钮,这样有助于功能的区域划分。如果按钮都有自己的小图标,类似用于表单,列表中,可以将它们放在工具条或者类似工具条狭长的区域上,通常在页面的顶部。按钮的位置1.视觉流向用户浏览页面的视觉流向通常是从左上至右下的一条弧线,我们可以看到通常浏 阅读全文
XML Schema教程——XML应用
2011-08-22 22:04 by htc开发, 188 阅读, 0 推荐, 收藏, 编辑
摘要: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开发, 173 阅读, 0 推荐, 收藏, 编辑
摘要: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开发, 136 阅读, 0 推荐, 收藏, 编辑
摘要:在C语言中,假设我们有这样的一个函数: int function(int a,int b) 调用时只要用result = function(1,2)这样的方式就可以使用这个函数。但是,当高级语言被编译成计算机可以识别的机器码时,有一个问题就凸现出来:在CPU中,计算机没有办法知道一个函数调用需要多少个、什么样的参数,也没有硬件可以保存这些参数。也就是说,计算机不知道怎么给这个函数传递参数,传递参数的工作必须由函数调用者和函数本身来协调。为此,计算机提供了一种被称为栈的数据结构来支持参数传递。 栈是一种先进后出的数据结构,栈有一个存储区、一个栈顶指针。栈顶指针指向堆栈中第一个可用的... 阅读全文
__attribute__ 详解
2011-08-22 10:23 by htc开发, 148 阅读, 0 推荐, 收藏, 编辑
摘要: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开发, 1287 阅读, 0 推荐, 收藏, 编辑
摘要: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 阅读, 0 推荐, 收藏, 编辑
摘要:9.5如何窃听协议 增加一个窃听接口到协议上可以让我们做一些有用得事情。尤其是可以从窃听接口上产生协议统计。 一个窃听器基本上是一种让其他项目了解当一个协议被解析时发生了什么事情的方法。窃听器在主程序中被注册,然后在每一个解析器中被调用。一些被整个例程提供的确定的协议标识数据也可以被使用。 要使用窃听器,必须首先注册。窃听器注册时返回一个整型句柄,使用例程register_tap注册,它带有一个字符串名称,注册之后我们可以通过这个字符串找到它。例子9.19初始化一个窃听器#include<epan/packet.h>#include<epan/tap.h>statici 阅读全文