敏捷软件开发不是黑客行为

(本文发表于程序员杂志2006年第4期) 在很多人的印象中,敏捷软件开发是种类似黑客行为的过程,是程序员最爱的勾当。不写文档,不作需求分析,没有项目经理,做什么东西完全是程序员自己的行为。所以他们认为这样的过程无法满足真正大型项目和复杂项目的需要,因此在经过考虑后,放弃了敏捷方法。 真的是这样吗?敏捷过程到底是如何做需求分析?用户故事和用例有什么区别?敏捷过程如何去管理需求的?这些是一些想要实践敏捷的人一直在困惑的事情。 我们常常看到书中讲,程序员拿到一个用户故事后,怎么计划,怎么分解,怎么写单元测试,怎么小步前进,怎么持续集成。这是典型的程序员视角。事实上,敏捷方法分为三部分,敏...
2007-07-06 22:27 | 阅读 1004 次 | 评论 0 条

闲谈用人

闲谈用人 转自:JavaEye 作者:arath 上周末和一个大学同学吃饭。这位同学刚海归,自己办了一个贸易公司,招了一个应届的女孩子作类似助理的工作,每月税前工资2200,还有年底奖金。当时我感到很惊讶,同学公司开了不到半年,而且这个女孩子所在的事情简单(主要是处理邮件,管理一下货物单据)也不多,于是便向同学说你这样是不是给的太高了,怀疑同学用国外的水平来作了参考,现在上海普遍的应届指导工资都很低。同学就说,的确是比较高的,而且还要缴纳所有的社会福利,折算一个人要4000多成本,但是他觉得这个女孩子工作主动、仔细还能吃苦,上班从来不迟到而且每次都要早到,所以基本上上海这边的工作...
2007-06-29 20:27 | 阅读 727 次 | 评论 0 条

unicorn的java课堂笔记(9)下

6.字符串与字符,字节数组1)字符串和字符数组a)用字符数组创建字符串对象 String (char[]) //该构造方法用指定的字符数组构造一个字符串对象String (char[],int offset,int length) //用指定的字符数组的一部分,即从起始位置offset开始取length个字符构造字符串对象 如前面的例子: char a[]={'b','o','y'};String s=new=new String(a); b)将字符串中的字符复制到字符数组public void getChars(int start,int end,char c[],int of...
2006-12-17 21:42 | 阅读 976 次 | 评论 0 条

unicorn的java课堂笔记(9)上

第九节课 字符串 1.什么是字符串 java使用java.lang包中的String类来创建一个字符串变量,因此字符串变量是一个对象. a) 字符串常量 如, "你好","bc-cn","12345789" 字符串常量在内存中一但定义,地址空间是不可改变的,直到程序结束.就是说字符串常量在内存中有固定的地址. b) 声明字符串 String str; c) 创建字符串 使用String类的构造方法,例如: str=new String("I like bc-cn.net"); //当然如果没有声明直接创建也是可以的,回忆一下匿名类的概念 声明和创建可以一步完成: ...
2006-12-17 21:41 | 阅读 955 次 | 评论 1 条

unicorn的java课堂笔记(8)下

3.异常类 所谓异常就是程序运行时可能出现的一些错误,如试图打开一个根本不存在的文件等,异常处理将会改变程序的控制流程,让程序有机会对错误作出处理. 当程序运行出现异常时,java运行环境就用异常类Exception的相应子类创建一个异常对象,并等待处理,例如读取下一个不存在的文 件时,运行环境就用异常类IOException创建一个对象.异常对象可以调用如下方法得到或输出有关异常的信息:public String getMessage() , public void printStackTrace() , public String toString() java使用tr...
2006-12-17 21:39 | 阅读 973 次 | 评论 0 条

unicorn的java课堂笔记(8)上

