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
Sale price$63.28 Regular price$90.40
Save $27.12
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.

Recently Viewed