









Just as students of literature must know the basic canon of English works, so should students of software engineering know basic patterns of program development. Even with the advent of powerful AI tools for programming, it is important to understand the techniques and approaches to building efficient programs. This book picks out ten patterns that span several programming domains that represent key ideas that apply to breadth of software engineering tasks. The patterns are not algorithms but ways of approaching the construction of sophisticated software systems. The book opens with one of the most ubiquitous software patterns that is often invisible to programmers: Hash tables. Yet building a truly scalable and efficient hash table that may even span multiple computers is not often taught in school and often cannot be obtained “off-the-shelf”. Other patterns include using finite state machines to recognize basic patterns and to ensure programs don’t miss critical use cases. Two patterns provide ways of reasoning about multi-threaded and multi-process programs and introducing a way of programming that works for both types of concurrent programming. The book closes with a call to design for failure: to anticipate that a complex system rarely works perfectly and that determining why something fails is almost as important as knowing why it works. Michael Kilian holds a Ph.D. from Harvard University and been working in Software Engineering for nearly 50 years. This book grew from interviews with college students while working at Ab Initio and realizing that some basic ideas were missing from the curricula of even the brightest students.
Price now:
From
To
Price History:
Details:Just as students of literature must know the basic canon of English works, so should students of software engineering know basic patterns of program development. Even with the advent of powerful AI tools for programming, it is important to understand the techniques and approaches to building efficient programs. This book picks out ten patterns that span several programming domains that represent key ideas that apply to breadth of software engineering tasks. The patterns are not algorithms but ways of approaching the construction of sophisticated software systems. The book opens with one of the most ubiquitous software patterns that is often invisible to programmers: Hash tables. Yet building a truly scalable and efficient hash table that may even span multiple computers is not often taught in school and often cannot be obtained “off-the-shelf”. Other patterns include using finite state machines to recognize basic patterns and to ensure programs don’t miss critical use cases. Two patterns provide ways of reasoning about multi-threaded and multi-process programs and introducing a way of programming that works for both types of concurrent programming. The book closes with a call to design for failure: to anticipate that a complex system rarely works perfectly and that determining why something fails is almost as important as knowing why it works. Michael Kilian holds a Ph.D. from Harvard University and been working in Software Engineering for nearly 50 years. This book grew from interviews with college students while working at Ab Initio and realizing that some basic ideas were missing from the curricula of even the brightest students.
Price now:
From
To
This site contains affiliate links for which we may be compensated.
eBay
New
£36.19
£44.99
Hive Books
0.64% ( -£0.24)
New
£37.15
Springer Nature Link Shop
0.00% (~ £0.00)
New
£44.99
Just as students of literature must know the basic canon of English works, so should students of software engineering know basic patterns of program development. Even with the advent of powerful AI tools for programming, it is important to understand the techniques and approaches to building efficient programs. This book picks out ten patterns that span several programming domains that represent key ideas that apply to breadth of software engineering tasks. The patterns are not algorithms but ways of approaching the construction of sophisticated software systems. The book opens with one of the most ubiquitous software patterns that is often invisible to programmers: Hash tables. Yet building a truly scalable and efficient hash table that may even span multiple computers is not often taught in school and often cannot be obtained “off-the-shelf”. Other patterns include using finite state machines to recognize basic patterns and to ensure programs don’t miss critical use cases. Two patterns provide ways of reasoning about multi-threaded and multi-process programs and introducing a way of programming that works for both types of concurrent programming. The book closes with a call to design for failure: to anticipate that a complex system rarely works perfectly and that determining why something fails is almost as important as knowing why it works. Michael Kilian holds a Ph.D. from Harvard University and been working in Software Engineering for nearly 50 years. This book grew from interviews with college students while working at Ab Initio and realizing that some basic ideas were missing from the curricula of even the brightest students.
General | |
|---|---|
format | paperback |
Language | english |
Brand | Springer Verlag, Singapore |
Sellers offer a range of delivery options, so you can choose the one that’s most convenient for you. Many sellers offer free delivery. You can always find the postage cost and estimated delivery date in a seller’s listing. You'll then be able to see a full list of delivery options during checkout. These can include: Express delivery, Standard delivery, Economy delivery, Click & Collect, Free local collection from seller.
Your options for returning an item vary depending on what you want to return, why you want to return it, and the seller's return policy. If the item is damaged or doesn't match the listing description, you can return it even if the seller's returns policy says they don't accept returns. If you've changed your mind and no longer want an item, you can still request a return, but the seller doesn't have to accept it. If the buyer changes their mind about a purchase and wants to return an item, they may need to pay return postage costs, depending on the seller's return policy. Sellers can provide a return postage address and additional return postage information for the buyer. Sellers pay for return postage if there's a problem with the item. For example, if the item doesn't match the listing description, is damaged or defective or is counterfeit. By law, customers in the European Union also have the right to cancel the purchase of an item within 14 days beginning from the day you receive, or a third party indicated by you (other than the carrier) receives, the last good ordered by you (if delivered separately). This applies to all products except for digital items (e.g. Digital Music) that are provided immediately to you with your acknowledgement, and other items such as video, DVD, audio, video games, Sex and Sensuality products and software products where the item has been unsealed.
Sellers have to offer a refund for certain items only if they are faulty, such as: Personalised items and custom-made items, Perishable items, Newspapers and magazines, Unwrapped CDs DVDs and computer software. If you used your PayPal balance or bank account to fund the original payment, the refunded money will go back to your PayPal account balance. If you used a credit or debit card to fund the original payment, the refunded money will go back to your card. The seller will effect the refund within three working days but it may take up to 30 days for Paypal to process the transfer. For payments funded partially by a card and partially by your balance/bank, the money taken from your card will go back to your card and the remainder will return to your PayPal balance.