Software Design for Flexibility: How to Avoid Programming Yourself into a Corner,New

Software Design for Flexibility: How to Avoid Programming Yourself into a Corner,New

In Stock
SKU: DADAX0262045494
Brand: MIT Press
Regular price$63.30
Quantity
Add to wishlist
Add to compare

Processing time: 1-3 days

US Orders Ships in: 3-5 days

International Orders Ships in: 8-12 days

Return Policy: 15-days return on defective items

Payment Option
Payment Methods

Help

If you have any questions, you are always welcome to contact us. We'll get back to you as soon as possible, withing 24 hours on weekdays.

Customer service

All questions about your order, return and delivery must be sent to our customer service team by e-mail at yourstore@yourdomain.com

Sale & Press

If you are interested in selling our products, need more information about our brand or wish to make a collaboration, please contact us at press@yourdomain.com

Strategies for building large systems that can be easily adapted for new situations with only minor programming modifications.Time pressures encourage programmers to write code that works well for a narrow purpose, with no room to grow. But the best systems are evolvable; they can be adapted for new situations by adding code, rather than changing the existing code. The authors describe techniques they have found effectiveover their combined 100plus years of programming experiencethat will help programmers avoid programming themselves into corners.The authors explore ways to enhance flexibility by:Organizing systems using combinators to compose mixandmatch parts, ranging from small functions to whole arithmetics, with standardized interfaces Augmenting data with independent annotation layers, such as units of measurement or provenance Combining independent pieces of partial information using unification or propagation Separating control structure from problem domain with domain models, rule systems and pattern matching, propagation, and dependencydirected backtracking Extending the programming language, using dynamically extensible evaluators

⚠️ WARNING (California Proposition 65):

This product may contain chemicals known to the State of California to cause cancer, birth defects, or other reproductive harm.

For more information, please visit www.P65Warnings.ca.gov.

  • Q: How many pages does this book have? A: This book has four hundred forty-eight pages. It provides in-depth strategies and techniques for software design.
  • Q: What is the binding type of this book? A: This book is hardcover bound. The hardcover provides durability and a professional appearance for your bookshelf.
  • Q: What are the dimensions of this book? A: The dimensions of this book are six point twenty-six inches in length, one point zero four inches in width, and nine point twenty-five inches in height. These measurements make it a standard-sized book for easy handling.
  • Q: How can I benefit from reading this book? A: You can benefit by learning strategies to avoid programming pitfalls. The book offers effective techniques to create adaptable systems.
  • Q: Is this book suitable for beginners in programming? A: Yes, this book is suitable for beginners as well as experienced programmers. It covers foundational concepts and advanced strategies.
  • Q: What are the main topics covered in this book? A: The main topics include system organization, flexible coding techniques, and domain models. These concepts help in designing robust software.
  • Q: How should I store this book to keep it in good condition? A: Store this book upright on a shelf in a cool, dry place. Avoid exposure to direct sunlight to prevent fading.
  • Q: Is this book safe for young readers? A: Yes, this book is safe for young readers interested in programming. However, adult supervision is recommended for complex topics.
  • Q: Does this book have any special care instructions? A: No specific care instructions are required for this book. Keep it clean and avoid spills to maintain its condition.
  • Q: What if my book arrives damaged? A: If your book arrives damaged, contact customer service for return instructions. They will assist you with a replacement or refund.
  • Q: How can I compare this book to others in the field? A: You can compare this book by looking at its practical approach to software flexibility against other programming books. It emphasizes adaptability.
  • Q: Is there a warranty or guarantee for this book? A: Yes, there is a satisfaction guarantee for this book. If you are not satisfied, you can return it for a full refund.
  • Q: What is the author's background in programming? A: The author, Chris Hanson, has over one hundred years of combined programming experience. His expertise lends credibility to the book.
  • Q: Is the content of this book up to date with current programming practices? A: Yes, the content is relevant to current programming practices. It includes modern techniques for software design.
  • Q: Can this book help me improve my programming skills? A: Yes, this book can significantly improve your programming skills by teaching you how to create systems that are flexible and adaptable.

Recently Viewed