Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Seeing data
PREMIUM
Số trang
574
Kích thước
9.2 MB
Định dạng
PDF
Lượt xem
1701

Seeing data

Nội dung xem thử

Mô tả chi tiết

< Day Day Up >

Table of

Contents

• Index

Seeing Data: Designing User Interfaces for Database Systems Using .NET

By Rebecca M. Riordan

Publisher: Addison Wesley Professional

Pub Date: July 16, 2004

ISBN: 0-321-20561-8

Pages: 544

Nowadays, users and clients demand exceptionally usable software. But

few developers are trained to create high-quality user interfaces, and few

.NET books offer much help—until now.

In Seeing Data , Microsoft MVP Rebecca M. Riordan shows how to use

.NET's advanced UI tools to build applications that reflect today's

interface design best practices. She offers visual examples, code, and

techniques for every .NET project.

Writing for experienced .NET developers, Riordan introduces core

principles of effective interface design—including focus, flow, alignment,

proximity, contrast, and consistency. She demonstrates how to architect

databases for better usability, and how to build more effective form

layouts. Next, she systematically tackles user interaction, showing how

to:

Help users navigate DataSets, manipulate data, and generate

reports

Utilize menus, toolbars, buttons, and Help systems

Enforce data integrity

Simplify installation and customization

Riordan covers essential technical underpinnings ranging from GDI+

Managed Classes to ADO.NET data binding. She presents dozens of

Visual Basic .NET examples—all designed for easy, quick reuse, and

downloadable from the book's companion Web site, along with C#

equivalents.

< Day Day Up >

< Day Day Up >

Table of

Contents

• Index

Seeing Data: Designing User Interfaces for Database Systems Using .NET

By Rebecca M. Riordan

Publisher: Addison Wesley Professional

Pub Date: July 16, 2004

ISBN: 0-321-20561-8

Pages: 544

Nowadays, users and clients demand exceptionally usable software. But

few developers are trained to create high-quality user interfaces, and few

.NET books offer much help—until now.

In Seeing Data , Microsoft MVP Rebecca M. Riordan shows how to use

.NET's advanced UI tools to build applications that reflect today's

interface design best practices. She offers visual examples, code, and

techniques for every .NET project.

Writing for experienced .NET developers, Riordan introduces core

principles of effective interface design—including focus, flow, alignment,

proximity, contrast, and consistency. She demonstrates how to architect

databases for better usability, and how to build more effective form

layouts. Next, she systematically tackles user interaction, showing how

to:

Help users navigate DataSets, manipulate data, and generate

reports

Utilize menus, toolbars, buttons, and Help systems

Enforce data integrity

Simplify installation and customization

Riordan covers essential technical underpinnings ranging from GDI+

Managed Classes to ADO.NET data binding. She presents dozens of

Visual Basic .NET examples—all designed for easy, quick reuse, and

downloadable from the book's companion Web site, along with C#

equivalents.

< Day Day Up >

< Day Day Up >

Table of

Contents

• Index

Seeing Data: Designing User Interfaces for Database Systems Using .NET

By Rebecca M. Riordan

Publisher: Addison Wesley Professional

Pub Date: July 16, 2004

ISBN: 0-321-20561-8

Pages: 544

Copyright

Praise for Seeing Data

Foreword

Preface

Who Do I Think You Are?

What's in This Book

What Isn't in This Book

Acknowledgments

Part I. The Basics

Chapter 1. Interface Design

Terminology

The Principle of Interface Design

Graphic Design

Chapter 2. .NET Graphic Objects

GDI+ Primitives

Pens and Brushes

Using the Graphics Object

The ControlPaint Class

Chapter 3. Typography

The Architecture of Type

Families and Faces and Fonts (oh my)

Using Fonts

Windows Fonts

Chapeter 4. Color

Understanding Color

Using Color

Color Models

Color in the .NET Framework

Chapter 5. Images in the .NET Framework

Using Images

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

Images in the .NET Framework

Chapter 6. ADO .NET Data Binding

Binding Control Properties

Synchronized Binding

Part II. Representing Entities

Chapter 7. Entity Types

The Entity-Relationship Model

Simple Entities

Complex Entities

Displaying Multiple Entities

Chapter 8. Simple Layouts

Window Basics

Primary Windows

