Professional Design Patterns in Vb.Net

by ; ; ;
Format: Paperback
Pub. Date: 2002-08-01
Publisher(s): Apress
List Price: $44.99

Buy New

Usually Ships in 2-3 Business Days.
$44.54

Rent Book

Select for Price
There was a problem. Please try again later.

Rent Digital

Rent Digital Options
Online:30 Days access
Downloadable:30 Days
$16.20
Online:60 Days access
Downloadable:60 Days
$21.60
Online:90 Days access
Downloadable:90 Days
$27.00
Online:120 Days access
Downloadable:120 Days
$32.40
Online:180 Days access
Downloadable:180 Days
$35.10
Online:1825 Days access
Downloadable:Lifetime Access
$53.99
*To support the delivery of the digital material to you, a digital delivery fee of $3.99 will be charged on each digital item.
$35.10*

Used Book

We're Sorry
Sold Out

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

This book is not a treatment of the theory of design patterns. We show design patterns applied in real-world architectural scenarios so that you can see them in action and see the benefits that they bring. It explains why it's worth spending time building design patterns into your applications, even though this may seem at odds with Rapid Application Development. After a fast-paced introduction to design patterns, the core of this book consists of three case studies, which show how design patterns are applied in each of the main tiers of an application: the data, business, and presentation layers.

Table of Contents