第八节课 一些比较重要的类 1.内部类 类可以有两种重要的成员:成员变量和方法,类还可以有一种成员:内部类.java支持在一个类中声明另一个类,这样的类称为内部类,而包含内部类的类称为内部类的外部类.声明内部类如同在类中声明方法 和成员变量一样,一个类把内部类看作是自己的成员.内部类的外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用 外嵌类中的方法.内部类的类体中不可以声明类变量和方法.外嵌类的类体中可以用内部类声明对象,作为外嵌类的成员.举例体会: 程序代码:class China{ final String nationalAnthem="义勇军进行曲";...
2006-12-17 21:34 | 阅读 1067 次 | 评论 0 条

unicorn的java课堂笔记(7)

第七节课 接 口 接口在java中尤其是面向对象语言中是一个很重要的概念.java中使用接口概念的原因:java不支持多继承性,即一个类只能有一个父类.单继承性使得java简单,易于管理程序.为了克服单继 承的缺点,java使用了接口. 一个类可以实现多个接口.使用关键字interface来定义一个接口.接口的定义和类的定义很相似,分为接口的声明和接口体. 1.接口声明及接口体 前面曾使用class关键字来声明类,接口通过使用关键字interface来声明.格式 interface 接口的名字 接口体中包含常量的定义和方法定义两部分.接口体中只进行方法的声明,不允许提供方...
2006-12-17 21:31 | 阅读 1426 次 | 评论 0 条

Java游戏编程读书笔记(1)(2)

源自:默然 (个人网站) 第1章 Java 2软件开发工具包 摘要:清华大学出版杜出版,[美]Thomas Petchel著,晏利斌,孙淑敏,邵荣翻译还不错哦,不过第一部分好象就是一个目录,嘿嘿^_^ 很喜欢他的开篇语:经验是严厉的老师,她总是先考试,后教学 1.1 Java简史 1.2 为什么在游戏中使用Java 1.3 为Java准备系统 1.3.1 安装Java SDK 1.3.2 编译和运行Java程序 1.3.3 使用命令行 1.3.4 使用集成...
2006-10-28 20:32 | 阅读 1056 次 | 评论 0 条

unicorn的java课堂笔记(六)

第六节课 多态与抽象类 多态是java中一个比较重要的概念,在认识和理解它之前先熟悉一下下面的几个概念. 1.成员变量的隐藏和方法的重写 成员变量的隐藏:子类可以隐藏继承的成员变量,对于子类可以从父类继承成员变量,只要子类中定义的成员变量和父类中的成员变量 同名时,子类就隐藏了继承的成员变量.但不提倡这种做法,子类总是自己定义变量而隐藏父类的变量,这样会浪费很多空间. 方法的重写:子类可以隐藏已继承的方法,子类通过方法重写来隐藏继承的方法.具体是指,子类中定义一个方法,并且这个方法的名字 ,返回值类型,参数个数和类型与父类继承的方法完全相同.注意:方法的重写与方法的重载要分...
2006-10-26 17:45 | 阅读 1117 次 | 评论 0 条

unicorn的java课堂笔记(五)

第五节课 继承与访问权限 继承的概念:继承是一种由己有的类创建新类的机制.利用继承,可以先创建一个共有属性的一般类,根据该一般类再创建具有特殊属性的新类,新类继承一般类的状态和行为,并根据需要增加它自己的新的状态和行为.由继承而得到的类称为子类,被继承的类称为父亲.java不支持多重继承,即子类只能有一个父亲(有别于C++的语法). 子类:在类的声明中,通过使用关键字extends来声明一个类的子类,格式为:class 子类名 extends 父类名{//...} 注:如果一个类声明中没有使用extends关键字,这个类被系统默认为是Object的直接子类,Object是jav...
2006-10-26 17:44 | 阅读 1225 次 | 评论 0 条

unicorn的java学习笔记 评论篇(不断更新中……)

由于《java学习笔记》原文发表于论坛上,跟帖中经常有很多补充的知识,所以我把这些有代表性的跟帖复制下来,收集在下面,便于理解原文,本文将不断增加新的跟帖。 1、 以下是引用qsrock在2006-9-17 14:59:42的发言:我看了你第1节课的内容!~Boy.java程序和<html><applet code=Boy.class width=100, height=100></applet></html>是怎么运行的!~我运行出来的是一个 X的图片 这说明你的浏览器不支持APPLET,如果支持APPLET的话,是可以看到APPLET 的不过,看一看你是Boy.class...
2006-10-07 08:53 | 阅读 1232 次 | 评论 1 条

关于unicorn的java笔记的连载说明

本文作者是unicorn 发表于:编程中国→ 编程论坛 → 开发语言 → JAVA论坛 → 『 J2SE论坛 』 → [原创]课堂笔记学习java(初级) 原作网址:http://bbs.bc-cn.net/dispbbs.asp?boardid=8&amp;replyid=318241&amp;id=89608&amp;page=1&amp;skin=0&amp;Star=1
2006-10-07 08:48 | 阅读 873 次 | 评论 0 条

关于《转帖&&连载》栏目的说明

此栏目专门为连载各论坛上及各博客上分期撰写的好文章,以便保存、阅读,绝无盗版、侵权之意。并且每部连载均附原文出处及作者姓名,诸位访客可以自行拜访作者。
2006-10-07 08:39 | 阅读 731 次 | 评论 0 条

unicorn的java课堂笔记(四)

第四节课static的用法和包 上次课提到了static关键字,下面介绍一下具体的用法 1.实例变量和类变量 我们已经知道一个类可以使用new关键字可以创建多个不同的对象,这些对象被分配不同的内存空间.具体说的话,不同的对象的实例变量将被分配不同的内存空间,如果类中的成员变量有类变量,那么所有对象的这个类变量都分配分配给相同的一处内存,改变其中一个对象的这个类变量会影响其他对象的这个类变量,也就是说对象共享类变量.如 程序代码:class Takecare{static int x;int y;} class A{Takecare A1=now Takecare();...
2006-10-07 02:55 | 阅读 944 次 | 评论 1 条

unicorn的java课堂笔记(三)

第三节课 运算符 表达式和语句因为大家肯定都学过C或C++的,所以这部分的内容自己可以回忆,都是一样的,略. 类和对象 1.类:类是组成java程序的基本要素.类封装了一类对象的状态和方法.类是用来定义对象的模板. 类的实现包括两个部分:类声明和类体.基本格式为: 程序代码:class 类名 {类体的内容} 其中class是关键字,用来类定义."class 类名"是类的声明部分,类名必须是合法的java标识符,{}之间的内容是类 体,由变量的定义和方法(函数)的定义组成.所谓变量定义,如int x或 intx=10; 但不能出现除声明以外的变量操作语句,如 i...
2006-10-07 02:55 | 阅读 739 次 | 评论 0 条

unicorn的java课堂笔记(二)

第二节课 标识符 关键字及数据类型 1.标识符: 用来表示类名,变量名,方法名,类型名,数组名,文件名的有效字符序列. 特点:java语言规定标识符由字母,下划线,美元符号和数字组成,并且第一个字符不能是数字字符. java语言使用unicode标准字符集其包含65536个字符,比C和C++所使用的ASCII码多很多. 2.关键字:编程语言中已经被赋予特定意义的一些单词,不能把这类词作为名字来用,具体的关键字书上列举的很全,略. 3.数据类型 逻辑类型: boolean 用ture(真)和false(假)来赋值,没有赋值默认情况时表示false 整数类...
2006-10-07 02:54 | 阅读 1020 次 | 评论 0 条

unicorn的java课堂笔记(一)

第一节课: 1. java 语言的诞生和特点(一般的教材都会有很详细的叙述,略) 2. java 学习的起步 (1)Sun公司要实现“编写一次,到处运行”(Write once,run anywhere)的目标,必须提供相应的Java运行平台,目前Java运行平台主要分为3个版本:J2SE(标准平台),J2EE(企业平台),J2ME(移动平台) (2)学习Java必须从J2SE开始,当然得从了解在标准平台(J2SE)上是如何开发程序开始. a.首先从源文件(以.java结尾的文件)开始----经过java编译器(javac.exe)编译----生...
2006-10-07 02:51 | 阅读 963 次 | 评论 0 条