Secondary Windows

Chapter 9. Complex Layouts

Complex Form Design

Panel Structures

Coordinated Structures

Chapter 10. Displaying Forms

Laying Out Forms

Anchoring and Docking Controls

Resizing Forms

Displaying Forms

Part III. Representing Attributes

Chapter 11. Complex Attributes

Get it Right

Logical Values

Date and Time Values

Binary Objects

Chapter 12. Numbers and Text

Numeric and Monetary Values

Text Values

Chapter 13. List Controls

Using List Controls

ListBox and CheckedListBox Controls

The ComboBox Control

The DomainUpDown Control

TreeView

Chapter 14. Grid Controls

Using Grid Controls

The ListView Control

The DataGrid Control

Part IV. Interacting with the User

Chapter 15. Managing Data Display

Navigating through Data

Managing Data Entry

Managing Data Persistence

Chapter 16. Command Widgets

Button Widgets

Menus

Menu Conventions

Toolbars

Chapter 17. User Assistance

Types of User Assistance

Functional Principles

Providing Passive Assistance

Providing Reactive Assistance

Providing Proactive Assistance

Chapter 18. Database Integrity

Theoretical Foundations

Implementing Constraints and Rules

Validation Techniques

Using the ErrorProvider Control

Chapter 19. Sorting, Searching, and Filtering

Sorting

Searching

Filtering

Chapter 20. Reporting

Designing Reports

Managing Reports

Implementing Reports

Part V. Building Applications

Chapter 21. Interface Architectures

Architectural Paradigms

Implementation Architectures

Chapter 22. User Customization

Using Control Panel Settings

Implementing Customization

Persisting Application States

Chapter 23. Installation

Windows Conventions

Visual Studio Setup Projects

Glossary

Index

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

Copyright

Many of the designations used by manufacturers and sellers to distinguish their products are

claimed as trademarks. Where those designations appear in this book, and Addison-Wesley was

aware of a trademark claim, the designations have been printed with initial capital letters or in all

capitals.

The author and publisher have taken care in the preparation of this book, but make no expressed

or implied warranty of any kind and assume no responsibility for errors or omissions. No liability is

assumed for incidental or consequential damages in connection with or arising out of the use of the

information or programs contained herein.

The publisher offers discounts on this book when ordered in quantity for bulk purchases and special

sales. For more information, please contact:

U.S. Corporate and Government Sales

(800) 382-3419

[email protected]

For sales outside of the U.S., please contact:

International Sales

(317) 581-3793

[email protected]

Visit Addison-Wesley on the Web: www.awprofessional.com

Library of Congress Cataloging-in-Publication Data

Riordan, Rebecca M.

Seeing data: designing user interfaces for database systems using .NET /

Rebecca M. Riordan

p. cm.

Includes index.

ISBN 0-321-20561-8 (alk. paper)

1. User interface (Computer systems). 2. Microsoft .NET. I. Title.

QA76.9.U83R56 2004

005.4'37—dc22

2004006538

Copyright © 2005 by Rebecca M. Riordan

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or

transmitted, in any form, or by any means, electronic, mechanical, photocopying, recording, or

otherwise, without the prior consent of the publisher. Printed in the United States of America.

Published simultaneously in Canada.

For information on obtaining permission for use of material from this work, please submit a written

request to:

Pearson Education, Inc.

Rights and Contracts Department

75 Arlington Street, Suite 300

Boston, MA 02116

Fax: (617) 848-7047

Text printed on recycled paper

1 2 3 4 5 6 7 8 9 10—CRS—0807060504

First printing, July 2004

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

Praise for Seeing Data

"Riordan provides an invaluable resource to help developers focus on a commonly overlooked

but vital part of an application—the user experience."

—David Sceppa, Program Manager,

Microsoft Corporation

"Riordan has done it again, navigating the proverbial minefield of User Interface development

with her unique and entertaining style. She has delivered a clear, concise and practical view of

User Interface Development for the .NET Developer. This is a book that I believe .NET

developers must have; it provides guidance in both the technical and nontechnical areas of

User Interface design and implementation."

—Stephen W. Jeffries,

Principal Technical Specialist—Developer & E-Business,

Microsoft Corporation

"Rebecca Riordan takes UI programming and practices to new heights. She has gone beyond

