راهحلهای نرمافزاری جاوا: مبانی طراحی برنامه، ویرایش هفتم
Java Software Solutions: Foundations of Program Design, 7th Edition
معرفی کتاب «راهحلهای نرمافزاری جاوا: مبانی طراحی برنامه، ویرایش هفتم» (با عنوان لاتین Java Software Solutions: Foundations of Program Design, 7th Edition) نوشتهٔ John Lewis, William Loftus، منتشرشده توسط نشر Addison Wesley در سال 2011. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.
Java Software Solutions teaches a foundation of programming techniques to foster well-designed object-oriented software. Heralded for its integration of small and large realistic examples, this worldwide best-selling text emphasizes building solid problem-solving and design skills to write high-quality programs. MyProgrammingLab, Pearson's new online homework and assessment tool, is available with this edition. Subscriptions to MyProgrammingLab are available to purchase online or packaged with your textbook (unique ISBN). Use the following ISBNs to purchase MyProgrammingLab:Java Software Solutions: Foundations of Program Design & MyProgrammingLab with Pearson eText Student Access Code Card for Java Software Solutions, 7/E ISBN:0132760770This package includes the Java Software Solutions, textbook, an access card for MyProgrammingLab, and a Pearson eText student access code card for the Java Software Solutions Pearson eText.MyProgrammingLab with Pearson eText -- Access Card -- for Java Software Solutions, 7/E ISBN: 013277478XThis stand-alone access card package contains an access card for MyProgrammingLab and a Pearson eText student access code card for the Java Software Solutions Pearson eText.Purchase instant access to MyProgrammingLab online. MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict MuPDF error: syntax error: invalid key in dict Cover 1 Title Page 5 Copyright Page 6 Contents 19 Preface 9 Acknowledgments 15 Chapter 1 Introduction 29 1.1 Computer Processing 30 Software Categories 31 Digital Computers 32 Binary Numbers 35 1.2 Hardware Components 38 Computer Architecture 39 Input/Output Devices 40 Main Memory and Secondary Memory 41 The Central Processing Unit 45 1.3 Networks 48 Network Connections 48 Local-Area Networks and Wide-Area Networks 50 The Internet 51 The World Wide Web 52 Uniform Resource Locators 53 1.4 The Java Programming Language 54 A Java Program 55 Comments 57 Identifiers and Reserved Words 59 White Space 61 1.5 Program Development 64 Programming Language Levels 64 Editors, Compilers, and Interpreters 66 Development Environments 68 Syntax and Semantics 69 Errors 70 1.6 Object-Oriented Programming 72 Problem Solving 73 Object-Oriented Software Principles 74 Chapter 2 Data and Expressions 85 2.1 Character Strings 86 The print and println Methods 86 String Concatenation 88 Escape Sequences 91 2.2 Variables and Assignment 93 Variables 93 The Assignment Statement 95 Constants 97 2.3 Primitive Data Types 99 Integers and Floating Points 99 Characters 101 Booleans 102 2.4 Expressions 103 Arithmetic Operators 103 Operator Precedence 104 Increment and Decrement Operators 108 Assignment Operators 109 2.5 Data Conversion 111 Conversion Techniques 113 2.6 Interactive Programs 115 The Scanner Class 115 2.7 Graphics 120 Coordinate Systems 120 Representing Color 122 2.8 Applets 123 Executing Applets Using the Web 126 2.9 Drawing Shapes 127 The Graphics Class 127 Software Failure: NASA Mars Climate Orbiter and Polar Lander 139 Chapter 3 Using Classes and Objects 141 3.1 Creating Objects 142 Aliases 144 3.2 The String Class 146 3.3 Packages 150 The import Declaration 152 3.4 The Random Class 154 3.5 The Math Class 157 3.6 Formatting Output 160 The NumberFormat Class 160 The DecimalFormat Class 162 The printf Method 163 3.7 Enumerated Types 166 3.8 Wrapper Classes 169 Autoboxing 171 3.9 Components and Containers 171 Frames and Panels 172 3.10 Nested Panels 176 3.11 Images 179 Chapter 4 Writing Classes 187 4.1 Classes and Objects Revisited 188 4.2 Anatomy of a Class 190 Instance Data 195 UML Class Diagrams 195 4.3 Encapsulation 197 Visibility Modifiers 198 Accessors and Mutators 199 4.4 Anatomy of a Method 200 The return Statement 202 Parameters 203 Local Data 203 Bank Account Example 204 4.5 Constructors Revisited 209 4.6 Graphical Objects 210 4.7 Graphical User Interfaces 219 4.8 Buttons 220 4.9 Text Fields 224 Software Failure: Denver Airport Baggage Handling System 233 Chapter 5 Conditionals and Loops 235 5.1 Boolean Expressions 236 Equality and Relational Operators 237 Logical Operators 238 5.2 The if Statement 241 The if-else Statement 244 Using Block Statements 247 Nested if Statements 251 5.3 Comparing Data 254 Comparing Floats 254 Comparing Characters 255 Comparing Objects 256 5.4 The while Statement 258 Infinite Loops 262 Nested Loops 264 The break and continue Statements 267 5.5 Iterators 269 Reading Text Files 270 5.6 The ArrayList Class 273 5.7 Determining Event Sources 276 5.8 Check Boxes and Radio Buttons 279 Check Boxes 279 Radio Buttons 283 Software Failure: Therac-25 295 Chapter 6 More Conditionals and Loops 297 6.1 The switch Statement 298 6.2 The Conditional Operator 302 6.3 The do Statement 303 6.4 The for Statement 307 The for-each Loop 310 Comparing Loops 312 6.5 Drawing with Loops and Conditionals 313 6.6 Dialog Boxes 319 Chapter 7 Object-Oriented Design 329 7.1 Software Development Activities 330 7.2 Identifying Classes and Objects 331 Assigning Responsibilities 333 7.3 Static Class Members 333 Static Variables 334 Static Methods 334 7.4 Class Relationships 338 Dependency 338 Dependencies Among Objects of the Same Class 338 Aggregation 344 The this Reference 348 7.5 Interfaces 350 The Comparable Interface 355 The Iterator Interface 356 7.6 Enumerated Types Revisited 357 7.7 Method Design 360 Method Decomposition 361 Method Parameters Revisited 366 7.8 Method Overloading 371 7.9 Testing 373 Reviews 374 Defect Testing 374 7.10 GUI Design 377 7.11 Layout Managers 378 Flow Layout 380 Border Layout 384 Grid Layout 387 Box Layout 389 7.12 Borders 393 7.13 Containment Hierarchies 397 Software Failure: 2003 Northeast Blackout 405 Chapter 8 Arrays 407 8.1 Array Elements 408 8.2 Declaring and Using Arrays 409 Bounds Checking 412 Alternate Array Syntax 417 Initializer Lists 417 Arrays as Parameters 418 8.3 Arrays of Objects 420 8.4 Command-Line Arguments 430 8.5 Variable Length Parameter Lists 432 8.6 Two-Dimensional Arrays 436 Multidimensional Arrays 440 8.7 Polygons and Polylines 441 The Polygon Class 444 8.8 Mouse Events 446 8.9 Key Events 455 Software Failure: LA Air Traffic Control 469 Chapter 9 Inheritance 471 9.1 Creating Subclasses 472 The protected Modifier 475 The super Reference 478 Multiple Inheritance 481 9.2 Overriding Methods 483 Shadowing Variables 485 9.3 Class Hierarchies 486 The Object Class 488 Abstract Classes 489 Interface Hierarchies 491 9.4 Visibility 491 9.5 Designing for Inheritance 494 Restricting Inheritance 495 9.6 The Component Class Hierarchy 496 9.7 Extending Adapter Classes 499 9.8 The Timer Class 503 Software Failure: Ariane 5 Flight 501 513 Chapter 10 Polymorphism 515 10.1 Late Binding 516 10.2 Polymorphism via Inheritance 517 10.3 Polymorphism via Interfaces 530 10.4 Sorting 532 Selection Sort 533 Insertion Sort 539 Comparing Sorts 540 10.5 Searching 541 Linear Search 541 Binary Search 543 Comparing Searches 547 10.6 Designing for Polymorphism 547 10.7 Event Processing 549 10.8 File Choosers 550 10.9 Color Choosers 553 10.10 Sliders 555 Chapter 11 Exceptions 565 11.1 Exception Handling 566 11.2 Uncaught Exceptions 567 11.3 The try-catch Statement 568 The finally Clause 572 11.4 Exception Propagation 573 11.5 The Exception Class Hierarchy 577 Checked and Unchecked Exceptions 580 11.6 I/O Exceptions 581 11.7 Tool Tips and Mnemonics 585 11.8 Combo Boxes 592 11.9 Scroll Panes 597 11.10 Split Panes 600 Chapter 12 Recursion 611 12.1 Recursive Thinking 612 Infinite Recursion 612 Recursion in Math 613 12.2 Recursive Programming 614 Recursion vs. Iteration 617 Direct vs. Indirect Recursion 617 12.3 Using Recursion 618 Traversing a Maze 619 The Towers of Hanoi 624 12.4 Recursion in Graphics 629 Tiled Pictures 629 Fractals 632 Chapter 13 Collections 645 13.1 Collections and Data Structures 646 Separating Interface from Implementation 646 13.2 Dynamic Representations 647 Dynamic Structures 647 A Dynamically Linked List 648 Other Dynamic List Representations 653 13.3 Linear Data Structures 655 Queues 655 Stacks 656 13.4 Non-Linear Data Structures 659 Trees 659 Graphs 660 13.5 The Java Collections API 662 Generics 662 Appendix A: Glossary 669 A 669 B 670 C 672 D 674 E 675 F 676 G 677 H 678 I 678 J 680 K 681 L 681 M 682 N 683 O 683 P 684 Q 686 R 686 S 687 T 689 U 690 V 691 W 691 Appendix B: Number Systems 693 Appendix C: The Unicode Character Set 701 Appendix D: Java Operators 705 Appendix E: Java Modifiers 711 Appendix F: Java Coding Guidelines 715 Appendix G: Java Applets 721 Appendix H: Regular Expressions 723 Appendix I: Javadoc Documentation Generator 725 Appendix J: The PaintBox Project 731 Appendix K: GUI Events 743 Appendix L: Java Syntax 747 Appendix M: The Java Class Library 761 Appendix N: Answers to Self-Review Questions 763 Index 817 A 817 B 818 C 819 D 821 E 822 F 823 G 823 H 824 I 824 J 826 K 827 L 827 M 827 N 828 O 828 P 830 Q 831 R 831 S 832 T 833 U 833 V 833 W 834 X 834
دانلود کتاب راهحلهای نرمافزاری جاوا: مبانی طراحی برنامه، ویرایش هفتم