Georges G.Merx,美國加州的圣迭戈美薩學(xué)院計算機(jī)與信息科學(xué)系副教授、系主任,加州大學(xué)圣迭戈分校客座教授。除了教學(xué)經(jīng)歷之外,他還具有20多年的軟件開發(fā)實(shí)踐經(jīng)驗(yàn)。編寫了100多萬行代碼,為數(shù)十家全球企業(yè)創(chuàng)建了幾百個商用程序。
圖書目錄
Preface 1 Introduction to Java in the Context of Software Engineering 1.1 Getting Acquainted 1.2 What Is Java Programming? 1.2.1 What is Software Engineering? 1.3 Learning Objectives 1.3.1 Learning Layout 1.3.2 Learning Connections 1.4 Executive Summary 1.5 Learning Modules 1.5.1 Concepts 1.5.2 Unified Process-Based Methodology Overview 1.5.3 Position in Process 1.5.4 Domain Model 1.5.5 Scenarios 1.5.6 The Unified Modeling Language 1.6 The Java Programming Language 1.6.1 Historical Perspective on Java 1.6.2 Java Basics 1.7 Relationships 1.7.1 Caveats and Complexities 1.8 Example: The Voting Program 1.8.1 Project (System) Vision 1.8.2 Project Description 1.8.3 Stakeholder Analysis 1.8.4 Customer Profile 1.8.5 Market Analysis 1.8.6 Risk Analysis 1.8.7 Business Use Case Model and Use Cases 1.8.8 Competitive Analysis 1.8.9 Distribution Plan 1.8.10 Financial Plan 1.8.11 High-Level Project Plan 1.8.12 Recommendations 1.9 Ongoing Case Study 1.9.1 Introduction 1.9.2 Initial Concept 1.9.3 Business Justification 1.9.4 Stakeholder Analysis 1.9.5 Case Assignments 1.10 Resources: Connections·People·Companies 1.11 Summary and Recommendations 1.12 Review Questions 1.13 Glossary - Terminology - Concepts 1.14 Exercises 1.15 Setting up a Java Development Environment 1.15.1 Versions of Java 1.15.2 Class and Classpath Setup 1.16 Java Programming Exercises 2 Experimenting with Classes and Objects 2.1 Learning Objectives 2.1.1 Learning Layout 2.1.2 Learning Connections 2.2 Executive Summary 2.3 Learning Modules 2.3.1 Concepts 2.3.2 Position in Process 2.4 The Purpose of Object Orientation in Software Engineering 2.5 Problems with Procedural Programming 2.6 How O-O Solves Software Development Problems 2.7 Understanding Object Orientation 2.8 Object-Orientation in Java 2.8.1 Java Classes and Objects 2.9 Architecture and Class Hierarchy 2.10 Economies of Reuse 2.10.1 Quality 2.10.2 Consistency 2.10.3 Implement Once 2.10.4 Flexibility 2.11 Use Case Models and Classes 2.12 "Real-Life" Variations 2.13 Translating Generic Class Descriptions into Java Classes …… 3 The Structure and Syntax of Java 4 Desing and Development of Java Applications 5 Architecture-Driven Component Development 6 Introduction to Distributed Comprting Concepts 7 Interfacing with Users 8 Implementing Java Programs 9 Software Quality Assurance 10 Information Management in Java 11 Reality Check:Java Programs in the Real World 12 Software Integration and Deployment 13 Java on Various Computer Platforms 14 Advanced Topics in Java Software Engineering 15 The Unified Modeling Language:A P rimer Index