自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MindHawk

知足者富,强行者有志。

  • 博客(21)
  • 资源 (9)
  • 收藏
  • 关注

翻译 Javascript 编程语言概论

原文出处 http://javascript.crockford.com/survey.html 综述这篇文章为专业程序员介绍 JavaScript Programming Language 。它是一个微型语言,如果你熟悉其它语言的话,很容易理解。JavaScript 并不是Java。它们是两种不同的语言。JavaScript 也不是 Java 的一个子集。更不是解释性的Java。(Jav

2006-12-29 00:19:00 1378

原创 15迷问题解空间的证明(15 puzzle)

 在《15迷问题的证明(15 puzzle)》一文中,我对15 迷问题做了较为详尽的描述,并证明了什么样的初态可以达到目标状态。在这篇文章里我将进一步证明可达到目标状态的初始态状态空间为 16! / 2,并会使用上文中提到的公式进行证明。可以很容易的看出棋盘上的牌可以有 16! 种不同的排列,这些排列中包括了可以达到目标状态的初态,也包含了不能达到目标状态的初态。只有那些通过公式计算结果为偶数的状

2006-12-18 13:52:00 4353

原创 再谈tapestry-delegate——优化与重构

这段时间我对tapestry-delegate这个用于改进Tapestry 的"listener:"绑定的扩展开源包做了一次较大的调整和改进,使这个包在使用的灵活性和性能方面有了不少的提高。除了使用字节码生成技术来提高最终函数调用的效率外,还在多个候选函数的选择,类型的匹配,冗余函数的清理等方面做了改进。现在这个包可以支持如下几种使用的格式: 模糊格式:"delegate:doSub

2006-12-17 22:33:00 1479

原创 15迷问题的证明(15 puzzle)

 1  3 4 15

2006-12-16 03:13:00 15466

原创 Tapestry灵魂——字节码生成

    Tapestry最大的的一个特点就是通过字节码生成在运行时动态的创建页面的实例。这也是整个框架能有如此活力的基础。通过运行时的代码生成不仅使说明(specification),模板(template)和类结合起来形成一个统一的整体,更主要的是使程序员得到了极大的解放。所有重复性的,易出错的烦琐工作都有框架负责,动态的将必须的信息赋给页面。程序员需要的仅仅是关心一些最为基本的设置。    T

2006-12-16 03:12:00 2013

翻译 配置 Tapestry