simply explaining the theory behind UI programming practices but also provides code samples

that are practical, well-documented, and can be immediately incorporated into a development

project. This book is a definitive reference for UI development, and a must-have for an

application developer's bookshelf. Design UI's with confidence with this book!"

—Wendy Chun, AVP/Product Development,

Sungard Insurance Systems

"Riordan has produced what is THE reference guide on user interface design in .NET. Serious

developers and beginners alike will learn both design techniques that can put applications

over the top and pitfalls to avoid."

—Kelly J. Martens, Manager, Information Systems and Development,

JJ Koepsell Company

"Rebecca Riordan, expert UI designer, shares her insights in a solid mixture of code and

concepts."

—Cristof Falk, Developer/Consultant

"Rebecca Riordan's book, Seeing Data: Designing User Interfaces for Data Systems Using

.NET, is a significant new, technical work. Rebecca has a special gift for making very hard

topics easy to understand and enjoyable to read about. Her writing style is engaging and

informative. Ms. Riordan offers a perspective to user interface design that is real world,

competent, and refreshing. Her choice of topics will be of interest to all .NET developers, from

DBAs to front-end Web designers."

—Bob Reselman, Cognitive Arts and Technologies, author of Coding Slave

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

Foreword

Remember way back when you were younger, and had to take high school art classes on the basics

of color, layout, and form? And like so many of us you sat there thinking, "I am never going to use

this in my life," and promptly forgot what you might have learned. I know I sure do.

Many years down the track I built one of my first major applications with a significant user interface

(UI); a run-of-the-mill business application: some data entry, some editing, we all know the drill.

To this day, I still live in fear that the users of this application might find out where I live. If they

do, I will have an angry mob of people at my door, keyboards and therapy bills in hand…well, you

get the picture.

Why do I say that? Having had the privilege to review the book you are about to embark on, I

decided that I would dig up that old application—well, I have to admit that I would have been part

of that mob had I been using the application. It has the stale ring of "how many different doo-dahs

can I squeeze into a simple application?"

The point here—and yes, I do have one—is that over the years I have certainly learned some of the

essential user interface design techniques, but they had never been clearly solidified in my

conscious mind until I read this book.

Now, way back when I was young and innocent—Visual Basic 1.0 had just hit the shelves—building

a user interface was still a fairly rigid and noncreative task, and as such it wasn't possible to do a

lot of jiggling with the look and feel of applications. Then we experienced the Visual Basic wave,

and everyone could easily write a Windows application.

It was fairly clean to start with, people followed the established trends, but soon enough people

were bucking the system, and I have seen a wide range of unique and strange user interfaces,

menu structures, and interaction metaphors—some good and some I would rather not mention in

civilized company. Surely it couldn't get worse that that. But it did: HTML, the Web browser, and

easy-to-use design tools such as Microsoft FrontPage or HotDog or Insert your favorite Tool Here.

Now, if you can use a word processor, you can publish Web pages and Web applications.

One of the first chapters of this book covers color and its use—something I personally feel ought to

be required reading for anyone who will be designing user interfaces. Why? Personally, I have

observed a scary trend on the Web: The first time someone publishes some content, he or she

seems to find the maximum number of animated GIFs, hideous background colors, background

graphics, and text colors that will send you dyslexic.

Now the future is going to hold the capability to do some fantastic things with the user interface;

the announcements made at the Microsoft Professional Developers Conference for the next

generation of Windows, codenamed Longhorn, will give developers the capability to build and

deliver user interfaces that can make the user experience a pleasure.

As with any set of technologies and tools, it is your capability that will eventually show what can be

built and delivered. The next generation will provide some fantastic services, but also more than

enough rope for catastrophic disasters.

The majority of my time is spent with Microsoft Enterprise customers and ISVs, providing them

with assistance for the architecture and design of systems and the supporting technology to solve

their business problems. As part of this, I have had the privilege to explore some fantastic user

interfaces, and I am still getting therapy for some of the others!

Now, personally, I don't want to see you or your application UIs being used as a example of how

bad a user interface can be—although I can use it as a wonderful speaking example or story one

day. I would rather see you get your hands on some well thought-out tools, and information to

build a better UI—this book is an excellent place to start.

To be perfectly honest, if you are a professional user interface designer, this is not really the book