Introduction 1(1)
Who is This Book For?
2(1)
What Does This Book Cover?
2(1)
What This Book Does Not Cover
3(1)
What You Need to Use This Book
3(1)
Style Conventions
4(1)
Customer Support and Feedback
5(4)
Source Code and Updates
5(1)
Errata
6(1)
forums.apress.com
6(3)
Introduction to Design Patterns
9(60)
What is a Design Pattern?
10(6)
Catalogs of Patterns
10(1)
The Gang of Four
10(1)
Other Catalogs and Resources
11(1)
Design Patterns and Visual Basic
11(1)
The Arrival of VB.NET
12(1)
When Should we use Design Patterns?
12(1)
How a Design Pattern can Improve a Design
13(1)
The Fictional TakeHomePay Application
13(3)
The Building Blocks
16(48)
Creational Patterns
17(1)
The Singleton Design Pattern
18(3)
The Abstract Factory Design Pattern
21(5)
The Factory Method Design Pattern
26(3)
Structural Patterns
29(1)
The Adapter and Facade Design Patterns
29(5)
The Bridge Design Pattern
34(5)
The Composite Design Pattern
39(4)
The Decorator Design Pattern
43(6)
The Proxy Design Pattern
49(2)
Behavioral Patterns
51(1)
The Observer Design Pattern
52(3)
The State Design Pattern
55(5)
The Strategy and Template Method Design Patterns
60(4)
Application of Design Patterns
64(2)
Pattern Selection
64(2)
Summary
66(3)
Design Patterns in the Data Tier
69(48)
Requirements of a Data Tier
70(12)
A Requirements List
71(1)
Analysing the Requirements
71(1)
Data-Tier Architecture
72(1)
A Simple but Inflexible Data-Tier Example
72(2)
A Slightly More Maintainable Example
74(1)
Creating a Flexible Data Access Framework
75(1)
The .NET Data Providers
75(1)
The .NET Data Provider Objects
76(1)
The Design Patterns Analysis
77(5)
Building the Data Tier
82(22)
A UML Class Diagram
83(1)
Building the Output Classes
84(1)
The Abstract Base Output Classes
84(1)
The Concrete Product Classes
85(3)
Building the Factory Classes
88(1)
The Abstract Factory Class
88(1)
The NWDSARequest Helper Class
89(3)
Managing Connection Strings
92(3)
The Concrete Factory Classes
95(8)
Compiling the Data Tier Application
103(1)
Testing the Data Tier Application
104(10)
A Simple Windows Test Application
104(1)
Building the Application
104(5)
Testing the SQL Server .NET Data Provider
109(1)
Testing the OLE DB .NET Data Provider
109(1)
Testing the ODBC .NET Data Provider
110(1)
A Simple Web Test Application
111(3)
Summary
114(3)
Design Patterns in the Middle Tier
117(60)
Handling Orders
118(1)
Business Requirements
118(1)
Technology Requirements
119(1)
Analysis and Design
119(8)
Use Case Diagrams
120(1)
Activity Diagrams
121(1)
Homing in on Patterns
122(2)
Sequence Diagrams
124(1)
Class Diagrams
125(1)
The Decorator Pattern Classes
126(1)
The Strategy Pattern Classes
126(1)
The Final Class Diagram
127(1)
The Coding Part
127(48)
Setting up the Infrastructure
128(1)
Registering Inventory.dll
128(1)
Setting up MSMQ
129(1)
Setting up the SQL Server Databases
129(2)
Creating a Visual Studio .NET Solution
131(1)
The Inventory
131(1)
The Legacy Application
132(3)
The LegacyWrapper
135(2)
The Test Harness
137(1)
Adding the Controls
138(1)
Adding the Code
139(3)
The Middle Tier
142(1)
The ReceiveDocument Application
142(11)
The ProcessDocument Application
153(1)
Document Processing with the Decorator Pattern
154(6)
The Business Rules
160(9)
The Processing Manager - the OrderManager Class
169(3)
OrderManagement
172(1)
The SimpleQueueManager Class
172(1)
The Place Class
173(1)
System Testing
174(1)
Summary
175(2)
Design Patterns in the Presentation Tier
177(78)
The Problem with the Presentation Tier
177(1)
Introducing Model/View/Controller
178(13)
MVC in a Nutshell
179(1)
The Power of MVC
180(1)
Decoupling the Model and the View
181(1)
Decoupling the View and the Controller
181(1)
The Design Patterns Used in MVC
182(1)
MVC in VB6
183(1)
VB6 MVC Class Diagram
183(1)
The Model Class
184(1)
The View Class
185(1)
The Controller Class
185(1)
Running and Analysing the Application
186(1)
Is It Worth It?
187(1)
MVC in VB.NET
187(1)
Inherited Forms
187(3)
ASP.NET Web Forms
190(1)
ASP.NET Server Controls
190(1)
Event Handling and Delegates
190(1)
Multithreading and Asynchronous Programming
191(1)
Building an MVC Framework for .NET
191(23)
The MVC Framework Class Diagram
192(1)
A Simple MVC Class Diagram
192(1)
Incorporating the MVC Class Diagram into .NET
193(8)
The MVC Framework Class Schema
201(3)
Views Calling Other Views
204(5)
MVC Framework Code
209(1)
The Model
210(1)
The View
210(3)
The Controller
213(1)
A Front End for Northwind Order Processing
214(2)
Use Case Diagrams
215(1)
Activity Diagrams
215(1)
A Common NOP Model
216(6)
The NOPData Class
217(3)
The Orders Class
220(1)
The Order Class
220(2)
Concrete Views and Controllers
222(30)
NOPWin for the Sales Reps
222(1)
The NOPWin Class Diagram
222(1)
The OrdersView View
223(3)
The OrdersController Class
226(2)
The OrdersControllerFactory Class
228(1)
The OrderView View
228(2)
The OrderController Abstract Class
230(2)
The NormalOrderController Class
232(1)
The SpecialOrderController Class
232(1)
The OrderControllerFactoryClass
233(1)
NOPWin Startup
234(1)
NOPWeb for the Customers
235(1)
The NOPWeb Class Diagram
236(1)
The OrdersView View
237(4)
The OrdersController Class
241(1)
The ControllerFactoryWebBase Class
242(1)
The OrdersControllerFactory Class
243(1)
The OrderView View
243(4)
The OrderController Class
247(2)
The NormalOrderController Class
249(1)
The SpecialOrderController Class
249(1)
The OrderControllerFactory
250(1)
The Finished NOPWeb Application
250(2)
Summary
252(3)
Between the Tiers: Design Patterns and .NET Remoting
255(42)
.NET Remoting -- A Primer
256(2)
Remoting Objects and the Host Server
256(1)
Channels and Protocols
257(1)
The Client, the Proxy, and the soapsuds.exe Utility
257(1)
The Configuration File, Default.cfg
257(1)
A Call Event Coordinator Example
258(2)
System Requirements
258(1)
The Players in the System
258(1)
The Tiers of the System
259(1)
The Development Phases of our Application
260(1)
Phase 1 -- The Basic Application
260(16)
Collecting and Distributing Calls
261(1)
Recalling the Observer Pattern
261(2)
Taking Advantage of the Event and Delegate
263(1)
Building the Application
263(1)
The Remote Notifier Object (EventCoordinator) and the Delegate
264(3)
The Remote CSR Server Object
267(2)
The Host Applications
269(3)
The Client Application
272(2)
Running the Example Application
274(1)
A Note on the Proxy Pattern
275(1)
Phase 2 -- Asynchronous Call Handling
276(5)
The Asynchronous Programming Pattern
276(1)
Understanding the Pattern
276(2)
Amending the Application
278(2)
Building and Running the Example
280(1)
Phase 3 -- Flexible Policy Management
281(13)
Adjusting the Application Design
281(1)
Considering a Design Pattern Solution
282(2)
Deciding on the Decorators
284(2)
Amending the Representative Class Library
286(1)
The PolicyDecorator Class
286(1)
The IDPolicyDecorator Class
287(1)
The AreaPolicyDecorator Class
288(1)
The Configuration File, Default.cfg
289(1)
Building a Client Program
290(2)
The Configuration File, Default.cfg
292(1)
Building and Running the Example
293(1)
Summary
294(3)
What Next?
297(10)
Refactoring
297(3)
Extract Class
298(1)
Parameterize Method
299(1)
Antipatterns
300(3)
The Antipatterns Bible
301(1)
The Blob
301(1)
Lava Flow
301(1)
Poltergeists (aka Proliferation of Classes)
302(1)
Golden Hammer
302(1)
Avoiding Antipatterns
302(1)
Resources and Further Reading
303(4)
Appendix A: UML Primer
307
A Typical Development Process
308
Project Stages and UML Tools
308
The Use Case
310
A Sample Use Case
310
The Extends Relationship
315
The Includes (or Uses) Relationship
315
Applying Use Cases
316
The Class Diagram
316
Associations
317
Attributes and Operations
320
Aggregation and Composition
321
Interfaces
323
When to use Class Diagrams
323
The Activity Diagram
324
Starting State and Final State
325
Branches
325
Swimlanes
326
When to use Activity Diagrams
326
Interaction Diagrams
327
The Sequence Diagram
327
When to use Sequence Diagrams
330
The State Diagram
330
When to use State Diagrams
331
Physical Diagrams
331
The Component Diagram
332
The Deployment Diagram
332
When to use Physical Diagrams
333
Summary
334

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.