<!--.heading { background-color: #E5E4D9;} .boxed { background-color: #E5E4D9;} .underlined_5 {border-bottom: solid 5px #E5E4D9;}.underlined_10 {border-bottom: solid 10

2006-12-16 03:09:00 3366

原创 使用tapestry-delegate提高Tapestry运行效率

    在"tapestry-prop"这个Tapestry扩展的启示下,突然有了灵感,编写了一个叫做"tapestry-delegate"的扩展。这个扩展的功能和Tapestry内置的"listener:"绑定相似,提供了另一种定义监听函数(listener method)的方法。这里我定义它为代理函数,一方面是因为Tapestry使用了监听函数的名称,一方面毕竟叫它代理函数更加合适。    现

2006-12-16 03:08:00 2209

原创 Tapestry的template和specification定义在不同文件夹的方法

    最近有朋友问:“把‘*.page’与‘*.html’完全分开,静态页面自己就是一个完整的项目,但Tapestry默认情况下是找不到的,有什么方法才能做到呢?”。    解决的方法很简单,Tapestry内部已经支持了这种做法,只是估计由于Tapestry的作者不是特别推荐这种做法所以没有介绍这种方法。在Tapestry3和Tapestry4中解决这个问题的方法都一样。在定义文件中定义一个

2006-12-16 03:07:00 1689

原创 Tapestry绑定的作用与实现

    Binding是Tapestry一个非常重要的组成部分,同时也是开发者很少接触的部分。绑定是用于为组件实例定义的参数提供数据的机制。有了绑定机制,组件就不必知道数据的来源,它需要的只是在必要的时候可以获取数据。    绑定在包含该组件的定义文件或模版文件内设置。绑定可以是静态的,或动态的(这不是由组件自身决定的)。组件也可能使用绑定将一个值写回其它对象(典型的是写回某一个组件)。    简

2006-12-16 03:06:00 1582

原创 Tapestry4改进运行效率的实现方法

    在Tapestry4之前的版本,Tapestry使用了大量的动态调用(大部分是使用OGNL调用的),这样势必会造成大量运行效率的损失。好在大多数WEB程序的瓶颈是在访问数据库而不是在页面上,所以并没有对Tapestry的推广构成毁灭性的影响。但是随着Tapestry社区的发展,使用人群的增加,Howard Lewis Ship(Tapestry的作者)和一些支持Tapestry项目的开发

2006-12-16 03:05:00 1832

翻译 使用tapestry-prop提高Tapestry运行效率

tapestry-prop介绍    它是一个为Tapestry4.0编写的扩展包,提供了一个新的绑定前缀"prop:"。这个前缀用于获取页面或组件的属性。    看上去和Tapestry内置的"ognl:"前缀没有什么区别,但是低层实际获取数据的方法和OGNL是完全不同的。它采用了字节码生成的方式去获取用户类中的那些可以通过名字获取的属性。    "prop:"前缀只能获取简单属性或者由路径代表

2006-12-16 03:04:00 1985

原创 Friendly URLs in Tapestry

    在早一点的版本里面Tapestry并没有采用幽雅的格式来产生URLs。这种格式的URLs带来了不少的问题。比方说,因为整个连接都是围绕一个servlet构造的,所以势必会使基于路径的申明式J2EE安全机制不能使用。再比方说,依靠参数来区分页面,就会使搜索引擎只能看到应用程序的极小的一部分页面。    从4.0 版开始,框架自身已经直接支持友好的URLs格式。通过以下两种操作Tapes

2006-12-16 03:03:00 1718

翻译 HiveMind介绍

  PRE.code { border: solid thin; padding: 2px; background-color: #ffffcc; } /* Styles for syntax highl

2006-12-16 03:02:00 6874

翻译 Tapestry介绍

Tapestry介绍    Tapestry是一个用java编写的基于组件的web应用开发框架。它不仅仅是一个模板系统,更是一个建立在Java Servlet API基础上的动态交互式网站的开发平台。不同于普通的模板系统,它是一个真正使用简单,可重用的组件开发复杂应用的框架。框架自身完成了把许多在创建web应用时容易出错并且极为乏味的工作,诸如分派请求,构造与解析URLs信息,处理国际化和本地化数

2006-12-16 03:01:00 3198 6

原创 Translator in HiveMind

    很多情况下需要将一个用字符串代表的属性转化成特定的对象,比如说Boolean,Integer或Date。HiveMind通过Translator完成这项工作,可以在或里面声名一个Translator。    HiveMind对Translator的支持由一个叫做TranslatorManager的类负责管理。考虑到对Translator的扩展性,它对Translator的组织比较特别。

2006-12-16 03:00:00 1433

原创 Schema in HiveMind

    支持自定义数据格式是HiveMind的又一大特色。通过元素,可以为配置扩展点,服务或拦截器的参数定值格式。而且随着HiveMind的自身发展,Schema所支持内容也会越来越丰富。现阶段schema仅支持对一系列element做处理,通过它可以把由它指定的xml文件片段解析成一个对象或对象的集合。    HiveMind对schema的这种支持源于Apache开元项目Jarkata的一个子

2006-12-16 02:59:00 1355

原创 Configuration Point in HiveMind

    配置扩展点是HiveMind的一个核心概念。当你拥有一系列服务之后,对这些服务进行配置就是很自然的了。在HiveMind里,一个配置扩展点包含了一个无序元素的集合。其中的每个元素都是定义在某个模块里,另外每个模块都可以为一个对它可见的扩展点增加定义元素(HiveMind里面把这种定义称为contribution)。    服务扩展点(service point)和配置扩展点(configu

2006-12-16 02:58:00 1255

原创 Singleton Service Model in HiveMind

    在Singlenton这种模式下,当一个服务第一次被请求的时候,这个服务的一个代理将会被生成。生成的这个代理实现了与实际服务相同的接口(也可以是对象),并且在服务接口的方法在第一次被调用的时候实际的服务对象(包括服务的实现类,拦截机,对别的服务的引用等)才会真正被创建。    HiveMind内部通过SingletonServiceModel这个类来完成服务代理的生成和实际服务创建的工

2006-12-16 02:57:00 1195

原创 Pooled Service Model in HiveMind

    基于池的服务模型和与线程绑定的服务模型是非常象的。一个服务的实例会和一个特定的线程绑定,直到这个线程消亡(或者只是清空数据)。和与线程绑定模式不同的是,服务实例并不会被抛弃,会重新放入池中供之后的请求使用并与新的线程绑定。    和与线程绑定的模型一样,所有的绑定与取消绑定都是由自动生成的代理类完成的,用户代码不需要涉及这些。    核心服务实例可以实现RegistryShutdownLi

2006-12-16 02:48:00 1185

原创 Threaded Service Model in HiveMind

    一般情况下,单例模式(singleton or primitive service models)足够使用。在有些情况下,服务需要保留某些详细状态。状态和多线程是没有联系的,所以与线程绑定的服务模型在需要的时候会创建一个服务实例并把它绑定到当前线程中去。实例一但创建就会一直绑定在线程中直到现成消亡。一个服务实例唯一对应于绑定的线程并且只能从绑定线程中访问。    与服务帮定的服务模型使

2006-12-16 02:47:00 1239

原创 Primitive Service Model and Interceptor in HiveMind

    在Singlenton这种模式下,当一个服务第一次被请求的时候,这个服务的一个代理将会被生成。生成的这个代理实现了与实际服务相同的接口(也可以是对象),并且在服务接口的方法在第一次被调用的时候实际的服务对象(包括服务的实现类,拦截机,对别的服务的引用等)才会真正被创建。    HiveMind内部通过SingletonServiceModel这个类来完成服务代理的生成和实际服务创建的工

2006-12-16 02:46:00 1116

Introduction to Probability Models (Sheldon M.Ross, 9th Edition)

本书叙述深入浅出,涉及面广。主要内容有随机变量、条件概率及条件期望、离散及连续马尔可夫链、指数分布、泊松过程、布朗运动及平稳过程、更新理论及排队论等;也包括了随机过程在物理、生物、运筹、网络、遗传、经济、保险、金融及可靠性中的应用。特别是有关随机模拟的内容,给随机系统运行的模拟计算提供了有力的工具。除正文外,本书有约700道习题,其中带星号的习题还提供了解答。 本书可作为概率论与统计、计算机科学、保险学、物理学、社会科学、生命科学、管理科学与工程学等专业随机过程基础课教材。 Sheldon M.Ross国际知名概率与统计学家,南加州大学工业工程与运筹系系主任。毕业于斯坦福大学统计系,曾在加州大学伯克利分校任教多年。研究领域包括:随机模型.仿真模拟、统计分析、金融数学等:Ross教授著述颇丰,他的多种畅销数学和统计教材均产生了世界性的影响。

2010-11-15

Design Patterns in Java

介绍了23中常用的设计模型,并立决了JAVA底层类用于说明模式的概念。 具有完整的书签导航,比网上很多没有书签的电子书更容易阅读,定位。

2009-06-23

Mastering Enterprise JavaBeans 3.0

This book is a tutorial on Enterprise JavaBeans (EJB). It’s about EJB concepts,<br>methodology, and development. This book also contains a number of<br>advanced EJB topics, giving you a practical and real-world understanding of<br>the subject. By reading this book, you will acquire a deep understanding of EJB.

2008-06-03

Ant 入门讲解视频

Ant 在开源软件包和企业里面得到了广泛的应用, 这个视频就对 ant 进行了基本的讲解.1. 手工编译运行项目 anttest;2. ant.ppt 讲解;3. 在 Eclipse 中使用 ant;4. 手工使用 ant;5. 在 Netbeans 中使用 ant.文件: ant.exe 7.65 MB 视频 22分3秒AntTest.zip 6.76 KB 项目文件ant.ppt 155 KB 从网上找的 PPTant.png 视频截图

2008-05-30

Java Tank

Java 做的坦克游戏

2008-05-16

ejb3实例教程

期待已久的EJB3.0最终规范已经发布了。虽然EJB3.0最终规范出来了一段时间,但对EJB3.0的应用还停留在介<br>绍之中,应用实例更是少之又少,所以作者拟写本书,以简单的实例展现EJB3.0 的开发过程,希望对大家有所帮<br>助。

2008-05-16

Building Reliable Component-Based Software Systems

This is a book about component-based software engineering (CBSE). CBSEis the emerging discipline of the development of software components and thedevelopment of systems incorporating such components. Component-basedsystems are built by assembling components developed independently of thesystems. To assemble components, a proprietary code that connects the componentsis usually needed. This code is often referred to as “glue code.” In anideal world of components the assembly process would be smooth and simple.The effort required to obtain the glue code would be practically negligible; asystem incorporating components would know everything about them—theiroperational interfaces and their nonfunctional properties and the componentswould be exactly what the system needs; in short, components could beassembled as easily as Lego blocks.

2008-05-06

UML参考手册

统一建模语言(UML)是一个通用的可视化建模语言,用于对软件进行描述、可视化<br>处理、构造和建立软件系统制品的文档。它记录了对必须构造的系统的决定和理解,可用于<br>对系统的理解、设计、浏览、配置、维护和信息控制。UML 适用于各种软件开发方法、软<br>件生命周期的各个阶段、各种应用领域以及各种开发工具,UML 是一种总结了以往建模技<br>术的经验并吸收当今优秀成果的标准建模方法。UML 包括概念的语义,表示法和说明,提<br>供了静态、动态、系统环境及组织结构的模型。它可被交互的可视化建模工具所支持,这些<br>工具提供了代码生成器和报表生成器。UML 标准并没有定义一种标准的开发过程,但它适<br>用于迭代式的开发过程。它是为支持大部分现存的面向对象开发过程而设计的。

2008-05-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除