马可波罗的梦乡

BlogJava 首页 新随笔 联系 聚合 管理
  4 Posts :: 50 Stories :: 2 Comments :: 0 Trackbacks
应用软件架构分为两层,分别是平台层和应用层。
平台层通常用于提供基础框架和大量可重用组件。

分需求、设计、实现和测试。
组件要设计成可重用、易于扩展和高性能的软件实体。
呵呵,高要求。搞了这么长时间,还没有在topcoder上认真玩过一回呢,要加油了

不经任何改造,可直接用于商业软件的优秀组件并不多。于是核心软件开发者时常要面对的一种尴尬局面:大量的开源软件,但是找不到满足自己要求的组件。

组件设计是软件设计开发最精髓所在,凝聚了面向对象、数据结构、设计模式、线程并发同步、网络通信、操作系统等诸多领域的核心技术,一直是设计开发领域彰显技术水准的高地

作者在书中对核心能力划分了3个等级。说一个本科生毕业后,达到第一个层次至少需要2~3年,达到第二个层次至少需要3~4年,修炼到第三个层次,还需要2~3年。   呵呵,怎样做才能缩短这个漫长的修炼过程呢?
3个过程同时修炼,需要5年时间才可以涉足组件设计这个领域?

组件暴露出来给外界使用的接口,必须足够简单。

组件设计者不应该对组件将来的使用环境做任何假设。

最简单的组件,就是一个类。 高内聚,低耦合是设计原则。要尽量控制类的数量。理想的组件是一个类?

首先介绍的是一些高级Java设计技巧。
常用的工具类方法基本上都以static方式声明。
Java中的static和C++中的static是完全不同的。一个普通Java类用static修饰,会编译错误。而在C++中是可以这么做的。在C++中用static修饰类,则这个类中的所有成员变量和成员函数都是静态的,它们独立于对象而存在

HashSet内部是用HashMap实现的。
HashMap在高性能的情况下被大量使用,它的缺点是内存占用较多。

Class类是非常值得重视的,通常用它来动态创建对象。
反射是在JDK1.5引入的,JDK1.4及以前的版本并不支持。

没有范型,使用顶层类Object也是可以的。但是取出值的时候,需要做 强制类型转换
JDK1.5版本引入版本引入了范型概念来优雅地解决此类问题

使用范型有一个好处:可以在编译时检查存储数据是否正确。

在接口上使用范型,可以大大增强接口的能力。
范型方法: public修饰符之后是<>,然后是函数返回值,接着是函数名、函数参数。当然,返回值也可以使范型的类型。
public <T> void printValue(T v) {}

posted on 2009-08-26 02:24 梦回唐朝 阅读(59) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: