《Expert One-On-One J2EE Design and development》读书笔记1 企业应用程序架构的目标

  
企业应用程序架构的目标:
一个好的J2EE应用程序应该实现以下的目标:
1.       健壮性
        对于健壮性,没有什么好说的,应该是一个基本的要求了。没有一个用户愿意接受不稳定的系统的。
2.       满足性能需求
        应用系统应该能够满足用户对于性能的合理的期望。
3.       可扩展
        由于Internet应用程序的特点,我们很难预先知道用户的数量和用户的使用方式,因此要求在提供足够的硬件后,应用程序应该可以平滑的扩展。
4.       利用OOD的优点
        好的面向对象的设计可以带来很多的好处,而且也有很多经典的模式。但是要注意 ,我们是用J2EE实现面向对象的设计,而不是利用J2EE指导面向对象的设计。
5.       避免不必要的复杂性
        要避免不必要的复杂性,避免过度工程化带来的与业务需求不相关的复杂性。复杂性会给软件生命周期中的每一个环节都带来额外的开销。另一方面,我们也要避免不要将业务需求想的过于简单和单纯。
6.       可维护性和可扩充性
        维护是软件生命周期中最昂贵的一部分。我们在设计是必须充分的考虑到软件的可维护性。同事,选择J2EE是一个战略决策,J2EE应用程序在今后的很多年中都会是企业的应用程序的主要组成部分,因此在设计时必须考虑到可扩充性,使其能够接受新的业务需求。
7.       可测试性
        测试时软件生命周期中很重要的一部分。在设计时要考虑到软件的可测试性。
8.       可复用性
        这个应该是一直强调的。
 
根据不同的业务需求,可能还要满足以下的目标:
1.       支持不同的客户端
2.     可移植性
 What is this book about? The results of using J2EE in practice are often disappointing: applications are often slow, unduly complex, and take too long to develop. Rod Johnson believes that the problem lies not in J2EE itself, but in that it is often used badly. Many J2EE publications advocate approaches that, while fine in theory, often fail in reality, or deliver no real business value. "Expert One-on-One: J2EE Design and Development" aims to demystify J2EE development. Using a practical focus, it shows how to use J2EE technologies to reduce, rather than increase, complexity. Rod draws on his experience of designing successful high-volume J2EE applications and salvaging failing projects, as well as intimate knowledge of the J2EE specifications, to offer a real-world, how-to guide on how you too can make J2EE work in practice. It will help you to solve common problems with J2EE and avoid the expensive mistakes often made in J2EE projects. It will guide you through the complexity of the J2EE services and APIs to enable you to build the simplest possible solution, on time and on budget. Rod takes a practical, pragmatic approach, questioning J2EE orthodoxy where it has failed to deliver results in practice and instead suggesting effective, proven approaches. What does this book cover? In this book, you will learn When to use a distributed architecture When and how to use EJB How to develop an efficient data access strategy How to design a clean and maintainable web interface How to design J2EE applications for performance Who is this book for? This book would be of value to most enterprise developers. Although some of the discussion (for example, on performance and scalability) would be most relevant to architects and lead developers, the practical focus would make it useful to anyone with some familiarity with J2EE. Because of the complete design-deployment coverage, a less advanced developer could work through the book along with a more introductory text, and successfully build and understand the sample application. This comprehensive coverage would also be useful to developers in smaller organisations, who might be called upon to fill several normally distinct roles. What is special about this book? Wondering what differentiates this book from others like it in the market? Take a look: It does not just discuss technology, but stress its practical application. The book is driven from the need to solve common tasks, rather than by the elements of J2EE. It discuss risks in J2EE development It takes the reader through the entire design, development and build process of a non-trivial application. This wouldn't be compressed into one or two chapters, like the Java Pet Store, but would be a realistic example comparable to the complexity of applications readers would need to build. At each point in the design, alternative choices would be discussed. This would be important both where there's a real problem with the obvious alternative, and where the obvious alternatives are perhaps equally valid. It emphasizes the use of OO design and design patterns in J2EE, without becoming a theoretical book ,高清文档 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值