Database Application Programming with Linux
Résumé
With this book, you'll gain a better understanding of the critical pieces of Linux project planning and development, including:
- Design and specification issues
- Database design and theory
- User interface design principles
- UML and Patterns for object-oriented analysis and designYou'll also learn about:
- Getting started with PostgreSQL, MySQL, Sybase, Oracle, and MiniSQL
- Implementation-level differences between various databases
- Database development
- Administration and modeling tools
- Programming with CORBA
- Example programs
- Reusable code
Table of Contents - Database Application Programming with Linux
Chapter 1
Requirements
- Towards a System Design
- The Problem Definition
- Requirements Analysis
- Working with People
- The Analysis Process
- A Viewpoint Model for Analysis
- The Formal Requirements Document
- Using a Prototype to Validate Requirements
- The Volatility of Requirements
- The System Architecture
- System Structuring
- Control Modeling
- Modular Decomposition
- System Design
- Summary
Chapter 2
Database Design
- Designing a Database
- Identify the Entities You Want to Represent
- Use the Requirements
- Identify Likely Entities
- Keys
- Relating Entities
- Normalization
- First Normal Form
- Second Normal Form
- Third Normal Form
- Building a Data Dictionary
- Datatype Sizes
- Patron
- Book
- Borrows
- Author, Author_Of, and Publisher
- Leftovers
- Digging Deeper
- SQL
- Creating Tables
- Putting Data into the Database
- Getting Data out of the Database
- Ordering Result Sets
- Filtering Result Sets
- Joins
- Outer Joins
- Updating Data in the Database
- Deleting Data from the Database
- Indexes
- Summary
Chapter 3
Developing User Interfaces
- The Development Process
- Consider the Requirements
- Involve the User
- Follow Established Design Guidelines
- Mandel's Golden Rules
- Place Users in Control
- Reduce User's Memory Load
- Make the User Interface Consistent
- Mandel's Golden Rules
- Develop and Refine the UI Prototype
- Find the Nouns and Verbs
- Grow a Tree
- Find Objects
- Design Icons for Objects
- Determine Appropriate Actions for Objects
- Determine Forms and Menu Actions
- Take Care of the Attributes
- Develop the Implementation
- Perform Usability Testing
- Summary
Chapter 4
Construction
- Finding Reusable Code
- The Importance of Reuse
- Identifying Good Code
- The Word on the Street
- Documentation
- Comments
- Readability and Learnability
- Repositories, Resources, and Libraries
- The C Library
- Browsing the C Library
- Other Libraries
- The C Library
- License Combatibility
- Style and Technique
- Naming Conventions
- Indentation
- Blocks and Braces
- Comments
- Reduce Memory Load
- Algorithms
- Algorithm Design Strategies
- Dealing with Recursion
- Analyzing Time Complexity
- Algorithm Design Strategies
- Building Routines and Modules
- PDL
- Modularity
- Information Hiding
- Summary
Chapter 5
Object-Oriented Programming
- Characteristics of OO Languages
- Encapsulation
- Classes
- Interfaces
- Object Models
- Abstract Classes
- Inheritance
- Polymorphism
- Summary
Chapter 6
Software Engineering
- Object-Oriented Development to the Rescue?
- Is Bigger Better?
- The Cathedral and the Bazaar
- The Spiral Model, 4GL, and RAD
- OO and 4GL
- Problems with RAD
- Scripting Languages and the Third Way
- Tools Selection
- The Magic Cauldron
- Summary
Chapter 7
Object-Oriented Analysis
- The Unified Modeling Language
- Why Have a Process?
- Using UML in OO Analysis
- Use Cases
- Actors and Events
- Identifying Use Cases
- Use Case Diagrams
- Writing Use Cases
- Use Case Summary
- The Conceptual Model
- Developing the Conceptual Model
- Identify Concepts
- Draw the Model
- Discover and Diagram Associations
- Add Attributes
- Conceptual Model Summary
- System Sequence Diagrams
- Developing the Diagrams
- Contracts
- Writing Contracts
- Summary
Chapter 8
Object-Oriented Design
- Three-Tier Architecture
- Designing for a Three-Tier Architecture
- From Domain to Persistence
- Designing for a Three-Tier Architecture
- Patterns for Object-Oriented Design
- Elements of a Pattern
- Observer
- The Value of Patterns
- Choosing Patterns
- Using UML in Object-Oriented Design
- Baggage from Previous Iterations
- Collaboration Diagrams
- Developing Collaboration Diagrams
- Collaboration Diagrams for Borrow Books
- The identifyPatron() Operation
- The loanBook() Operation
- Class Diagrams
- UI and Database Design in Context
- Designing the User Interface
- Bridging Database and Objects
- Patterns for Object-Relational Mapping
- Object-Relational Mapping Tools
- From Design to Code
- Summary
Chapter 9
Databases
- What is an RDBMS?
- Relational Database and the PC
- Some Frequently Asked Questions
- What is a Database?
- What is the Difference Between a Database and a Database Server?
- What is the Difference Between a Database and a Table?
- What is the Difference Between an RDBMS and a DBM File?
- How do I seek on a Table in an RDBMS?
- What is SQL?
- How does SQL get from my Program to the RDBMS?
- What Format is the Data Stored In?
- What is a Database Independence API?
- Getting Started with an RDBMS
- PostgreSQL
- Mini SQL
- MySQL
- Oracle
- Sybase Adaptive Server Enterprise
- Common Database Issues
- Invalid Values
- Generating Unique Values
- Orphaned Data
- Declarative Referential Integrity
- Triggers
- Lost Updates
- Administrative Issues
- Bulk Data Operations
- The Security of Initial Accounts
- Automatic Startup and Shutdown
- Database Features Quick Reference
- General Overview
- Data Types
- SQL Monitors
- Summary
Chapter 10
Linux Development Tools Catalog
- Database Tools
- Multi-RDBMS
- Katabase
- KSQL
- dbMetrix
- gtkSQL
- dbMan
- Gnome Transcript
- PostgreSQL Tools
- Oracle Tools
- MySQL Tools
- Sybase Tools
- Multi-RDBMS
- Drivers and Driver Managers
- ODBC
- iODBC
- UnixODBC
- DBI
- JDBC
- ODBC
- Modeling/Diagramming Tools
- Summary
Chapter 11
Java, Swing, and JDBC
- JDBC
- Installing JDBC Drivers
- JDK 1.1.x
- JDK 1.2
- Installing JDBC Drivers
- Running the Example Programs
- Using JDBC
- Open a Connection
- Send SQL to the Server
- Process Result Sets
- Swing
- A Frame, a Field, and a Button
- Event Handling
- Inner Classes and Object References
- Layout Managers
- A Frame, a Field, and a Button
- Separating Content and Presentation
- JTable and TableModel
- A Table Model for JDBC
- Using the JDBC Table Model
- Summary
Chapter 12
DBI and Perl
- The Perl DBI
- Installing the DBI
- CPAN
- Installing CPAN Modules
- CPAN
- After Installing DBI
- Installing Database Drivers (DBDs)
- If You Have Trouble
- Using the DBI
- Connecting to a Database
- Executing an SQL Statement
- Prepared Statements
- Processing Result Sets
- Installing the DBI
- User Interfaces in Perl
- Perl/Tk
- Installing Perl/Tk
- Creating a Simple Form
- Variable Binding
- Some Widgets
- Displaying Data in a Grid
- Displaying Hierarchical Data
- Perl/Tk
- Object-Oriented Perl
- Packages
- Modules
- Classes
- Tangram: Object-Relational Mapping in Perl
- Defining a Schema and Classes
- Deploying the Schema
- Creating Objects
- Finding Objects
- Putting It All Together
- Summary
Chapter 13
GNOME
- Getting GNOME
- Keeping Up With the Developers
- The GNOME Application Framework
- User Interface Services
- Distributed Object Services
- Data Access Services
- GNOME Programming
- Using GTK+
- Compiling and Running the GTK+ Example
- GTK+ Versus OO Toolkits
- GTK+ Widgets
- Developing User Interfaces with Glade
- Glade Tutorial
- Using GTK+
- Overview of GNOME-DB
- Providers and Data Sources
- GNOME-DB in Action
- Getting GNOME-DB
- Compiling and Installing GNOME-DB
- Configuring Data Sources
- Using GNOME-DB
- The Front-End
- Programming GNOME-DB
- Make a Connection
- Trap Errors
- Glade Meets GNOME-DB
- Summary
Chapter 14
Software Architecture
- Modularity and Troubleshooting
- Architectural Choices
- Message Passing Facilities
- Networking
- The Wonder of Relational Databases
- Files as Databases
- Client-Server Relational Databases to the Rescue
- Summary
Chapter 15
Introduction to CORBA
- CORBA Terminology
- CORBA Implementations for Linux
- Using CORBA
- A Simple MICO Example
- A Simple ORBit Example
- CORBA Goodies
- Summary
Appendix A
SQL Reference
- CREATE TABLE
- The CONSTRAINT Clause
- Enforcing Relationships
- Data Types
- Autoincrement Columns
- CREATE/DROP INDEX
- Putting Data into the Database
- UPDATE
- ALTER TABLE
- DROP TABLE
- SQL Query Fundamentals
- Retrieving All Columns
- Aliases
- Querying with NULLs and Sets
- DISTINCT
- Aggregate Queries
- Views
- DELETE
Appendix B
UML Reference
- Class Diagram
- Sequence Diagram
- Collaboration Diagram
L'auteur - Brian Jepson
Brian Jepson is an O'Reilly editor, programmer, and co-author of Mac OS X Panther for Unix Geeks and Learning Unix for Mac OS X Panther. He's also a volunteer system administrator and all-around geek for AS220, a non-profit arts center in Providence, Rhode Island. AS220 gives Rhode Island artists uncensored and unjuried forums for their work. These forums include galleries, performance space, and publications. Brian sees to it that technology, especially free software, supports that mission.
L'auteur - Joan Peckham
JOAN PECKHAM is Associate Professor of Computer Science at the University of Rhode Island. She is also Associate Editor for the Journal of Database Management.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | Wiley |
Auteur(s) | Brian Jepson, Joan Peckham |
Parution | 17/07/2000 |
Nb. de pages | 528 |
Format | 19 x 23,2 |
Couverture | Broché |
Poids | 930g |
Intérieur | Noir et Blanc |
EAN13 | 9780471355496 |
Avantages Eyrolles.com
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse