Mua he 2009-2010

Thứ Sáu, 30 tháng 7, 2010

Foreword

Since its inception in 1991, Microsoft Visual Basic has revolutionized the way developers create applications for Microsoft Windows. Through features such as IntelliSense, statement completion, ActiveX Control creation, a native code compiler, and database access, Microsoft has worked hard to keep developers well-equipped with the latest innovations in rapid application development. In Visual Basic 6 Professional and Enterprise Editions, Visual Basic has been expanded to make developers even more productive in what they do most often—access data, whether in a relational database (such as Microsoft SQL Server 7 or Oracle 8) or in a nonrelational data store (such as a directory service). Recognizing a rapid upsurgence in the adoption of the Web as a true cross-platform application environment, Microsoft has added new technologies to support client (Dynamic HTML) and server (WebClasses). These new features, along with literally hundreds of other enhancements and optimizations, bring the development of enterprise-wide, line-of-business applications within the reach of millions of developers who have mastered Visual Basic. In addition, these features provide the power and performance needed to create applications that run in mission-critical scenarios.
The Mandelbrot Set (International) Limited (TMS) is one of the companies that I see pushing the limits of Visual Basic most frequently. TMS is recognized worldwide as a leader in Visual Basic consulting and development. I've worked with TMS for some time now, and I've seen in their technical papers, books, and presentations that they are able to bestow a level of technical clarity not often seen in this industry. About once or twice a month, I'll get questions or insights from Peet Morris (the technical director of TMS) that are so advanced they rival the understanding of the product normally seen only by the chief architects of the product itself.
I first met Peet Morris at VBITS in San Francisco just about a year ago. I attended Peet's session and was immediately taken with his technical skill and knew that he would be an invaluable resource in the future. We immediately hit it off both technically and personally, and since then he's done sessions for us at conferences such as Microsoft TechEd this past summer in New Orleans. Peet's sessions were consistently among the most highly rated for their technical content. I eagerly anticipate Peet's visits to Redmond, where we talk about going out for a pint of Guinness but instead end up doing something trivial, such as watching the last episode of Seinfeld with friends while discussing the intricacies of Visual Basic's threading model or subclassing of date functions.
Understand that this book is not your canonical, learn-to-become-a-professional-programmer-in-x -days text. It's also not designed to provide you with a laundry list of all the new features of Visual Basic 6. This book is intended for the working professional, thus exploring in depth many of the topics that beginning books either ignore or gloss over. Drawing on the many and varied strengths of the experts at TMS, each chapter drills down into topics that are not often considered carefully in the course of day-to-day project development. The lessons learned from this book are the gems that one might unearth at a VBITS conference or in a technical course outside the classroom and away from the podium, where developers gain insight through open dialogue.
Life on the edge takes a lot of work and talent, and TMS has often had to learn the "how" the hard way. This book is your chance to benefit from their combined experience. If you're working with Visual Basic and trying to push the envelope, you'll find a lot of useful information here.
Sean P. AlexanderLead Technical Product Manager, Visual Basic Developer Tools DivisionMicrosoft Corporation

Taking Care of Business (Objects)


ADAM MAGEE
Adam Magee is a software developer who specializes in building enterprise applications. He has worked with many large companies in the United Kingdom and in Australia, helping them to implement tiered architecture solutions. His particular focus is on the design and process of building efficient, high performance, distributable business objects. Some developers would like to see Adam in a deep gully position but he prefers it at backward square leg.
Taking care of business every dayTaking care of business every wayI've been taking care of business, it's all mineTaking care of business and working overtimeWork out!
"Taking Care of Business"
by Bachmann Turner Overdrive
Business objects are big news. Everyone says the key to building distributed enterprise applications is business objects. Lots of 'em.
Business objects are cool and funky—we need business objects! You need business objects! Everyone needs business objects!
This chapter presents a design pattern for developing solid, scalable, robust business objects, designed for (and from) real-life distributed enterprise applications.
The architecture we propose at The Mandelbrot Set (International) Limited (TMS) for building distributed business object-based applications breaks down into various layers of functionality.
The data access layer (DAL) is the layer that talks to the data source. The interface of this layer should be the same regardless of the type of data source being accessed.
The business object layer is the actual layer that models the entities within your application—the real data, such as Employees, Projects, Departments, and so forth. In Unified Modeling Language (UML) parlance, these are called entity objects.
The action object layer represents the processes that occur on the business objects: these processes are determined by the application requirements. In UML, these action object layers are called control objects.
The client application layer, such as a Microsoft Visual Basic form, an ActiveX document, or an Active Server Page (ASP) on a Web server, is known as an interface object in UML.
This chapter concentrates on the middle business object layer and introduces the concepts of action objects, factory objects, and worker objects.