
Practical Object-Oriented Design: An Agile Primer Using Ruby, 2nd edition
BRAND: PEARSON
eBook edition. 1 year Subscription. Dành cho Cá nhân | Trường ĐH, Nhóm, Thư Viện: Gọi 0915920514 để báo giá Pearson, Vital Source eBook hoặc mua Sách In
Tổng quan sách
Hướng dẫn đầy đủ để viết các ứng dụng hướng đối tượng mạnh mẽ, dễ bảo trì, dễ quản lý và dễ bảo trìCác ngôn ngữ lập trình hướng đối tượng tồn tại để giúp các lập trình viên tạo ra các ứng dụng đẹp, đơn giản, dễ thay đổi và mở rộng đơn giản. Thật không may, thế giới tràn ngập các ứng dụng hướng đối tượng (OO) khó hiểu và tốn kém để thay đổi. Thiết kế hướng đối tượng thực tế, Phiên bản thứ hai, đưa sinh viên vào tư duy OO và dạy họ các kỹ thuật thiết kế hướng đối tượng, thực tế, mạnh mẽ với các ví dụ đơn giản và thực tế.Sandi Metz trình bày cách xây dựng các ứng dụng mới có thể “tồn tại thành công” và sửa chữa các ứng dụng hiện có không thể thay đổi. Mỗi kỹ thuật được minh họa bằng các ví dụ mở rộng bằng ngôn ngữ lập trình Ruby dễ hiểu, tất cả đều có thể tải xuống từ trang web đồng hành, poodr.com
- Introduction xvAcknowledgments xixAbout the Author xxi
- Chapter 1: Object-Oriented Design 11.1 In Praise of Design 21.2 The Tools of Design 41.3 The Act of Design 61.4 A Brief Introduction to Object-Oriented Programming 101.5 Summary 13
- Chapter 2: Designing Classes with a Single Responsibility 152.1 Deciding What Belongs in a Class 162.2 Creating Classes That Have a Single Responsibility 172.3 Writing Code That Embraces Change 242.4 Finally, the Real Wheel 332.5 Summary 35
- Chapter 3: Managing Dependencies 373.1 Understanding Dependencies 383.2 Writing Loosely Coupled Code 413.3 Managing Dependency Direction 533.4 Summary 59
- Chapter 4: Creating Flexible Interfaces 614.1 Understanding Interfaces 614.2 Defining Interfaces 634.3 Finding the Public Interface 654.4 Writing Code That Puts Its Best (Inter)Face Forward 774.5 The Law of Demeter 804.6 Summary 84
- Chapter 5: Reducing Costs with Duck Typing 855.1 Understanding Duck Typing 855.2 Writing Code That Relies on Ducks 955.3 Conquering a Fear of Duck Typing 1005.4 Summary 103
- Chapter 6: Acquiring Behavior through Inheritance 1056.1 Understanding Classical Inheritance 1056.2 Recognizing Where to Use Inheritance 1066.3 Misapplying Inheritance 1146.4 Finding the Abstraction 1166.5 Managing Coupling between Superclasses and Subclasses 1296.6 Summary 139
- Chapter 7: Sharing Role Behavior with Modules 1417.1 Understanding Roles 1427.2 Writing Inheritable Code 1587.3 Summary 161
- Chapter 8: Combining Objects with Composition 1638.1 Composing a Bicycle of Parts 1638.2 Composing the Parts Object 1688.3 Manufacturing Parts 1768.4 The Composed Bicycle 1818.5 Deciding between Inheritance and Composition 1858.6 Summary 191
- Chapter 9: Designing Cost-Effective Tests 1939.1 Intentional Testing 1949.2 Testing Incoming Messages 2029.3 Testing Private Methods 2159.4 Testing Outgoing Messages 2179.5 Testing Duck Types 2219.6 Testing Inherited Code 2339.7 Summary 244Afterword 245Index 247