for you. However, if you are a typical overworked, deadline-constrained, feature-creeping software

developer, this book is going to make your life easier.

Now, when you get your cup of coffee/tea/Bonnox and settle down on the sofa to read this book,

there is something I would like to suggest. First, don't skip the introductory chapters. One of the

great strengths of Rebecca's writing is a clear, consistent structure, and this book is no exception.

By building on the basics of design—spacing, color, text, and so forth—you will get a solid set of

foundation topics that she discusses later. As you read further into the chapters, you will start to

auto-magically think and recognize the concepts that are described—but only if you read them.

The remainder of the book pulls from the wealth of Rebecca's experience as an architect and

designer. As I read the book, I caught myself flashing back to a tale of a customer project where a

UI blunder was about to happen (or worse still, had happened), as the advice and guidance in this

book has been pulled from years of solid experience and has been refined to the point where you

can use it as a guideline for your development projects.

I hope you enjoy reading this book as much as I have, and learn at least one new thing, although I

firmly believe that you will learn many more than one because I certainly have. (But please don't

tell Rebecca. She'll never let me live it down.)

If you learn nothing else, remember the number-one rule when putting an application together: It

is the end user out there who is using the application. End users don't give a left dingo biscuit

about your cool user interface widget; they care about getting the task done for their job. Your

prime driver is making sure they can—quickly, efficiently, and without tears of frustration. This

book is a step in the right direction.

Stephen W. Jeffries

Principal Technical Specialist—Developer & E-Business

Microsoft Corporation

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

Preface

I've been designing and implementing database applications for longer than I'd care to talk about.

For the last ten years or so, much of my work has involved helping organizations and other

developers improve their existing designs. Even if this weren't my line of work, like everyone else in

the twenty-first century, I spend a lot of time using systems. Whenever I shop or do my banking,

get a haircut or go to the doctor, I'm directly or indirectly dealing with a computer system

somebody, somewhere, designed and implemented...and most of these systems are just plain

awful.

Now, I'm never entirely comfortable speaking for other people, but I'd be prepared to bet an entire

year's worth of chai that nobody has ever intentionally built a "user antagonistic" software system,

so why are so many of the systems we use every day so far away from being "user friendly?"

Part of the answer is that we're all so new at this. Think about it: We've been designing agricultural

tools for thousands of years, but we're still fiddling with the shape of a shovel. We've been

designing computer programs for use by nonexperts for about twenty years. It's not reasonable to

expect us to have it quite figured out yet.

Another part of the answer is that none of us can be experts at everything. Given the complexity of

today's computer systems, is it reasonable to expect that any one person can be expert at business

analysis, interviewing users, systems design, database design, interface design, programming in

his or her chosen language (or, more likely these days, languages), testing, implementation,

writing documentation, and training users? Of course it isn't, and yet the realities of system

development often require that we have to take on, if not all, at least several of these roles.

So, welcome to Seeing Data. I'm not going to promise to make you an expert on designing

interfaces. I do promise to introduce you to the basic principles of designing user interfaces for

database applications. I'll show you the things you need to think about, the kinds of questions you

need to ask yourself, and some of the answers in the form of working code snippets.

Most of the principles, and much of the sample code, work equally well with any kind of system, not

just databases, but since that's my background, and since most business systems do manipulate

data in some way, those are the systems on which I've concentrated.

< Day Day Up >

< Day Day Up >

Who Do I Think You Are?

To make the subject manageable, I've had to make some assumptions about what you already

know. First, I assume that you have a basic understanding of database design. Specifically, I

assume that you understand how databases are structured in terms of tables, columns, and rows,

and the basics of database normalization. You should also understand the Structured Query

Language (SQL) at least well enough to read the snippets, even if you always build your queries

using an interactive tool.

I also assume that you have a basic understanding of the .NET Framework class hierarchy and the

Visual Studio environment. I discuss the .NET Framework data-binding architecture in Chapter 6,

"ADO .NET Data Binding," but I assume that you have a basic understanding of the primary

ADO.NET objects: the Connection, DataAdapter, DataSet, and DataTable.

The code examples in this book are in Visual Basic, since I believe it's the easiest of the Visual

Studio languages to read, but C# examples are available on the Web site for the book. I do not

assume that you're a professional programmer, only that you have some familiarity with the

process. Nor do I assume that you have an intimate knowledge of either the Windows API or the

internals of the .NET Framework CLR.

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

What's in This Book

In Section One of the book, we'll look at each of the fundamental areas of interface design

independently. We'll begin with a general overview of interface principles, and then look at

graphics, typography, color, and the use of images in the .NET Framework in some detail.

In the last chapter of the section, we'll examine data binding with ADO.NET. This isn't strictly part

of interface design, but it is fundamental to the rest of the book. If you're already an ADO.NET

wizard, you can probably skip this chapter with impunity.

In the next two sections, we'll look at how to build an interface from the perspective of the

database schema. In Section Two, we'll examine the canonical structures for entities, and how

those entities can be represented in the user interface. In Section Three, we'll examine each type of

attribute and map them to .NET Framework controls.

In Section Four, we tackle the mechanics of how the system interacts with the user. We'll examine

methods for allowing the user to navigate through a DataSet and manipulate the data it stores.

Then we'll examine the methods you provide for allowing the user to control the application:

menus, toolbars, and command buttons. After that we'll discuss two closely related topics: the

provision of user assistance and the maintenance of data integrity. In the last two chapters of the

section, we'll examine filtering and sorting data, and the provision of reports, both from the

perspective of user interaction.

In the final section, we'll look at the user interface from the point of view of the application itself.

We'll begin with an examination of the architecture of the application as a whole—how the

constituent forms are structure, and the navigation method(s) presented to the user. We'll follow

this with a discussion of the methods your application can provide for user customization, and

conclude with a brief discussion of the installation process, again from the point of view of how the

application interacts with the user.

Finally, downloadable code is available at www.awprofessional.com/titles/0321205618. Here you

will find all the Visual Basic .NET examples, along with C# equivalents.

< Day Day Up >

< Day Day Up >

What Isn't in This Book

As I've said, the principles we examine apply equally well to most types of applications running in

most environments, but this book focuses on desktop database applications running under

Microsoft Windows and built using the .NET Framework.

In particular, we won't discuss thin-client applications or applications deployed on Windows CE.

That said, all of the techniques, and many of the code snippets, can be directly transferred to

applications running in these environments (provided, of course, that the applications are

developed in Visual Studio).

In addition to the environment techniques, there is one subject area that we won't be discussing:

localization. There's a very simple reason for this. I know very little about it, and my mother always

said that a wise woman knows her limitations.

< Day Day Up >

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

UNREGISTERED VERSION OF CHM TO PDF CONVERTER By THETA-SOFTWARE

< Day Day Up >

Acknowledgments

Even though I've been through the process several times now, the number of people involved in

getting a book from my head to your hands still amazes me. Were it up to me, their names would

be in large, friendly letters on the front of the book. But that's one of the decisions I don't get to

make.

So let me go on record, right here, saying this book would never have made it to the shelves

without the assistance of these folks. In order of appearance…

First, Sondra Scott, who had faith in this book when I'd lost track of the number of people who'd

told me "great idea, dear, but nobody will buy it." (Please buy lots of copies, and prove her right!)

Several people read the book in manuscript and offered their suggestions. The generosity of these

folks and their contribution to the project cannot be overestimated: Sandra Daigle, Cristof Falk,

Stephen Jeffries, Kelly Martens, Bob Reselman, and David Sceppa.

Elizabeth Zdunich is one of those amazing people who just make things happen. (I confess: I'm

not.) If there were dramas, I never knew about them. Working with her has been, truly, a comfort.

And she's kind, too.

Karen Gettman took over the project at the last moment, mid-panic, and never faltered. Impressive

performance, that.

Julie Nahil and Dmitri Korzh are responsible for the production of the book itself. Their efforts have

been nothing less than heroic, dealing with my unorthodox work habits, multiple versions of every

graphic, color tip-ins…

Finally, Peter Vogel succeeded in finding the title for the book. Were it not for him, the volume you

hold in your hand might be called…well…if I knew what it might have been called, I wouldn't be so

grateful to him for "Seeing Data."

To all of you, my thanks.

Rebecca M. Riordan

Santa Fe, New Mexico

May, 2004

< Day Day Up >

Tải ngay đi em, còn do dự, trời tối mất!